mbox series

[0/6] v3u: add SDHI/MMC support

Message ID 20201227174202.40834-1-wsa+renesas@sang-engineering.com (mailing list archive)
Headers show
Series v3u: add SDHI/MMC support | expand

Message

Wolfram Sang Dec. 27, 2020, 5:41 p.m. UTC
So, this series adds SDHI/MMC support to the Renesas R-Car V3U SoC.
While SDHI is usually complicated, adding basic support to V3U was
refreshingly uncomplicated :) The crux was this time in the CPG driver.
In order to avoid code duplication, a CPG library was introduced, so we
can share the SD clock handling between generic Gen3, V3U, and hopefully
Gen4 later. The library turned out to be a quite nice solution for SDHI.
I am quite happy with it. I think we could have a similar benefit for
RPC, but we still need to see if this is enabled on V3U after all.

So much for now, looking forward to comments. The branch is here:

git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git renesas/v3u/sdhi

Happy hacking,

   Wolfram

Takeshi Saito (2):
  arm64: dts: renesas: r8a779a0: Add MMC node
  arm64: dts: renesas: falcon: Enable MMC

Wolfram Sang (4):
  dt-bindings: mmc: renesas,sdhi: Add r8a779a0 support
  clk: renesas: rcar-gen3: remove cpg_quirks access when registering SD
    clock
  clk: renesas: rcar-gen3: factor out CPG library
  clk: renesas: r8a779a0: add SDHI support

 .../devicetree/bindings/mmc/renesas,sdhi.yaml |   1 +
 .../boot/dts/renesas/r8a779a0-falcon.dts      |  41 +++
 arch/arm64/boot/dts/renesas/r8a779a0.dtsi     |  12 +
 drivers/clk/renesas/Kconfig                   |   5 +
 drivers/clk/renesas/Makefile                  |   1 +
 drivers/clk/renesas/r8a779a0-cpg-mssr.c       |  17 +-
 drivers/clk/renesas/rcar-cpg-lib.c            | 270 ++++++++++++++++++
 drivers/clk/renesas/rcar-cpg-lib.h            |  33 +++
 drivers/clk/renesas/rcar-gen3-cpg.c           | 267 +----------------
 9 files changed, 387 insertions(+), 260 deletions(-)
 create mode 100644 drivers/clk/renesas/rcar-cpg-lib.c
 create mode 100644 drivers/clk/renesas/rcar-cpg-lib.h