From: Raymond Mao <[email protected]>

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 <[email protected]>
---
 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%)

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 <[email protected]>
 
+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
-- 
2.25.1

Reply via email to