70711ec3ab8bb69277dd87061970061a33834c5b
[openwrt.git] / target / linux / brcm63xx / patches-2.6.39 / 260-ssb_sprom_mac_pool.patch
1 --- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
2 +++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
3 @@ -856,17 +856,6 @@ void __init board_prom_init(void)
4         }
5  
6         bcm_gpio_writel(val, GPIO_MODE_REG);
7 -
8 -       /* Generate MAC address for WLAN and
9 -        * register our SPROM */
10 -#ifdef CONFIG_SSB_PCIHOST
11 -       if (!board_get_mac_address(bcm63xx_sprom.il0mac)) {
12 -               memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN);
13 -               memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN);
14 -               if (ssb_arch_set_fallback_sprom(&bcm63xx_sprom) < 0)
15 -                       printk(KERN_ERR "failed to register fallback SPROM\n");
16 -       }
17 -#endif
18  }
19  
20  /*
21 @@ -946,6 +935,18 @@ int __init board_register_devices(void)
22             !board_get_mac_address(board.enet1.mac_addr))
23                 bcm63xx_enet_register(1, &board.enet1);
24  
25 +       /* Generate MAC address for WLAN and
26 +        * register our SPROM, do this after registering enet devices
27 +        */
28 +#ifdef CONFIG_SSB_PCIHOST
29 +       if (!board_get_mac_address(bcm63xx_sprom.il0mac)) {
30 +               memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN);
31 +               memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN);
32 +               if (ssb_arch_set_fallback_sprom(&bcm63xx_sprom) < 0)
33 +                       printk(KERN_ERR "failed to register fallback SPROM\n");
34 +       }
35 +#endif
36 +
37         if (board.has_ehci0)
38                 bcm63xx_ehci_register();
39