[PATCH 01/17] spacemit: k1: support multi-board infrastructure
Heinrich Schuchardt
xypron.glpk at gmx.de
Fri Jan 23 11:27:49 CET 2026
On 1/17/26 20:01, Raymond Mao wrote:
> From: Raymond Mao <raymond.mao at riscstar.com>
>
> Restructure K1 SoC support to handle multiple boards through a single
> configuration:
>
> 1. Rename bananapi-f3_defconfig to k1_defconfig.
> 2. Move all K1 board files to k1 directory.
>
> Eliminates the need for board-specific defconfigs while maintaining
> hardware compatibility.
>
> Signed-off-by: Raymond Mao <raymond.mao at riscstar.com>
> ---
> arch/riscv/Kconfig | 10 ++++++----
> arch/riscv/cpu/k1/Kconfig | 4 ++++
> board/spacemit/{bananapi-f3 => k1}/Kconfig | 11 ++++++++---
> board/spacemit/{bananapi-f3 => k1}/MAINTAINERS | 4 ++--
> board/spacemit/{bananapi-f3 => k1}/Makefile | 0
> board/spacemit/{bananapi-f3 => k1}/board.c | 0
> configs/{bananapi-f3_defconfig => k1_defconfig} | 3 ++-
> include/configs/{bananapi-f3.h => k1.h} | 0
> 8 files changed, 22 insertions(+), 10 deletions(-)
> rename board/spacemit/{bananapi-f3 => k1}/Kconfig (63%)
> rename board/spacemit/{bananapi-f3 => k1}/MAINTAINERS (61%)
> rename board/spacemit/{bananapi-f3 => k1}/Makefile (100%)
> rename board/spacemit/{bananapi-f3 => k1}/board.c (100%)
> rename configs/{bananapi-f3_defconfig => k1_defconfig} (97%)
> rename include/configs/{bananapi-f3.h => k1.h} (100%)
This changes in this patch look ok.
But please, update doc/board/spacemit/bananapi-f3.rst to point to the
new defconfig.
Best regards
Heinrich
>
> diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
> index 79867656b15..ac50c1d7234 100644
> --- a/arch/riscv/Kconfig
> +++ b/arch/riscv/Kconfig
> @@ -8,15 +8,17 @@ choice
> prompt "Target select"
> optional
>
> +config ARCH_K1
> + bool "Spacemit K1 Architecture"
> + help
> + This enables support for Spacemit K1 SoC family.
> +
> config TARGET_ANDES_AE350
> bool "Support Andes ae350"
>
> config TARGET_ANDES_VOYAGER
> bool "Support Andes Voyager Board"
>
> -config TARGET_BANANAPI_F3
> - bool "Support BananaPi F3 Board"
> -
> config TARGET_K230_CANMV
> bool "Support K230 CanMV Board"
>
> @@ -115,7 +117,7 @@ source "board/sifive/unmatched/Kconfig"
> source "board/sipeed/maix/Kconfig"
> source "board/sophgo/milkv_duo/Kconfig"
> source "board/sophgo/licheerv_nano/Kconfig"
> -source "board/spacemit/bananapi-f3/Kconfig"
> +source "board/spacemit/k1/Kconfig"
> source "board/starfive/visionfive2/Kconfig"
> source "board/thead/th1520_lpi4a/Kconfig"
> source "board/xilinx/mbv/Kconfig"
> diff --git a/arch/riscv/cpu/k1/Kconfig b/arch/riscv/cpu/k1/Kconfig
> index 14201df80f2..4b621158334 100644
> --- a/arch/riscv/cpu/k1/Kconfig
> +++ b/arch/riscv/cpu/k1/Kconfig
> @@ -2,6 +2,8 @@
> #
> # Copyright (C) 2024, Kongyang Liu <seashell11234455 at gmail.com>
>
> +if ARCH_K1
> +
> config SPACEMIT_K1
> bool
> select BINMAN
> @@ -17,3 +19,5 @@ config SPACEMIT_K1
> imply SPL_CPU
> imply SPL_OPENSBI
> imply SPL_LOAD_FIT
> +
> +endif
> diff --git a/board/spacemit/bananapi-f3/Kconfig b/board/spacemit/k1/Kconfig
> similarity index 63%
> rename from board/spacemit/bananapi-f3/Kconfig
> rename to board/spacemit/k1/Kconfig
> index f89fa9af2c7..9f9c806d00d 100644
> --- a/board/spacemit/bananapi-f3/Kconfig
> +++ b/board/spacemit/k1/Kconfig
> @@ -1,7 +1,7 @@
> -if TARGET_BANANAPI_F3
> +if ARCH_K1
>
> config SYS_BOARD
> - default "bananapi-f3"
> + default "k1"
>
> config SYS_VENDOR
> default "spacemit"
> @@ -10,7 +10,7 @@ config SYS_CPU
> default "k1"
>
> config SYS_CONFIG_NAME
> - default "bananapi-f3"
> + default "k1"
>
> config TEXT_BASE
> default 0x00200000
> @@ -22,4 +22,9 @@ config BOARD_SPECIFIC_OPTIONS
> def_bool y
> select SPACEMIT_K1
>
> +config TARGET_BANANAPI_F3
> + bool "Support BananaPi F3 Board"
> + help
> + BananaPi F3 board contains Spacemit K1 SoC.
> +
> endif
> diff --git a/board/spacemit/bananapi-f3/MAINTAINERS b/board/spacemit/k1/MAINTAINERS
> similarity index 61%
> rename from board/spacemit/bananapi-f3/MAINTAINERS
> rename to board/spacemit/k1/MAINTAINERS
> index 131bad03181..bd476c32719 100644
> --- a/board/spacemit/bananapi-f3/MAINTAINERS
> +++ b/board/spacemit/k1/MAINTAINERS
> @@ -1,6 +1,6 @@
> BananaPi F3
> M: Huan Zhou <pericycle.cc@@gmail.com>
> S: Maintained
> -F: board/spacemit/bananapi-f3/
> -F: configs/bananapi-f3_defconfig
> +F: board/spacemit/k1/
> +F: configs/k1_defconfig
> F: doc/board/spacemit/bananapi-f3.rst
> diff --git a/board/spacemit/bananapi-f3/Makefile b/board/spacemit/k1/Makefile
> similarity index 100%
> rename from board/spacemit/bananapi-f3/Makefile
> rename to board/spacemit/k1/Makefile
> diff --git a/board/spacemit/bananapi-f3/board.c b/board/spacemit/k1/board.c
> similarity index 100%
> rename from board/spacemit/bananapi-f3/board.c
> rename to board/spacemit/k1/board.c
> diff --git a/configs/bananapi-f3_defconfig b/configs/k1_defconfig
> similarity index 97%
> rename from configs/bananapi-f3_defconfig
> rename to configs/k1_defconfig
> index a726ce84775..0bdc3c800f0 100644
> --- a/configs/bananapi-f3_defconfig
> +++ b/configs/k1_defconfig
> @@ -6,9 +6,10 @@ CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x1000000
> CONFIG_DEFAULT_DEVICE_TREE="k1-bananapi-f3"
> CONFIG_SYS_BOOTM_LEN=0xa000000
> CONFIG_SYS_LOAD_ADDR=0x200000
> -CONFIG_TARGET_BANANAPI_F3=y
> CONFIG_ARCH_RV64I=y
> CONFIG_RISCV_SMODE=y
> +CONFIG_ARCH_K1=y
> +CONFIG_TARGET_BANANAPI_F3=y
> CONFIG_FIT=y
> CONFIG_SUPPORT_RAW_INITRD=y
> CONFIG_OF_BOARD_SETUP=y
> diff --git a/include/configs/bananapi-f3.h b/include/configs/k1.h
> similarity index 100%
> rename from include/configs/bananapi-f3.h
> rename to include/configs/k1.h
More information about the U-Boot
mailing list