[PATCH v2 00/16] Add board support for Spacemit K1 SoC in SPL
Raymond Mao
raymondmaoca at gmail.com
Wed Feb 25 15:53:20 CET 2026
Hi all,
Any further comments on this series?
Raymond
On Tue, Feb 10, 2026 at 10:15 AM Raymond Mao <raymondmaoca at gmail.com> wrote:
>
> From: Raymond Mao <raymond.mao at riscstar.com>
>
> This patch series introduces full support for the k1 SoC in SPL for
> multiple boards.
>
> The series enables the board by:
> 1. Adding the base board definition with device tree.
> 2. Bringing up essential clock sources and tree.
> 3. Initializing I2C buses for peripheral communication.
> 4. Integrating the PMIC driver for power management.
> 5. Adding regulator drivers for voltage domain control.
>
> Change in v2:
> - Use read_poll_timeout() in k1 i2c driver.
> - Abandon to parse offset and size from Kconfig & Makefile for binman.
> - Abandon to attach firmware image into the patch set.
> - Update the related document and some minor changes.
>
> Junhui Liu (1):
> clk: spacemit: Add support for K1 SoC
>
> Raymond Mao (15):
> spacemit: k1: support multi-board infrastructure
> spacemit: k1: enable SPL with debug UART
> configs: k1: enable early timer support
> reset: k1: add SPL support and enable TWSI8 reset
> dt-bindings: clock: import k1-syscon from upstream
> dts: k1: import dts file from upstream folder
> dts: k1: enable clocks in SPL
> board: k1: initialize clock and serial devices in SPL
> configs: k1: add default option for clock driver in SPL
> i2c: k1: add I2C driver support
> spacemit: k1: add TLV EEPROM support in SPL
> spacemit: k1: Add DDR firmware support to SPL
> power: pmic: add support for Spacemit P1 PMIC
> power: regulator: add support for Spacemit P1 SoC
> board: k1: enable pmic in spl
>
> arch/riscv/Kconfig | 10 +-
> arch/riscv/cpu/k1/Kconfig | 6 +
> arch/riscv/dts/Makefile | 1 +
> arch/riscv/dts/k1-spl.dts | 228 +++
> arch/riscv/dts/k1.dtsi | 666 +++++-
> board/spacemit/bananapi-f3/MAINTAINERS | 6 -
> board/spacemit/bananapi-f3/Makefile | 5 -
> board/spacemit/{bananapi-f3 => k1}/Kconfig | 11 +-
> board/spacemit/k1/MAINTAINERS | 11 +
> board/spacemit/k1/Makefile | 27 +
> board/spacemit/{bananapi-f3 => k1}/board.c | 0
> board/spacemit/k1/spl.c | 347 ++++
> board/spacemit/k1/tlv_codes.h | 22 +
> configs/bananapi-f3_defconfig | 24 -
> configs/spacemit_k1_defconfig | 76 +
> doc/board/spacemit/bananapi-f3.rst | 2 +-
> drivers/clk/Kconfig | 5 +-
> drivers/clk/Makefile | 1 +
> drivers/clk/spacemit/Kconfig | 31 +
> drivers/clk/spacemit/Makefile | 7 +
> drivers/clk/spacemit/clk-k1.c | 1795 +++++++++++++++++
> drivers/clk/spacemit/clk_common.h | 79 +
> drivers/clk/spacemit/clk_ddn.c | 93 +
> drivers/clk/spacemit/clk_ddn.h | 53 +
> drivers/clk/spacemit/clk_mix.c | 403 ++++
> drivers/clk/spacemit/clk_mix.h | 224 ++
> drivers/clk/spacemit/clk_pll.c | 157 ++
> drivers/clk/spacemit/clk_pll.h | 81 +
> drivers/i2c/Kconfig | 7 +
> drivers/i2c/Makefile | 1 +
> drivers/i2c/k1_i2c.c | 516 +++++
> drivers/i2c/k1_i2c.h | 69 +
> drivers/power/pmic/Kconfig | 17 +
> drivers/power/pmic/Makefile | 1 +
> drivers/power/pmic/pmic_spacemit_p1.c | 94 +
> drivers/power/regulator/Kconfig | 15 +
> drivers/power/regulator/Makefile | 1 +
> .../power/regulator/spacemit_p1_regulator.c | 460 +++++
> drivers/reset/Kconfig | 7 +
> drivers/reset/Makefile | 2 +-
> drivers/reset/reset-spacemit-k1.c | 4 -
> include/configs/bananapi-f3.h | 13 -
> include/configs/k1.h | 19 +
> .../dt-bindings/clock/spacemit,k1-syscon.h | 253 +++
> include/power/spacemit_p1.h | 163 ++
> include/soc/spacemit/k1-syscon.h | 149 ++
> 46 files changed, 5997 insertions(+), 165 deletions(-)
> create mode 100644 arch/riscv/dts/k1-spl.dts
> delete mode 100644 board/spacemit/bananapi-f3/MAINTAINERS
> delete mode 100644 board/spacemit/bananapi-f3/Makefile
> rename board/spacemit/{bananapi-f3 => k1}/Kconfig (63%)
> create mode 100644 board/spacemit/k1/MAINTAINERS
> create mode 100644 board/spacemit/k1/Makefile
> rename board/spacemit/{bananapi-f3 => k1}/board.c (100%)
> create mode 100644 board/spacemit/k1/spl.c
> create mode 100644 board/spacemit/k1/tlv_codes.h
> delete mode 100644 configs/bananapi-f3_defconfig
> create mode 100644 configs/spacemit_k1_defconfig
> create mode 100644 drivers/clk/spacemit/Kconfig
> create mode 100644 drivers/clk/spacemit/Makefile
> create mode 100644 drivers/clk/spacemit/clk-k1.c
> create mode 100644 drivers/clk/spacemit/clk_common.h
> create mode 100644 drivers/clk/spacemit/clk_ddn.c
> create mode 100644 drivers/clk/spacemit/clk_ddn.h
> create mode 100644 drivers/clk/spacemit/clk_mix.c
> create mode 100644 drivers/clk/spacemit/clk_mix.h
> create mode 100644 drivers/clk/spacemit/clk_pll.c
> create mode 100644 drivers/clk/spacemit/clk_pll.h
> create mode 100644 drivers/i2c/k1_i2c.c
> create mode 100644 drivers/i2c/k1_i2c.h
> create mode 100644 drivers/power/pmic/pmic_spacemit_p1.c
> create mode 100644 drivers/power/regulator/spacemit_p1_regulator.c
> delete mode 100644 include/configs/bananapi-f3.h
> create mode 100644 include/configs/k1.h
> create mode 100644 include/dt-bindings/clock/spacemit,k1-syscon.h
> create mode 100644 include/power/spacemit_p1.h
> create mode 100644 include/soc/spacemit/k1-syscon.h
>
> --
> 2.25.1
>
More information about the U-Boot
mailing list