Root/target/linux/brcm47xx/patches-3.3/007-bcma-add-boardinfo-struct.patch

1--- a/arch/mips/bcm47xx/setup.c
2+++ b/arch/mips/bcm47xx/setup.c
3@@ -190,6 +190,8 @@ static void __init bcm47xx_register_bcma
4     err = bcma_host_soc_register(&bcm47xx_bus.bcma);
5     if (err)
6         panic("Failed to initialize BCMA bus (err %d)", err);
7+
8+ bcm47xx_fill_bcma_boardinfo(&bcm47xx_bus.bcma.bus.boardinfo, NULL);
9 }
10 #endif
11 
12--- a/arch/mips/bcm47xx/sprom.c
13+++ b/arch/mips/bcm47xx/sprom.c
14@@ -630,3 +630,15 @@ void bcm47xx_fill_ssb_boardinfo(struct s
15     nvram_read_u16(prefix, NULL, "boardtype", &boardinfo->type, 0);
16 }
17 #endif
18+
19+#ifdef CONFIG_BCM47XX_BCMA
20+void bcm47xx_fill_bcma_boardinfo(struct bcma_boardinfo *boardinfo,
21+ const char *prefix)
22+{
23+ nvram_read_u16(prefix, NULL, "boardvendor", &boardinfo->vendor, 0);
24+ if (!boardinfo->vendor)
25+ boardinfo->vendor = SSB_BOARDVENDOR_BCM;
26+
27+ nvram_read_u16(prefix, NULL, "boardtype", &boardinfo->type, 0);
28+}
29+#endif
30--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
31+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx.h
32@@ -51,5 +51,9 @@ void bcm47xx_fill_sprom_ethernet(struct
33 void bcm47xx_fill_ssb_boardinfo(struct ssb_boardinfo *boardinfo,
34                 const char *prefix);
35 #endif
36+#ifdef CONFIG_BCM47XX_BCMA
37+void bcm47xx_fill_bcma_boardinfo(struct bcma_boardinfo *boardinfo,
38+ const char *prefix);
39+#endif
40 
41 #endif /* __ASM_BCM47XX_H */
42

Archive Download this file



interactive