Thread (17 messages) 17 messages, 4 authors, 2016-05-23

[RFC PATCH 2/3] mmc: host: omap_hsmmc: Enable ADMA2

From: Kishon Vijay Abraham I <hidden>
Date: 2016-05-23 06:23:03
Also in: linux-mmc, linux-omap, lkml

Hi Felipe,

On Friday 20 May 2016 12:06 AM, Felipe Balbi wrote:
Hi,

Tony Lindgren [off-list ref] writes:
quoted
* Peter Ujfalusi [off-list ref] [160519 01:10]:
quoted
On 05/18/2016 10:30 PM, Tony Lindgren wrote:
quoted
Ideally the adma support would be a separate loadable module,
similar how the cppi41dma is a child of the OTG controller.
The Master DMA is part of the hsmmc IP block. If the same ADMA module is
present on other IPs it might be beneficial to have a helper library to handle
it (allocating the descriptor pool, wrinting, updating descriptors, etc).
OK. Yeah if it's part of the MMC controller it makes no sense to
separate it. So then the conecrns are using alternate DMA
implementations and keeping PM runtime working :)

BTW, Felipe mentioned that the best thing to do in the long run would
be to set up sdhci-omap.c operating in ADMA mode.

Felipe, care to summarize what you had in mind?
yeah, just write a new sdhci-omap.c to start moving away from
omap-hsmmc.c, just like it was done for 8250-omap.

At the beginning, it could be just the bare minimum to get it working
and slowly move over stuff like pm runtime, dmaengine, PIO. Move more
platforms over to that driver and, eventually, get rid of omap-hsmmc.c
altogether.

That way, development can be focussed on generic layers (SDHCI) to which
OMAP MMC controller is compliant (apart from the VERSION register
quirk).
About an year back, when I tried using SDHCI for OMAP I ran into issues and was
not able to get it working. IIRC SDHCI_PRESENT_STATE (or OMAP_HSMMC_PSTATE) was
not showing the correct state for card present and is unable to raise an
interrupt when a card is inserted. I didn't debug this further.

It also kept me wondering why gpio interrupt was always used for card detect
instead of using mmci_sdcd line of the controller.

Thanks
Kishon
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help