On Tuesday 26 March 2013, Alan Stern wrote: > That's up to platform guys. I wasn't aware of any common practice > whereby drivers would fill in a missing dma_mask, except in the DT > case. I don't think we are consistent in any way. PowerPC sets up a 32 bit DMA mask for all devices during DT probe from arch code, while the common code sets up coherent_dma_mask but not dma_mask, except for AMBA devices, which also get the 32 bit mask. The MIPS Octeon and PowerPC PS3 EHCI backends set up the dma mask because platform code doesn't do it for them, but both drivers are not using DT. The Xilinx and PPC-OF EHCI back-end do not set it up, because on microblaze and powerpc it does come from the platform code. I think it's a horrible mess and if anyone has an idea of what the right solution is, we should probably implement that, but from what I see here, setting a 32-bit dma mask unless there is already one is a reasonable choice. > Don't forget that EHCI is theoretically capable of using 64-bit DMA. > This may not matter for any of the platforms you're concerned about > now, but it may matter in the future. Ah, I wasn't aware of that. I had previously used a platform EHCI on PowerPC64 and the hardware manual said that it was 32-bit only. Apparently the chip designers screwed up there. Arnd -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html