aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2011-11-16 13:49:58 -0500
committerRalf Baechle <ralf@linux-mips.org>2011-12-07 17:03:04 -0500
commitb15a6d62b5482966d0605e24c728bea8f7f876eb (patch)
tree634a963d602de5912180001af87b27fc75b77ccb
parent92d9ae20269461deeefc46fbcdb8d428c4aa8d18 (diff)
MIPS: BCM63XX: generate WLAN MAC address after registering ethernet devices.
In case the MAC address pool is not big enough to also register a WLAN device prefer registering the Ethernet devices. [ralf@linux-mips.org: Fixed formatting as per Sergei's complaint.] Signed-off-by: Florian Fainelli <florian@openwrt.org> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/3013/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/bcm63xx/boards/board_bcm963xx.c25
1 files changed, 13 insertions, 12 deletions
diff --git a/arch/mips/bcm63xx/boards/board_bcm963xx.c b/arch/mips/bcm63xx/boards/board_bcm963xx.c
index ac948c25c9f0..e62461f817d7 100644
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
@@ -791,18 +791,6 @@ void __init board_prom_init(void)
791 } 791 }
792 792
793 bcm_gpio_writel(val, GPIO_MODE_REG); 793 bcm_gpio_writel(val, GPIO_MODE_REG);
794
795 /* Generate MAC address for WLAN and
796 * register our SPROM */
797#ifdef CONFIG_SSB_PCIHOST
798 if (!board_get_mac_address(bcm63xx_sprom.il0mac)) {
799 memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN);
800 memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN);
801 if (ssb_arch_register_fallback_sprom(
802 &bcm63xx_get_fallback_sprom) < 0)
803 printk(KERN_ERR PFX "failed to register fallback SPROM\n");
804 }
805#endif
806} 794}
807 795
808/* 796/*
@@ -886,6 +874,19 @@ int __init board_register_devices(void)
886 if (board.has_dsp) 874 if (board.has_dsp)
887 bcm63xx_dsp_register(&board.dsp); 875 bcm63xx_dsp_register(&board.dsp);
888 876
877 /* Generate MAC address for WLAN and register our SPROM,
878 * do this after registering enet devices
879 */
880#ifdef CONFIG_SSB_PCIHOST
881 if (!board_get_mac_address(bcm63xx_sprom.il0mac)) {
882 memcpy(bcm63xx_sprom.et0mac, bcm63xx_sprom.il0mac, ETH_ALEN);
883 memcpy(bcm63xx_sprom.et1mac, bcm63xx_sprom.il0mac, ETH_ALEN);
884 if (ssb_arch_register_fallback_sprom(
885 &bcm63xx_get_fallback_sprom) < 0)
886 pr_err(PFX "failed to register fallback SPROM\n");
887 }
888#endif
889
889 /* read base address of boot chip select (0) */ 890 /* read base address of boot chip select (0) */
890 val = bcm_mpi_readl(MPI_CSBASE_REG(0)); 891 val = bcm_mpi_readl(MPI_CSBASE_REG(0));
891 val &= MPI_CSBASE_BASE_MASK; 892 val &= MPI_CSBASE_BASE_MASK;