Johannes Berg wrote:
>> It appears that I have found either a hardware error with my copy of that 
>> card, or there is an error
>> in the ucode13 firmware. 
> 
> FWIW, the firmware is hardly involved in DMA so that's extremely
> unlikely.

Does this mean the DMA engines are implemented in silicon? If so, there may be 
an error in the chip
design. AFAIK, all Windows DMA is done to really low-order memory, and such a 
defect would not show
there. I do not know if this card is ever used on a Mac.

>> Between 2.6.24-rc2 and -rc3, code that resulted in the Descriptor Address
>> Rings having low addresses was removed. At that point, my card failed with a 
>> DMA error. When the
>> ring buffer is forced to a low address by requesting it with the GFP_DMA 
>> flag, then the card works.
>> Note that the data buffers for DMA are still at high addresses - only the 
>> ring buffer is low.
> 
> Maybe the card can't handle high addresses for the buffers or we're
> doing something wrong with the address (extension) here?

According to the specs, a flat 64-bit address is used for the ring buffer and 
it should be OK to put
the buffer anywhere in RAM. Only the data buffers require messing with an 
extension field; however,
my test machine has only 1.5 GB RAM, and all addresses fit in the low-order 32 
bits.

Larry

_______________________________________________
Bcm43xx-dev mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/bcm43xx-dev

Reply via email to