Re: USB and DMA on Alpha with 2.6.0-test7

From: David Brownell
Date: Fri Oct 10 2003 - 12:12:42 EST


The BUG_ON at include/asm-generic/dma-mapping.h:19 is a
bug in that "generic DMA" code ... and I've seen the
same BUG reported from PPC folk too.

All implementations of dma_supported() should check
those DMA masks directly ... instead we have

- A "generic" implementation that only works for PCI,
even though that method (in particular!) was intended
to really be generic enough to work with USB;

- Some arch-specific implementations (x86) that don't
handle the 64-bit DMA case correctly.

We might need arch-specific implementations of that
method, and maybe Alpha is even one of them. But if
there's going to be a default implementation for that
method, the current scheme has portability problems.


Ivan Kokshaysky wrote:
Anyway, as it is, usbnet driver won't work on i386 with
more than 4G of RAM and 32-bit DMA USB controller.

Nope -- there's EHCI, which can handle 64-bit DMA when the
silicon allows ... which is why that test exists.

- Dave



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