Messages in this thread | | | From | Marek Vasut <> | Subject | Re: [PATCH] fix misalignment in pxamci | Date | Tue, 29 Jul 2008 09:55:18 +0200 |
| |
Dne Tuesday 29 of July 2008 08:30:09 pHilipp Zabel napsal(a): > On Mon, Jul 28, 2008 at 6:23 PM, Uli Luckas <u.luckas@road.de> wrote: > > On Saturday, 5. July 2008, pHilipp Zabel wrote: > >> On Sat, Jul 5, 2008 at 2:19 AM, Marek Vasut <marek.vasut@gmail.com> wrote: > >> > Hi, > >> > Philipp Zabel finally made the pxamci issue clear. It turned out, that > >> > pxamci needs the DMA destination address to be aligned to 8 bytes. In > >> > some cases it happened, that the address was aligned to 4 bytes > >> > causing controller to incorrectly transfer data (and resulting into > >> > error like "mmc0: unrecognised SCR structure version 1"). The > >> > following patch allows to debug this issue and moreover fixes it by > >> > moving one 4 byte entry of mmc_card structure, aligning the DMA > >> > destination back to 8 bytes. > >> > > >> > Signed-off-by: Marek Vasut <marek.vasut@gmail.com> > >> > >> We can enable byte aligned transfers on the DMA controller. This is > >> what I came up with yesterday: > >> (sorry for wrapped lines - the proper patch should probably be a > >> combination of both > >> warning/DALGN handling and and moving something in mmc_card around). > > > > Hi Philipp, > > this driver is not only for pxa27x but for pxa25x as well and pxa25x > > can't handle unaligned DMA. > > Shouldn't Marek Vasut's patch be included for the PXA25x case? > > Argh, DALGN shouldn't be defined in pxa-regs.h. We really need an > aligned SCR target then. Pierre, is there any way we can have the MMC > core align DMA targets for pxa25x? > > Just moving elements of the mmc_card structure around seems to be good > enough, but I fear this will break again as soon as the next person > forgets about pxamci's special needs on pxa25x.
Well cant we just add some comment to mmc_card .... like "your eyes will bulge with horror if you add something before this point"? ;-) > > regards > Philipp
| |