This series adds MMC support for the SpacemiT K1: an SDHCI platform driver, the SD card device-tree overlay, defconfig options, and SPL boot-device selection from the SoC strap/config registers. The SDHCI driver is usable in both SPL and U-Boot proper.
A flashing guide (doc/board/spacemit/k1-mmc.rst) describes how to write images to eMMC. --- Changes in v8: - doc: Remove SD part. - Link to v7: https://patch.msgid.link/[email protected] Changes in v7: - spl: Avoid to load product name from ENV. - spl: Fix DTB matching. - pinctrl: Simply clrsetbits_le32() on pull-up/pull-down configuration. - pinctrl: Remove the dependency on SYSCON. - Link to v6: https://patch.msgid.link/[email protected] Changes in v6: - pinctrl: Fix drive strength configuration. - pinctrl: Fix pull-up/pull-down configuration. - pinctrl: Use dev_read_phandle_with_args() to fetch "spacemit,syscon" instead. - spacemit: rebase on latest upstream branch. - Link to v5: https://patch.msgid.link/[email protected] Changes in v5: - mmc: Split CMD23 support out. - mmc: Use read_poll_timeout(). - mmc: Set pinctrl state based on selected timing mode. - mmc: Remove the condition based on quirks. - pinctrl: Fix power source argument. - dts: Add missing power source on mmc pins. - Link to v4: https://patch.msgid.link/[email protected] Changes in v4: - mmc: Add CMD23 for write. - mmc: Fix CMD23 only for CMD18. - mmc: Update bulk release operations on reset and clocks for spacemit platform driver. - MAINTAINER: update the maintainer of Spacemit K1. - Link to v3: https://patch.msgid.link/[email protected] Changes in v3: - pinctrl: Fix "fast" by "uhs". - pinctrl: Add syscon dependency. - mmc: Fix quick by capability. - doc: Add SD boot support. - Link to v2: https://lore.kernel.org/u-boot/[email protected]/T/#m2aba875a2696a7bb9b704618d22ae2fd7f7f5acc Changes in v2: - cmd: drop patches on eminfo & tlv_eeprom. - configs: Enable ADMA and SYSCON support. - dts: Use vmmc-supply as vqmmc-supply on the SD card node. - mmc: k1: Enable ADMA mode support, use CMD23 for multi-block read/write, correct pinctrl state from "fast" to "uhs". - mmc: sdhci: Add new quirk patch to enable CMD23 for multi-block transfers. - pinctrl: k1: Add new IO power domain configuration support for dual-voltage GPIO banks. - spacemit: k1: Use FIELD_GET() to parse boot strap mode. - Link to v1: https://lore.kernel.org/u-boot/[email protected]/ To: [email protected] To: [email protected] To: [email protected] Cc: Huan Zhou <[email protected]> Cc: Tom Rini <[email protected]> Cc: Tim Ouyang <[email protected]> Cc: Leo Liang <[email protected]> Cc: Raymond Mao <[email protected]> Cc: Peng Fan <[email protected]> Cc: Jaehoon Chung <[email protected]> Cc: Bhimeswararao Matsa <[email protected]> Cc: Tanmay Kathpalia <[email protected]> Cc: Kaustabh Chakraborty <[email protected]> Cc: Han Xu <[email protected]> Cc: Yanir Levin <[email protected]> Cc: Christoph Stoidner <[email protected]> Cc: Balsundar Ponnusamy <[email protected]> Cc: Daniel Palmer <[email protected]> Cc: Anshul Dalal <[email protected]> Cc: Bastien Curutchet <[email protected]> Cc: Angelo Dureghello <[email protected]> Cc: Johan Jonker <[email protected]> Cc: Sam Protsenko <[email protected]> Cc: Guodong Xu <[email protected]> Cc: Yao Zi <[email protected]> Cc: Rick Chen <[email protected]> Cc: Leo <[email protected]> Signed-off-by: Eric Chung <[email protected]> --- Eric Chung (11): spacemit: k1: select boot device via config registers pinctrl: k1: fix drive strength configuration pinctrl: k1: fix pull-up/pull-down configuration pinctrl: k1: add IO power domain configuration support mmc: k1: add sdhci platform driver dts: k1: add SD card support in u-boot overlay configs: k1: enable SD and eMMC support MAINTAINER: update Spacemit K1 entry doc: spacemit: flash on K1 SoC based boards config: k1: enable ENV support for eMMC spacemit: k1: fix product name detection and DTB matching in SPL arch/riscv/dts/k1-bananapi-f3-u-boot.dtsi | 91 +++- arch/riscv/dts/k1-musepi-pro-u-boot.dtsi | 86 +++- board/spacemit/k1/MAINTAINERS | 5 +- board/spacemit/k1/spl.c | 121 +++++- configs/spacemit_k1_defconfig | 27 +- doc/board/spacemit/index.rst | 1 + doc/board/spacemit/k1-mmc.rst | 167 ++++++++ drivers/mmc/Kconfig | 7 + drivers/mmc/Makefile | 1 + drivers/mmc/spacemit_sdhci.c | 673 ++++++++++++++++++++++++++++++ drivers/pinctrl/spacemit/pinctrl-k1.c | 114 ++++- 11 files changed, 1256 insertions(+), 37 deletions(-) --- base-commit: 616c3d79f01cf9204e38738857c4647a730dcb3b change-id: 20260629-m4-98e01659fefb Best regards, -- Eric Chung <[email protected]>
