On Saturday 08 November 2008, Hans Petter Selasky wrote: > On Saturday 08 November 2008, Alexander Motin wrote: > What is the real reason to do that? If you are saying that you uses > 1-byte alignment then you should be able to accept _any_ address that > busdma will allocate to you! Why original data alignment should so > strictly affect hardware operation? Hi, The real reason is that the EHCI and OHCI only takes the full physical address of the _first_ page, and then for the subsequent pages only stores the upper bits of the physical address, leaving it impossible to program a per-page data start offset. The hardware assumes that the lower part of the physical address wraps modulo PAGE_SIZE, and that's it. Don't ask me why they designed it like that. Currently USB is broken on all architectures where bouncing is used. I see no other way around this than to change busdma. --HPSReceived on Sat Nov 08 2008 - 15:25:03 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:37 UTC