From: "Michael Chan" <[EMAIL PROTECTED]> Date: Wed, 02 May 2007 16:28:22 -0700
> Is it correct to assume that all 64-bit systems using 64-bit > dma_addr_t will either have real IOMMUs or will use SWIOTLB? If > this is true, we can just set the DMA mask to what is supported by > the hardware and let pci_map_xxx() handle all necessary translations > or bounce buffering. This should work. Especailly since every platform has to support 32-bit DMA masks, the worst possible case is that the 40-bit DMA mask set fails, and you have to fall back to 32-bit. But since every driver has that fallback logic, it should be totally transparent. We might want to formalize that at some point to save driver code. Ie. we'd have an interface that takes a prioritized array of DMA masks the driver wants to use, and you get back the index that was selected or an error if none of them could be accomodated. It's just a tangental future cleanup idea, since we're discussing this. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html