On Wed, May 27, 2009 at 02:08:42PM -0500, Scott Wood wrote:Russell King wrote:No one has brought that up on the ARM mailing lists - so does this issueI'm just going by what I've seen on the u-boot list lately. What is the existing ARM Linux model for passing MAC addresses, so that we can point people to that when they try to get u-boot to do silly things?
really exist? All of the stuff I see on the ARM lists seems to be well
behaved and following our existing model - even vendor stuff (supplied
to me under NDA) seems to generally get this kind of stuff right.
To program them into the hardware registers,
which is not what we in the ARM community say, but it's what the
_network_ guys tell people they should be doing.
I've suggested in the past having a standard kernel parameter such
that you can specify a mac address on a per-device basis in a totally
platform independent way, but the network folk don't like that idea.
I'm not talking about platform specific code, I'm talking about code to retrieve information about a device from the device tree. There would not be separate instances of this for "platforms X, Y and Z", just one of_platform binding in each driver. It's no different than having a platform bus binding, except in the data structures used.
I really don't see what OF buys us then,
The device tree is quite capable of expressing information beyond addresses and interrupts.
Bus width? Register offset spacing? SMC LED configuration? Whether
to use the hardware wait signal from the SMC?
If you're going to say yes to all that,
I'm going to start asking how
you cope with verifying that the data for ethernet driver A doesn't
get accidentally used for ethernet driver B.
I assume you have some kind of compiler, which needs a set of specification
files to tell it what's required for each driver which is OF compatible.
If not, I can see no way for OF trees to ever be safe and correct.