On Sunday 29 June 2008 21:04:28 Steve Brown wrote:
> Michael Buesch wrote:
> > On Sunday 29 June 2008 15:12:47 Steve Brown wrote:
> >   
> >> What should I do next?
> >>     
> >
> > Can you try this patch?
> >
> > Index: wireless-testing/drivers/net/wireless/b43/main.c
> > ===================================================================
> > --- wireless-testing.orig/drivers/net/wireless/b43/main.c   2008-06-26 
> > 18:05:10.000000000 +0200
> > +++ wireless-testing/drivers/net/wireless/b43/main.c        2008-06-29 
> > 18:56:07.000000000 +0200
> > @@ -3730,9 +3730,10 @@ static int b43_phy_versioning(struct b43
> >                     tmp = 0x5205017F;
> >     } else {
> >             b43_write16(dev, B43_MMIO_RADIO_CONTROL, B43_RADIOCTL_ID);
> > -           tmp = b43_read16(dev, B43_MMIO_RADIO_DATA_LOW);
> > +           tmp = b43_read16(dev, B43_MMIO_RADIO_DATA_HIGH);
> > +           tmp <<= 16;
> >             b43_write16(dev, B43_MMIO_RADIO_CONTROL, B43_RADIOCTL_ID);
> > -           tmp |= (u32)b43_read16(dev, B43_MMIO_RADIO_DATA_HIGH) << 16;
> > +           tmp |= b43_read16(dev, B43_MMIO_RADIO_DATA_LOW);
> >     }
> >     radio_manuf = (tmp & 0x00000FFF);
> >     radio_ver = (tmp & 0x0FFFF000) >> 12;
> >
> >
> >   
> I had tried the same thing earlier this morning thinking that as the 
> working code had the order reversed, that might be the problem. But, to 
> be thorough, I applied your patch as well. Same result.
> 
> The only difference I can see is:
> Bus error version:
> b43-phy0: Broadcom 4318 WLAN found
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3e0
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3f8
> Data bus error, epc == 8011950c, ra == 80161164
> 
> Working version:
> b43-phy0: Broadcom 4318 WLAN found
> drivers/ssb/pci.c:535 mmio:0xc0074000 offset:0x3e0
> drivers/ssb/pci.c:535 mmio:0xc0074000 offset:0x3f8
> drivers/ssb/pci.c:535 mmio:0xc0074000 offset:0x3fa
> drivers/ssb/pci.c:535 mmio:0xc0074000 offset:0x3fe
> drivers/ssb/pci.c:535 mmio:0xc0074000 offset:0x3fe
> 
> The thing that confounds me is that 0x3e0 returns good data, 0x3fa 
> returns good data, but 0x3f8 bus errors. If my understanding is correct 
> that a bus error is essentially an access timeout, I sure can't explain 
> a hole in the middle of the register space?
> 
> To be sure it was really a hole and the entire register space didn't 
> just disappear after the 0x3fa read, I repeated the 0x3fa read.
> Same problem:
> b43-phy0: Broadcom 4318 WLAN found
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3e0
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3fa
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3fa -- DUPLICATE --
> drivers/ssb/pci.c:604 mmio:0xc0000000 offset:0x3f8
> Data bus error, epc == 8011950c, ra == 80161164

I'm sorry, I cannot tell you what causes this. But I guess, however,
it is some change in the ssb setup code that broke this.


-- 
Greetings Michael.
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel

Reply via email to