[U-Boot-Users] Passing MACs to Linux
Paul Gortmaker
paul.gortmaker at gmail.com
Wed Jul 9 23:54:43 CEST 2008
[I know this is old, but it may save someone else some pain...]
On Thu, Jun 5, 2008 at 11:59 AM, Russell McGuire
<rmcguire at videopresence.com> wrote:
> To save most the banter, and rephrasing:
>
> What is the 'EXPECTED' current behavior of the 83xx/6xx architecture for the
> most current 1.3.3+ GIT release of passing MACs into Linux 2.6.24. Lastly, I
> am using the UEC 83xx driver.
>
> I have defined QE_OF.
> I have defined CONFIG_UEC_ETH.
> I have defined CONFIG_ETHADDR.
I'm betting you didn't have CONFIG_HAS_ETH0 though.
>
> My 8360.blob/dts does have MAC address definitions, but are set to ZERO's.
> <See below> In previous releases this was over written by U-boot, thus using
> the CONFIG_ETHADDR address to be used within Linux 2.6.24.
>
> Most recently <since 1.3.1>, I now have to add valid MACs to the
> 8360.blob/dts file to get a MAC to be set within Linux. Does U-boot no
> longer over write if a blob already has any MAC set? I don't care what used
> to work really, I just would like to know what the current method is.
The overwrite code is in common/fdt_support.c -- and it only takes
place for devices which you define CONFIG_HAS_ETHn (n=0,1,2...)
If you don't define this, then your zeros in the dts/dtb live on, and get
passed into the kernel as-is. I just tripped over this myself recently.
Paul.
>
> Here is my current dts entry of note, previously <1.3.1> I didn't have to
> set 'mac-address' / could leave it at all-zeros. Now, I do have to set
> mac-address. Again, not worried about any previous method working, just
> looking for current method that is correct.
>
> ucc at 2000 { //UCC1
> device_type = "network";
> compatible = "ucc_geth";
> model = "UCC";
> device-id = <1>; // UCC1
> reg = <2000 200>;
> interrupts = <20>;
> interrupt-parent = < &qeic >;
> /*
> * mac-address is deprecated and will be removed
> * in 2.6.25. Only recent versions of
> * U-Boot support local-mac-address, however.
> */
> mac-address = [ 00 04 9f ef 01 01 ];
> local-mac-address = [ 00 00 00 00 00 00 ];
> rx-clock = <0>;
> tx-clock = <19>;
> phy-handle = <212000>;
> pio-handle = < &pio1 >;
> phy-connection-type = "rgmii-id";
> };
>
> -Russ
>
More information about the U-Boot
mailing list