On Wed, May 17, 2006 at 08:44:08PM +0800, Rogier Stam wrote:
> Johannes Berg wrote:
> >Hmm. I'm not sure it is correct. Please check the specs and see if the
> >mac address is correct. Still, I think you should be taking this up with
> >the generic pci support in your kernel... It can hardly be bcm specific.
> 
> Thanks for the reply. Yeah its not BCM specific. It's a bug in the 
> silicon. Basically put, for every byte in a 32 bit word you have one 
> byte enable line. Depending on if you transfer a byte, a word or a dword 
> one or more of these byte enable lines will be active high for the ones 
> that transfer, and active low for the ones that don't (i'm not sure if 
> it is a low voltage level or a high one, for the explanation of this bug 
> it doesn't matter). However when doing a 16 bit word, the IXP425 will 
> set all 4 byte enable lines high on a memory read transaction. That's 
> where it goes wrong....... The problem is that the PCI card in question 
> (in this case the bcm4306) must allow you to do byte or dword reads 
> instead to work around. It's not a guarantee that if it works for one 
> it'll work for another card. The official workaround requires a hardware 
> modification and a kernel modification, but as most of these boards are 
> already done, that's not a very good solution. My hope is that it is 
> possible with a workaround instead.

Ask on the linux-arm-kernel mailing list (subscriber only list,
subscribe before you post). Deepak Saxena hangs out over there, he
might know if you can get away without a hardware workaround. My guess
is that you can't.


Erik

-- 
+-- Erik Mouw -- www.harddisk-recovery.com -- +31 70 370 12 90 --
| Lab address: Delftechpark 26, 2628 XH, Delft, The Netherlands
_______________________________________________
Bcm43xx-dev mailing list
[email protected]
http://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to