mainmenu "RT-Thread Project Configuration"

BSP_DIR := .

RTT_DIR := ../../..

PKGS_DIR := packages

source "$(RTT_DIR)/Kconfig"
osource "$PKGS_DIR/Kconfig"
rsource "board/Kconfig"

config BSP_USING_CV18XX
    bool
    select ARCH_RISCV64
    select ARCH_RISCV_FPU_D
    select ARCH_USING_RISCV_COMMON64
    select RT_USING_SYSTEM_WORKQUEUE
    select RT_USING_COMPONENTS_INIT
    select RT_USING_USER_MAIN
    select RT_USING_CACHE
    select ARCH_MM_MMU
    select RT_USING_DEVICE_OPS
    select ARCH_REMAP_KERNEL if RT_USING_SMART
    default y

config C906_PLIC_PHY_ADDR
    hex
    default 0x70000000

config IRQ_MAX_NR
    int
    default 101

config BSP_GPIO_IRQ_BASE
    int
    default 60

config BSP_SYS_GPIO_IRQ_BASE
    int
    default 70

config __STACKSIZE__
    int "stack size for interrupt"
    default 4096

config SOC_TYPE_CV180X
    bool
    default n

config SOC_TYPE_SG2000
    bool
    default n

config SOC_TYPE_SG2002
    bool
    default n

choice BOARD_TYPE_MILKV_DUO_SEL
    prompt "Board Type"
    default BOARD_TYPE_MILKV_DUO256M

    config BOARD_TYPE_MILKV_DUO
        select SOC_TYPE_CV180X
        bool "milkv-duo"

    config BOARD_TYPE_MILKV_DUO256M
        select SOC_TYPE_SG2002
        bool "milkv-duo256m"

    config BOARD_TYPE_MILKV_DUOS
        select SOC_TYPE_SG2000
        bool "milkv-duos"

endchoice

choice BSP_ROOTFS_TYPE
    prompt "rootfs type"
    default BSP_ROOTFS_TYPE_DISKFS

    config BSP_ROOTFS_TYPE_DISKFS
        bool "Disk FileSystems, e.g. ext4, fat ..."
        select RT_USING_DFS_ROMFS

    config BSP_ROOTFS_TYPE_CROMFS
        bool "CROMFS"
        select RT_USING_DFS_CROMFS
        select PKG_USING_ZLIB
        select PKG_USING_ZLIB_LATEST_VERSION
endchoice
