[PATCH 00/16] Add PIN and SPI support for Spacemit K1

Raymond Mao raymondmaoca at gmail.com
Wed Apr 22 16:30:56 CEST 2026


From: Raymond Mao <raymond.mao at riscstar.com>

Add pinctrl, GPIO, and SPI NOR flash support for the Spacemit K1 SoC
and enable U-Boot to boot on K1-based boards.

Notes:
Tested on the Muse Pi Pro.
BananaPi F3 is untestable due to missing SPI NOR flash.

Prerequisite:
-------------
This series depend on another pending-to-merge series [1].

[1] [PATCH v3 00/16] Add board support for Spacemit K1 SoC in SPL
https://lore.kernel.org/u-boot/20260325223232.1553212-1-raymondmaoca@gmail.com/

Raymond Mao (16):
  gpio: add gpio driver for Spacemit K1 SoC
  pinctrl: add pinctrl driver for Spacemit K1 SoC
  dts: k1: fix gpio ranges
  dts: k1: import pinctrl dts file from upstream folder
  dts: k1: remove embedded subnode in pin configs
  configs: k1: enable pinctrl and gpio
  mtd: spi: select SPL_SPI_FLASH_TINY in SPL stage
  mtd: spi: enable spi_nor_remove() in soft reset config
  spi: fsl: add support for Spacemit K1 SoC
  dts: k1: add QSPI controller support
  board: k1: enable SPI NOR flash in SPL
  riscv: binman: Always set default configuration in FIT image
  spacemit: k1: append RISCV_MMODE_TIMERBASE
  spacemit: k1: Add multiple device tree support
  spacemit: k1: Add support for mmc regulator initialization
  spacemit: k1: rename device tree prefix from "k1-" to "k1_"

 arch/riscv/dts/Makefile                   |   2 +-
 arch/riscv/dts/binman.dtsi                |   2 -
 arch/riscv/dts/k1-bananapi-f3.dts         |  28 --
 arch/riscv/dts/k1-pinctrl.dtsi            |  19 -
 arch/riscv/dts/k1.dtsi                    |  21 +-
 arch/riscv/dts/k1_bananapi-f3.dts         | 189 ++++++++
 arch/riscv/dts/k1_muse-pi-pro.dts         | 199 ++++++++
 arch/riscv/dts/k1_pinctrl.dtsi            |  79 ++++
 arch/riscv/dts/{k1-spl.dts => k1_spl.dts} |  62 ++-
 board/spacemit/k1/MAINTAINERS             |   2 +
 board/spacemit/k1/spl.c                   |  56 ++-
 configs/spacemit_k1_defconfig             |  37 +-
 drivers/gpio/Kconfig                      |   8 +
 drivers/gpio/Makefile                     |   1 +
 drivers/gpio/spacemit_gpio.c              | 217 +++++++++
 drivers/mtd/spi/Makefile                  |   5 +-
 drivers/mtd/spi/sf_probe.c                |   8 +-
 drivers/pinctrl/Kconfig                   |   1 +
 drivers/pinctrl/Makefile                  |   1 +
 drivers/pinctrl/spacemit/Kconfig          |   9 +
 drivers/pinctrl/spacemit/Makefile         |   2 +
 drivers/pinctrl/spacemit/pinctrl-k1.c     | 550 ++++++++++++++++++++++
 drivers/spi/fsl_qspi.c                    |   9 +
 include/configs/k1.h                      |  12 +-
 24 files changed, 1422 insertions(+), 97 deletions(-)
 delete mode 100644 arch/riscv/dts/k1-bananapi-f3.dts
 delete mode 100644 arch/riscv/dts/k1-pinctrl.dtsi
 create mode 100644 arch/riscv/dts/k1_bananapi-f3.dts
 create mode 100644 arch/riscv/dts/k1_muse-pi-pro.dts
 create mode 100644 arch/riscv/dts/k1_pinctrl.dtsi
 rename arch/riscv/dts/{k1-spl.dts => k1_spl.dts} (88%)
 create mode 100644 drivers/gpio/spacemit_gpio.c
 create mode 100644 drivers/pinctrl/spacemit/Kconfig
 create mode 100644 drivers/pinctrl/spacemit/Makefile
 create mode 100644 drivers/pinctrl/spacemit/pinctrl-k1.c

-- 
2.25.1



More information about the U-Boot mailing list