[OpenWrt-Devel] [PATCH v2 3/3] brcm-wl: use new brcm63xx fallback sprom

Álvaro Fernández Rojas noltari at gmail.com
Tue Aug 12 19:24:07 EDT 2014


This fixes brcm63xx fallback sprom extraction.

Signed-off-by: Álvaro Fernández Rojas <noltari at gmail.com>
---
v2: just fix the sprom extraction

diff --git a/package/kernel/broadcom-wl/patches/910-fallback-sprom.patch b/package/kernel/broadcom-wl/patches/910-fallback-sprom.patch
index 749ecbf..a85e40b 100644
--- a/package/kernel/broadcom-wl/patches/910-fallback-sprom.patch
+++ b/package/kernel/broadcom-wl/patches/910-fallback-sprom.patch
@@ -6,24 +6,13 @@
  
 +#if defined(CONFIG_SSB_PCIHOST) && defined(CONFIG_BOARD_BCM963XX)
 +#include <linux/ssb/ssb.h>
-+extern struct ssb_sprom bcm63xx_sprom;
++extern int bcm63xx_get_fallback_sprom(uint pci_bus, uint pci_slot, struct ssb_sprom *out);
 +#endif
 +
  #ifdef WLTEST
  #include <sbsprom.h>
  #endif /* WLTEST */
-@@ -2058,6 +2063,10 @@ BCMATTACHFN(initvars_srom_pci)(si_t *sih
- 	bool flash = FALSE;
- 	int err = 0;
- 
-+#if defined(CONFIG_SSB_PCIHOST) && defined(CONFIG_BOARD_BCM963XX)
-+	char eabuf[18];
-+#endif
-+
- 	/*
- 	 * Apply CRC over SROM content regardless SROM is present or not,
- 	 * and use variable <devpath>sromrev's existance in flash to decide
-@@ -2120,6 +2129,58 @@ BCMATTACHFN(initvars_srom_pci)(si_t *sih
+@@ -2120,6 +2125,63 @@ BCMATTACHFN(initvars_srom_pci)(si_t *sih
  			goto varscont;
  		}
  
@@ -32,9 +21,14 @@
 +
 +		if( base != NULL )
 +		{
-+			varbuf_init(&b, base, MAXSZ_NVRAM_VARS);
++			char eabuf[18];
++			struct ssb_sprom bcm63xx_sprom;
++			uint pci_bus = osl_pci_bus(osh), pci_slot = osl_pci_slot(osh);
++
++			bcm63xx_get_fallback_sprom(pci_bus, pci_slot, &bcm63xx_sprom);
++			printk("BCM%X(%02x:%02x) using sprom version %i\n", sih->chip, pci_bus, pci_slot, bcm63xx_sprom.revision);
 +
-+			printk("Got version %i SPROM from SSB\n", bcm63xx_sprom.revision);
++			varbuf_init(&b, base, MAXSZ_NVRAM_VARS);
 +
 +			varbuf_append(&b, vstr_sromrev, bcm63xx_sprom.revision);
 +			varbuf_append(&b, vstr_boardrev, bcm63xx_sprom.board_rev);
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list