#
# boards/risc-v/ch32v307/ch32v307-evt/configs/nsh/defconfig
#
# Minimal NuttX configuration for CH32V307V-EVT-R1.
# Boots to NSH shell on USART1 (115200 8N1) via WCH-Link serial.
#

# Architecture
CONFIG_ARCH="risc-v"
CONFIG_ARCH_CHIP="ch32v307"
CONFIG_ARCH_CHIP_CH32V307=y
CONFIG_ARCH_CHIP_CH32V307VCT6=y
CONFIG_ARCH_RISCV=y
CONFIG_ARCH_RV32=y
CONFIG_ARCH_FPU=y

# Board
CONFIG_ARCH_BOARD="ch32v307-evt"
CONFIG_ARCH_BOARD_CH32V307_EVT=y

# Clock
CONFIG_CH32V307_SYSCLK_144MHZ=y

# UART
CONFIG_CH32V307_USART1=y

# System
CONFIG_RR_INTERVAL=200
CONFIG_SCHED_WAITPID=y
CONFIG_START_YEAR=2026
CONFIG_START_MONTH=2
CONFIG_START_DAY=12
CONFIG_USEC_PER_TICK=10000
CONFIG_INIT_ENTRYPOINT="nsh_main"

# Memory
CONFIG_RAM_START=0x20000000
CONFIG_RAM_SIZE=65536
CONFIG_ARCH_STACKDUMP=y
CONFIG_IDLETHREAD_STACKSIZE=2048

# Serial console
CONFIG_DEV_CONSOLE=y
CONFIG_SERIAL_CONSOLE=y
CONFIG_UART_BAUD=115200
CONFIG_USART1_SERIAL_CONSOLE=y
CONFIG_USART1_BAUD=115200
CONFIG_USART1_BITS=8
CONFIG_USART1_PARITY=0
CONFIG_USART1_2STOP=0

# NSH
CONFIG_NSH_ARCHINIT=y
CONFIG_NSH_BUILTIN_APPS=y
CONFIG_NSH_READLINE=y
CONFIG_SYSTEM_NSH=y

# File system (minimal, procfs for debugging)
CONFIG_FS_PROCFS=y

# C library
CONFIG_LIBC_FLOATINGPOINT=y

# Debug (enable during bringup, disable for production)
CONFIG_DEBUG_FEATURES=y
CONFIG_DEBUG_ERROR=y
CONFIG_DEBUG_WARN=y
CONFIG_DEBUG_INFO=y
CONFIG_ARCH_CHIP="ch32v307"
CONFIG_ARCH_BOARD="ch32v307-evt"
CONFIG_ARCH_RV_ISA_M=y
CONFIG_ARCH_RV_ISA_A=y
CONFIG_ARCH_RV_ISA_C=y
CONFIG_LIBM=y
