[PATCH 01/17] spacemit: k1: support multi-board infrastructure
Heinrich Schuchardt
xypron.glpk at gmx.de
Fri Jan 23 11:46:30 CET 2026
On 1/23/26 11:27, Heinrich Schuchardt wrote:
> 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 ++-
I would suggest add the vendor name and call this spacemit_k1_defconfig
to avoid ambiguity.
Best regards
Heinrich
>> 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