fix ar2312/2313 mac detection

SVN-Revision: 6316
This commit is contained in:
Felix Fietkau 2007-02-17 22:22:14 +00:00
parent 144ebddd61
commit 73fc1141c0
1 changed files with 6 additions and 2 deletions

View File

@ -255,8 +255,9 @@ int __init ar5312_init_devices(void)
ar5312_eth1_data.board_config = board_config; ar5312_eth1_data.board_config = board_config;
ar5312_devs[dev++] = &ar5312_physmap_flash; ar5312_devs[dev++] = &ar5312_physmap_flash;
ar5312_eth0_data.macaddr = bcfg->enet0Mac; if (!memcmp(bcfg->enet0Mac, "\xff\xff\xff\xff\xff\xff", 6))
ar5312_eth1_data.macaddr = bcfg->enet1Mac; memcpy(bcfg->enet0Mac, bcfg->enet1Mac, 6);
if (memcmp(bcfg->enet0Mac, bcfg->enet1Mac, 6) == 0) { if (memcmp(bcfg->enet0Mac, bcfg->enet1Mac, 6) == 0) {
/* ENET0 and ENET1 have the same mac. /* ENET0 and ENET1 have the same mac.
* Increment the one from ENET1 */ * Increment the one from ENET1 */
@ -267,11 +268,14 @@ int __init ar5312_init_devices(void)
switch(mips_machtype) { switch(mips_machtype) {
case MACH_ATHEROS_AR5312: case MACH_ATHEROS_AR5312:
ar5312_eth0_data.macaddr = bcfg->enet0Mac;
ar5312_eth1_data.macaddr = bcfg->enet1Mac;
ar5312_devs[dev++] = &ar5312_eth[0]; ar5312_devs[dev++] = &ar5312_eth[0];
ar5312_devs[dev++] = &ar5312_eth[1]; ar5312_devs[dev++] = &ar5312_eth[1];
break; break;
case MACH_ATHEROS_AR2312: case MACH_ATHEROS_AR2312:
case MACH_ATHEROS_AR2313: case MACH_ATHEROS_AR2313:
ar231x_eth0_data.macaddr = bcfg->enet0Mac;
ar5312_devs[dev++] = &ar231x_eth0; ar5312_devs[dev++] = &ar231x_eth0;
ar5312_flash_data.width = 1; ar5312_flash_data.width = 1;
break; break;