This series improves U-Boot support for SpacemiT K1-based boards by consolidating common device tree configuration and enabling GPIO and pinctrl support during SPL initialization.
It also improves the SpacemiT SDHCI driver's voltage-switching diagnostics and handling of missing pinctrl states, making SD card initialization more robust across board configurations. This series builds on the upstream changes proposed here: [1] https://lore.kernel.org/all/[email protected]/ The SpacemiT SPL uses the P1 PMIC to initialize the regulator framework and enable the SD card and eMMC interfaces. Since boards may use different device tree node names for vmmc-supply and vqmmc-supply, the regulator configuration must be handled appropriately for each board. This series used above series to marks the nodes required during early initialization with bootph-pre-ram, including SoC clocks, UART, boot media, I2C buses, EEPROM, PMIC rails, and SPI NOR flash. This ensures that the required devices are available during SPL execution. Additionally, the series moves the I2C8-related nodes required for regulator configuration into the respective board device trees. This avoids duplicated board-specific settings in the shared spacemit-k1-u-boot.dtsi and keeps the common K1 configuration minimal and easier to maintain. Tested on the Banana Pi BPI-F3 board. Thanks, Anand Anand Moon (6): riscv: dts: spacemit: Clean Up K1 U-Boot Device Tree for SPL Initialization mmc: spacemit_sdhci: Improve voltage switching diagnostics mmc: spacemit_sdhci: Handle missing pinctrl states gpio: spacemit: Add SPL support for K1 GPIO driver pinctrl: spacemit: Add SPL support for K1 pinctrl driver configs: spacemit_k1: Enable SPL GPIO and pinctrl support arch/riscv/dts/k1-bananapi-f3-u-boot.dtsi | 121 ------------------ arch/riscv/dts/spacemit-k1-binman.dtsi | 29 +++++ ...ro-u-boot.dtsi => spacemit-k1-u-boot.dtsi} | 80 +++++------- configs/spacemit_k1_defconfig | 20 ++- drivers/gpio/Kconfig | 7 + drivers/mmc/spacemit_sdhci.c | 118 ++++++++++++----- drivers/pinctrl/spacemit/Kconfig | 8 ++ 7 files changed, 174 insertions(+), 209 deletions(-) delete mode 100644 arch/riscv/dts/k1-bananapi-f3-u-boot.dtsi create mode 100644 arch/riscv/dts/spacemit-k1-binman.dtsi rename arch/riscv/dts/{k1-musepi-pro-u-boot.dtsi => spacemit-k1-u-boot.dtsi} (66%) base-commit: 03e45557e1f38a39a0c80fe30483130ff376cf92 -- 2.56.0
