[PATCH v2 00/16] mmc: meson-gx: driver fixups and upgrades

From: Jerome Brunet
Date: Mon Aug 21 2017 - 12:10:36 EST


The patchset features several bugfixes, rework and upgrade for the
meson-gx MMC driver.

The main goal is to improve readability and enable new high speed
modes, such as eMMC DDR52 and sdcard UHS modes up to SDR50 (100Mhz)

SDR104 is not working with a few cards on the p200 and the
libretech-cc. I suspect that 200Mhz might be a bit too fast for the PCB
of these boards, adding noise to the signal and eventually breaking
the communication with some cards. The same cards are working well on a
laptop or the nanopi-k2 at 200Mhz.

This series has been tested on gxbb-p200, gxbb-nanopi-k2 and
gxl-s905x-libretech-cc

Changes since v1 [0]:
* Reorder patches to have fixes first, then rework and finally
enhancements.
* Use CCF to manage clock phases

[0]: https://lkml.kernel.org/r/20170804174353.16486-1-jbrunet@xxxxxxxxxxxx

Jerome Brunet (16):
mmc: meson-gx: fix mux mask definition
mmc: meson-gx: remove CLK_DIVIDER_ALLOW_ZERO clock flag
mmc: meson-gx: clean up some constants
mmc: meson-gx: use _irqsave variant of spinlock
mmc: meson-gx: cfg init overwrite values
mmc: meson-gx: rework set_ios function
mmc: meson-gx: rework clk_set function
mmc: meson-gx: rework clock init function
mmc: meson-gx: fix dual data rate mode frequencies
mmc: meson-gx: work around clk-stop issue
mmc: meson-gx: simplify interrupt handler
mmc: meson-gx: implement card_busy callback
mmc: meson-gx: use CCF to handle the clock phases
mmc: meson-gx: implement voltage switch callback
mmc: meson-gx: change default tx phase
mmc: meson-gx: rework tuning function

drivers/mmc/host/meson-gx-mmc.c | 718 +++++++++++++++++++++++++++-------------
1 file changed, 497 insertions(+), 221 deletions(-)

--
2.9.5