Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 26 Nov 2016 10:35:14 -0700
From:      Ian Lepore <ian@freebsd.org>
To:        John.Kitz@xs4all.nl, freebsd-arm@freebsd.org
Subject:   Re: How to change MAC address on RPI-B?
Message-ID:  <1480181714.1889.103.camel@freebsd.org>
In-Reply-To: <000c01d247c7$452a4db0$cf7ee910$@Kitz@xs4all.nl>
References:  <001701d245ce$e64e33f0$b2ea9bd0$@Kitz@xs4all.nl> <454137dc-30f7-cd33-6c75-0cc3045090dd@t-online.de> <002801d24755$f9017420$eb045c60$@Kitz@xs4all.nl> <177ae37f-db52-c7ee-77fa-d9bc7d61b4ee@t-online.de> <1480137537.1889.97.camel@freebsd.org> <000c01d247c7$452a4db0$cf7ee910$@Kitz@xs4all.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 2016-11-26 at 10:27 +0100, John W. Kitz wrote:
> Ian,
> 
> On Sat, 2016-11-26 at 00:07 +0100, diffusae wrote:
> > 
> > Hi John,
> > 
> > On 25.11.2016 20:56, John W. Kitz wrote:
> > 
> > > 
> > > 
> > > So when doing so the locally administered MAC address is passed
> > > on 
> > > from uEnv.txt to the O/S during boot and is then used to
> > > override 
> > > the globally
> > I didn't think, that it will be passed from the U-Boot Enviroment 
> > settings. You can set the MAC address, but the FreeBSD kernel
> > shows 
> > always the unique MAC address.
> > 
> > > 
> > > 
> > > unique MAC address or does the O/S check both the information
> > > found 
> > > in its configuration files and what is configured in uEnv.txt
> > > before 
> > > configuring and activating the network interface(s)?
> > Which configuration files do you mean? AFAIK there is only the FDT 
> > blob.
> > I guess it ignores the setting in uEnv.txt.
> > 
> > > 
> > > 
> > > Makes me wonder which of the two (i.e. locally administered
> > > through 
> > > uEnv.txt or locally administered through the O/S) takes
> > > precedence.
> > Only the unique MAC address and the locally administered MAC
> > address, 
> > will take affect.
> > 
> > > 
> > > 
> > > In addition this might affect configuration decisions when one
> > > would 
> > > want to configure a device for net booting (at least when
> > > browsing 
> > > through what can be configured by means of uEnv.txt I believe
> > > that 
> > > was one of the options I
> > > saw) through uEnv.txt?
> > Personally, I like u-boot. It has various options, runs on a lot
> > of 
> > devices and it's also nice to handle.
> > 
> > Best regards,
> > _
> I looked into this tonight, and there is some code missing in u-boot
> to
> handle passing a mac address set in the u-boot environment into the
> kernel
> via the fdt data.
> 
> It would be pretty simple to fix.  We need to add an ethernet0 alias
> pointing to the /axi/usb/hub/ethernet node to our rpi dts, and the
> attached
> patch needs to replace the current one in the u-boot-rpi port.
> 
> This lets you set usbethaddr in the u-boot environment (via uEnv.txt
> or
> saved directly using saveenv), and it will get used by both u-boot
> and
> freebsd.
> 
> Having gotten it this far, I don't really have time right now to get
> the
> patch committed to ports.  Hopefully somebody else can help with
> that.
> 
> JKi: I was just curious, but have no immediate use for the features
> discussed in this particular thread at this time. So please don't
> make the
> effort to get mentioned changes implemented because of this thread.

Well, it's wrong and it needs to be fixed.  For every other arm board,
you can set a mac addr in u-boot and it remains in effect when freebsd
is running.  It's not right for rpi to be different.  It probably
affects rpi2 as well.  And, really, anything with usb ethernet.

I wonder why the mailing list is stripping diff attachments now?  That
never used to happen.  Hrm, probably because after my last pkg upgrade,
Evolution is now flagging the attachment as text/x-csrc; it used to be
x-patch.  I've put the patch here...

https://people.freebsd.org/~ian/patch-common_cmd__boot.c

-- Ian




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1480181714.1889.103.camel>