refactor(ulp): Allow both ULP-FSM and ULP-RISCV to enable at build time

Updated kconfig option type and other supporting changes in build system
to allow enabling both ULP FSM and ULP RISCV simultaneously. Users can
choose at run time which one to initialize and use.
NOTE: Both ULP FSM and ULP RISCV can't be used simultaneously at run
time because they share some common hardware like RTC slow memory space.

Closes https://github.com/espressif/esp-idf/issues/12999
This commit is contained in:
Meet Patel
2026-03-15 14:01:30 +05:30
parent 3c499632c7
commit a3f167f1c4
6 changed files with 154 additions and 60 deletions
+2 -1
View File
@@ -40,8 +40,9 @@ if(CONFIG_ULP_COPROC_TYPE_FSM OR CONFIG_ULP_COPROC_TYPE_RISCV)
list(APPEND srcs
"ulp_fsm/ulp.c"
"ulp_fsm/ulp_macro.c")
endif()
elseif(CONFIG_ULP_COPROC_TYPE_RISCV)
if(CONFIG_ULP_COPROC_TYPE_RISCV)
list(APPEND srcs
"ulp_riscv/ulp_riscv.c"
"ulp_riscv/ulp_riscv_lock.c"