Re: Regression in 2.6.24-rc3 - 64-bit DMA fails for BCM94311MCG rev 02

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Arjan van de Ven wrote:
> On Sun, 18 Nov 2007 18:04:51 -0600
> Larry Finger <[email protected]> wrote:
> 
>> I get a failure of 64-bit DMA on a BCM94311MCG rev 02 wireless
>> interface running on x86_64 using an AMD Turion 64 X2 processor on an
>> HP Pavilion dv2125nr laptop. The error code indicates that the
>> interface is getting a descriptor read error, even though the
>> descriptor ring and all the DMA buffers have been checked when
>> allocated. This particular card version is newly supported; however,
>> it was working correctly on 2.6.24-rc2.
>>
> 
> 
> worth adding a pci_set_dma_mask(pdev, DMA_32BIT_MASK); in the driver,
> just after pci_enable_device(); (also check if there's other
> pci_set_dma_mask functions, to make sure it doesn't get set back to 64
> bit)

The hardware for this driver comes in 30-, 32-, and 64-bit flavors. After determining which flavor
we have, the driver sends that information to the ssb driver, which actually handles the PCI
enabling. For the device that fails, I'm passing DMA_BIT_MASK(64) to the appropriate routine in ssb,
which calls dma_supported() with that mask. There are no other calls to any of the dma or pci mask
routines. I changed the dma_supported() to a set_dma_mask(), but it didn't make any difference. My
32-bit device works OK - just the 64-bit one fails.

Larry


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux