lkml.org 
[lkml]   [2018]   [Nov]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v2 1/3] mmc: sdhci: add support for using external DMA devices
Hi Adrian,

On Thu, 29 Nov 2018 at 15:36, Adrian Hunter <adrian.hunter@intel.com> wrote:
>
> On 29/11/18 8:22 AM, Chunyan Zhang wrote:
> > On Tue, 20 Nov 2018 at 21:41, Adrian Hunter <adrian.hunter@intel.com> wrote:
> >>
> >> On 12/11/18 9:26 AM, Chunyan Zhang wrote:
> >>> Some standard SD host controllers can support both external dma
> >>> controllers as well as ADMA/SDMA in which the SD host controller
> >>> acts as DMA master. TI's omap controller is the case as an example.
> >>>
> >>> Currently the generic SDHCI code supports ADMA/SDMA integrated in
> >>> the host controller but does not have any support for external DMA
> >>> controllers implemented using dmaengine, meaning that custom code is
> >>> needed for any systems that use an external DMA controller with SDHCI.
> >>
> >> I still think you probably need to reset the DMA if there are transfer
> >> errors - perhaps you could comment on that. Also there are some comments below.
> >
> > With regard to "transfer error", do you mean if
> > sdhci_external_dma_setup() failed?
>
> No, I mean any error interrupt that can leave the DMA uncompleted. For
> SDHCI, resetting the data circuit cleans that up, but presumably something
> is needed for external DMA?

Yes, it should need a dmaengine_terminate_all().

How about adding that at here (I will wrap it up of course):
https://elixir.bootlin.com/linux/v4.19.5/source/drivers/mmc/host/sdhci.c#L2553

Is there somewhere else I'm missing?

Thanks,
Chunyan

\
 
 \ /
  Last update: 2018-11-29 11:01    [W:0.204 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site