[PATCH v3 0/7] Port am335 and am437 devices to sdhci-omap

From: Faiz Abbas
Date: Tue Dec 10 2019 - 04:50:51 EST


The following add driver patches for porting TI's am335x and am437x
devices to the sdhci-omap driver.

This involves adding external DMA support to sdhci (first 3 patches from
Chunyan) plus some miscellaneous patches to take care of deviations of
the controllers from the sdhci model.

DT changes will be posted in a separate series.

Untested versions of Chunyan's patches were posted before[1].

Tested on: am335x-evm, am335x-boneblack, am335x-sk, am437x-gpevm,
am43xx-gpevm, am437x-idk, dra7xx-evm, dra72x-evm.

I need some help with testing all the other beaglebone variants and SDIO
Wifi cards.

v3:
1. Dropped patch 1 because the tasklet was removed by Adrian in an
earlier series.
2. Added dma bindings in sdhci-omap as optional properties.
3. Rebased on top of latest mainline.

v2:
1. sdhci is using two bottom halves. One threaded_rq for card detect and a
tasklet for finishing mmc requests. Patch 1 removes the tasklet and
moves its function to the threaded_irq. This enables me to
terminate_sync() in sdhci_request_done()

2. Factored out common code for between the normal adn external dma case

3. Using existing API sdhci_data_timeout_irq for disabling DTO during
erase commands.

4. Fixed subject line for dt-bindings patch.

[1] https://patchwork.kernel.org/project/linux-mmc/list/?series=54897


Chunyan Zhang (3):
dt-bindings: sdhci-omap: Add properties for using external dma
mmc: sdhci: add support for using external DMA devices
mmc: sdhci-omap: Add using external dma

Faiz Abbas (4):
mmc: sdhci: Add quirk for disabling DTO during erase command
mmc: sdhci-omap: Add DISABLE_DTO_FOR_ERASE Quirk
dt-bindings: sdhci-omap: Add am335x and am437x specific bindings
mmc: sdhci-omap: Add am335x and am437x specific compatibles

.../devicetree/bindings/mmc/sdhci-omap.txt | 11 +
drivers/mmc/host/Kconfig | 4 +
drivers/mmc/host/sdhci-omap.c | 27 +-
drivers/mmc/host/sdhci.c | 290 ++++++++++++++++--
drivers/mmc/host/sdhci.h | 10 +
5 files changed, 313 insertions(+), 29 deletions(-)

--
2.19.2