On Tue, Jul 28, 2009 at 07:34:14AM -0700, San Mehat wrote: > I'll try your test code when I have a chance.
Thanks. > > I'm in a difficult debugging sitation for this issue. I can't build the > > kernel for the device (I'm working on getting the source to allow me to > > do this), and I don't have documentation for the processor. I also > > don't know whether the msm_sdcc driver is using DMA or PIO for the > > transfer, although in my tracing of the code paths it doesn't look like > > it should matter because in either case the cache lines for the > > userspace mapping should be cleaned and invalidated before the transfer > > starts. Are there any peculiarities of Android kernel modifications or > > of the MSM7k that could be causing this sort of behavior? > > > > I can't think of anything specific in the Android kernel patches which would > cause the behavior you're seeing. > > For SD cards basically we DMA for any transfers >= 64 bytes and which are 64 > byte aligned. I'm having a hard time seeing where the problems would come from with DMA. get_user_pages() should result in a clean/invalidate operation, so RAM should be consistent by the time the DMA operation starts. If that were failing then all consumers of get_user_pages() would have a potential for problems. Maybe I'm barking up the wrong tree with my cache aliasing suspicion, but then I don't know what else it could be. Thanks for the help. Seth --~--~---------~--~----~------------~-------~--~----~ unsubscribe: android-kernel+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-kernel -~----------~----~----~----~------~----~------~--~---