Am 13.05.2010 18:52, schrieb Bernhard Loos:
> Hello
> Around line 583 in drivers/sbb/scan.c, there should be an if
> (bus->chip_rev >=4).
> Could you remove the if and always execute the code which assigns
> bus->nr_devices?
> This shouldn't be a problem, because the bits for the device number
> should be zero on cores which don't support it.
> I can also provide a new patch, if you like it better.
> 
>                Bernhard
Hi Bernhard,

I have changed the code to do the same things it did before your changes
at that position. My patch is attached.

With this patch all ssb Cores are found, but I get a oops in b43 driver
now. "Reserved instruction in kernel code"

I have not activated symbols will do now. Here is the log for now:
http://hauke-m.de/fileadmin/openwrt/brcm47xx-log/boot-not-working2.log

Could you please split 952-ai-scan.patch into two patches. One just
reorganizing the existing code without changing any functionality and
one adding the ai scan.

Hauke
--- a/drivers/ssb/scan.c	2010-05-13 17:18:05.347256703 +0200
+++ b/drivers/ssb/scan.c	2010-05-13 20:43:53.887257939 +0200
@@ -545,7 +545,7 @@
 {
 	int err = -ENOMEM;
 	void __iomem *mmio;
-	u32 tmp, chiptype = SSB_CHIPCO_TYPE_SB;
+	u32 tmp, idhi, rev, chiptype = SSB_CHIPCO_TYPE_SB;
 	bool have_chipcommon = true;
 
 	mmio = ssb_ioremap(bus, baseaddr);
@@ -572,6 +572,9 @@
 	
 	bus->nr_devices = 0;
 	if (have_chipcommon) {
+		idhi = scan_read32(bus, 0, SSB_IDHIGH);
+		rev = (idhi & SSB_IDHIGH_RCLO);
+		rev |= (idhi & SSB_IDHIGH_RCHI) >> SSB_IDHIGH_RCHI_SHIFT;
 		tmp = scan_read32(bus, 0, SSB_CHIPCO_CHIPID);
 
 		bus->chip_id = (tmp & SSB_CHIPCO_IDMASK);
@@ -580,7 +583,7 @@
 		bus->chip_package = (tmp & SSB_CHIPCO_PACKMASK) >>
 				    SSB_CHIPCO_PACKSHIFT;
 		chiptype = tmp & SSB_CHIPCO_TYPE_MASK;
-		if (bus->chip_rev >= 4) {
+		if (rev >= 4) {
 			bus->nr_devices = (tmp & SSB_CHIPCO_NRCORESMASK) >>
 					  SSB_CHIPCO_NRCORESSHIFT;
 		}
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to