Messages in this thread | | | Date | Fri, 10 Oct 2003 10:18:15 -0700 | From | David Brownell <> | Subject | Re: USB and DMA on Alpha with 2.6.0-test7 |
| |
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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |