> > > intmask) > > > * boundaries, but as we can't disable the feature > > > * we need to at least restart the transfer. > > > */ > > > - if (intmask & SDHCI_INT_DMA_END) > > > - sdhci_writel(host, sdhci_readl(host, SDHCI_DMA_ADDRESS), > > > - SDHCI_DMA_ADDRESS); > > > + if (intmask & SDHCI_INT_DMA_END) { > > > + u32 dmastart, dmanow; > > > + dmastart = sg_dma_address(host->data->sg); > > > > Consecutive transfers won't work (I know you know ;)). > > I assume you mean a single transfer that exceeds whatever is > defined in SDHCI_DEFAULT_BOUNDARY_SIZE. As long as > it is kept at 512K things should be fine, but adding the auxiliary > variable to facilitate smaller values would make the patch > more invasive. Being an mmc non-hacker, I would rather leave > that kind of invasive patches for others :) If you don't want to invest the effort, this is your decision, which is fine. Other than that, I'd say you are not missing the required skills for that change. (/me is just helping out here as well) Cheers, Wolfram -- Pengutronix e.K. | Wolfram Sang | Industrial Linux Solutions | http://www.pengutronix.de/ |
Attachment:
signature.asc
Description: Digital signature