This patch series adds support Renesas R-Car S4-8 UFS controller. This controller has some restrictions so adds some quirks for it. Before using this driver, we have to initialize a clock generator on the environment board (named "Spider") by using the commands of U-Boot like below: => i2c dev 0 => i2c mw 0x6c 0x26 0x05 => i2c olen 0x6c 2 => i2c mw 0x6c 0x26c 0x2e To use the UFS controller, we need the following patch too: https://lore.kernel.org/all/20220411124932.3765571-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ Changes from v2: - Add Reviewed-by in patch [1/7]. (Krzysztof, thanks!) - Use WARN_ON() instead of BUG_ON in patch [4/7]. https://lore.kernel.org/all/20220414023115.4190736-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ Changes from v1: - Fix dt-binding doc in patch [1/7]. - Add __maybe_unused for compile test on other platforms in patch [4/7]. - Fix node names in patch [5/7]. https://lore.kernel.org/all/20220412073647.3808493-1-yoshihiro.shimoda.uh@xxxxxxxxxxx/ Yoshihiro Shimoda (7): dt-bindings: ufs: Document Renesas R-Car UFS host controller ufs: add UFSHCD_QUIRK_BROKEN_64BIT_ADDRESS ufs: add UFSHCD_QUIRK_HIBERN_FASTAUTO scsi: ufs-renesas: Add support for Renesas R-Car UFS controller scsi: MAINTAINERS: Add maintainer for Renesas UFS driver arm64: dts: renesas: r8a779f0: Add UFS node arm64: dts: renesas: r8a779f0: spider-cpu: Enable UFS device .../devicetree/bindings/ufs/renesas,ufs.yaml | 61 +++ MAINTAINERS | 7 + .../boot/dts/renesas/r8a779f0-spider-cpu.dtsi | 8 + arch/arm64/boot/dts/renesas/r8a779f0.dtsi | 19 + drivers/scsi/ufs/Kconfig | 12 + drivers/scsi/ufs/Makefile | 1 + drivers/scsi/ufs/ufs-renesas.c | 418 ++++++++++++++++++ drivers/scsi/ufs/ufshcd.c | 12 +- drivers/scsi/ufs/ufshcd.h | 12 + 9 files changed, 547 insertions(+), 3 deletions(-) create mode 100644 Documentation/devicetree/bindings/ufs/renesas,ufs.yaml create mode 100644 drivers/scsi/ufs/ufs-renesas.c -- 2.25.1