MMC cards support

Rafal Jaworowski raj at semihalf.com
Fri Dec 14 07:16:40 PST 2007


Gary Jennejohn wrote:
>>> u-boot passes this information to Linux in the board info (bd_t)
>>> structure at boot time.  A lot of Linux ethernet drivers read the MAC
>>> out of this structure and then set it in the hardware/software.
>>>
>>> Very few u-boot ethernet drivers set the MAC in the hardware themselves.
>>>
>>> With FreeBSD this mechanism is missing.
>> I did it this way because the Linux driver for the Atmel driver did it
>> this way.  I thought it was the de-facto way things work.  Patches to
>> implement this would be welcome.
>>
> 
> It is effectively the de-facto way to do things in the Linux embedded
> world.  Just about every embedded board used with Linux also uses
> u-boot.  It just won't work with FreeBSD because the infrastructure
> (passing bd_t to the kernel) is missing.
> 
> This is a weakness of which Wolfgang Denk is well aware and he'd just
> love for somebody to put together the missing glue for *BSD and send it
> to him.  Of course, this would also require changes to the kernel
> itself.
> 

Do you know my work on U-Boot-FreeBSD interface in the custodian repo?
http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot/u-boot-freebsd.git;a=summary

Wolfgang is aware of the above and I'm going to have those merged with
mainline, when now the merge window is open again after 1.3.1 has been released.

We're probably getting a bit OT here, but just to clarify U-Boot networking
model of operation that was mentioned: MAC address is usually programmed by a
U-Boot network controller driver into relevant h/w registers upon every
network access, so provided a given interface was used at least once in U-Boot
(whatever net command), it should have the MAC addresss programmed correctly
when running in the kernel. Otherwise it is left untouched, which happens in
most of the cases with multiple integrated controllers -- usually only the
first one gets ever used, others are left unconfigured...

Rafal


More information about the freebsd-arm mailing list