board: traverse: ten64: fix allocation order of MAC addresses
On Ten64 boards, the "serial number" is the MAC address of the first Gigabit Ethernet interface (labelled GE0 on the appliance), and counted up from there. The previous logic did not take into account U-Boot's ordering of the network interfaces. By setting aliases/ethernetX in the device tree we can ensure the U-Boot 'ethX' is the same as the labelled port order on the unit, as well as the one adopted by Linux. Signed-off-by: Mathew McBride <matt@traverse.com.au>
This commit is contained in:
parent
080ea65692
commit
56610ef5f3
|
@ -6,6 +6,16 @@
|
|||
/{
|
||||
aliases {
|
||||
spi0 = &qspi;
|
||||
ethernet0 = &dpmac7;
|
||||
ethernet1 = &dpmac8;
|
||||
ethernet2 = &dpmac9;
|
||||
ethernet3 = &dpmac10;
|
||||
ethernet4 = &dpmac3;
|
||||
ethernet5 = &dpmac4;
|
||||
ethernet6 = &dpmac5;
|
||||
ethernet7 = &dpmac6;
|
||||
ethernet8 = &dpmac2;
|
||||
ethernet9 = &dpmac1;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -328,8 +328,8 @@ static void ten64_set_macaddrs_from_board_info(struct t64uc_board_info *boardinf
|
|||
this_dpmac_num = allocation_order[intfidx];
|
||||
printf("DPMAC%d: %s\n", this_dpmac_num, ethaddr);
|
||||
snprintf(enetvar, 10,
|
||||
(this_dpmac_num != 1) ? "eth%daddr" : "ethaddr",
|
||||
this_dpmac_num - 1);
|
||||
(intfidx != 0) ? "eth%daddr" : "ethaddr",
|
||||
intfidx);
|
||||
macaddr++;
|
||||
|
||||
if (!env_get(enetvar))
|
||||
|
|
Loading…
Reference in New Issue
Block a user