boards: espressif: esp32c6: Add LP Core board support
Add ULP Coprocessor board support for C6. This requires a change in the board qualifier depending on the build target. Update esp32c6 overlay and configuration files to the proper name. Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
This commit is contained in:
parent
0b9e4e013a
commit
c6f84d0ba2
46 changed files with 170 additions and 33 deletions
|
@ -22,6 +22,9 @@ set(arduino_uno_r4_minima_DEPRECATED
|
||||||
set(arduino_uno_r4_wifi_DEPRECATED
|
set(arduino_uno_r4_wifi_DEPRECATED
|
||||||
arduino_uno_r4@wifi
|
arduino_uno_r4@wifi
|
||||||
)
|
)
|
||||||
|
set(esp32c6_devkitc_DEPRECATED
|
||||||
|
esp32c6_devkitc/esp32c6/hpcore
|
||||||
|
)
|
||||||
set(qemu_xtensa_DEPRECATED
|
set(qemu_xtensa_DEPRECATED
|
||||||
qemu_xtensa/dc233c
|
qemu_xtensa/dc233c
|
||||||
)
|
)
|
||||||
|
|
|
@ -3,4 +3,5 @@
|
||||||
|
|
||||||
config HEAP_MEM_POOL_ADD_SIZE_BOARD
|
config HEAP_MEM_POOL_ADD_SIZE_BOARD
|
||||||
int
|
int
|
||||||
default 4096
|
default 4096 if BOARD_ESP32C6_DEVKITC_ESP32C6_HPCORE
|
||||||
|
default 256 if BOARD_ESP32C6_DEVKITC_ESP32C6_LPCORE
|
||||||
|
|
|
@ -5,3 +5,5 @@
|
||||||
|
|
||||||
config BOARD_ESP32C6_DEVKITC
|
config BOARD_ESP32C6_DEVKITC
|
||||||
select SOC_ESP32_C6_WROOM_1U_N8
|
select SOC_ESP32_C6_WROOM_1U_N8
|
||||||
|
select SOC_ESP32C6_HPCORE if BOARD_ESP32C6_DEVKITC_ESP32C6_HPCORE
|
||||||
|
select SOC_ESP32C6_LPCORE if BOARD_ESP32C6_DEVKITC_ESP32C6_LPCORE
|
||||||
|
|
|
@ -147,7 +147,7 @@ To build the sample application using sysbuild use the command:
|
||||||
.. zephyr-app-commands::
|
.. zephyr-app-commands::
|
||||||
:tool: west
|
:tool: west
|
||||||
:zephyr-app: samples/hello_world
|
:zephyr-app: samples/hello_world
|
||||||
:board: esp32c6_devkitc
|
:board: esp32c6_devkitc/esp32c6/hpcore
|
||||||
:goals: build
|
:goals: build
|
||||||
:west-args: --sysbuild
|
:west-args: --sysbuild
|
||||||
:compact:
|
:compact:
|
||||||
|
@ -196,7 +196,7 @@ Build and flash applications as usual (see :ref:`build_an_application` and
|
||||||
|
|
||||||
.. zephyr-app-commands::
|
.. zephyr-app-commands::
|
||||||
:zephyr-app: samples/hello_world
|
:zephyr-app: samples/hello_world
|
||||||
:board: esp32c6_devkitc
|
:board: esp32c6_devkitc/esp32c6/hpcore
|
||||||
:goals: build
|
:goals: build
|
||||||
|
|
||||||
The usual ``flash`` target will work with the ``esp32c6_devkitc`` board
|
The usual ``flash`` target will work with the ``esp32c6_devkitc`` board
|
||||||
|
@ -205,7 +205,7 @@ application.
|
||||||
|
|
||||||
.. zephyr-app-commands::
|
.. zephyr-app-commands::
|
||||||
:zephyr-app: samples/hello_world
|
:zephyr-app: samples/hello_world
|
||||||
:board: esp32c6_devkitc
|
:board: esp32c6_devkitc/esp32c6/hpcore
|
||||||
:goals: flash
|
:goals: flash
|
||||||
|
|
||||||
Open the serial monitor using the following command:
|
Open the serial monitor using the following command:
|
||||||
|
@ -220,7 +220,7 @@ message in the monitor:
|
||||||
.. code-block:: console
|
.. code-block:: console
|
||||||
|
|
||||||
***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx *****
|
***** Booting Zephyr OS vx.x.x-xxx-gxxxxxxxxxxxx *****
|
||||||
Hello World! esp32c6_devkitc
|
Hello World! esp32c6_devkitc/esp32c6/hpcore
|
||||||
|
|
||||||
Debugging
|
Debugging
|
||||||
*********
|
*********
|
||||||
|
@ -237,7 +237,7 @@ Here is an example for building the :zephyr:code-sample:`hello_world` applicatio
|
||||||
|
|
||||||
.. zephyr-app-commands::
|
.. zephyr-app-commands::
|
||||||
:zephyr-app: samples/hello_world
|
:zephyr-app: samples/hello_world
|
||||||
:board: esp32c6_devkitc
|
:board: esp32c6_devkitc/esp32c6/hpcore
|
||||||
:goals: build flash
|
:goals: build flash
|
||||||
:gen-args: -DOPENOCD=<path/to/bin/openocd> -DOPENOCD_DEFAULT_PATH=<path/to/openocd/share/openocd/scripts>
|
:gen-args: -DOPENOCD=<path/to/bin/openocd> -DOPENOCD_DEFAULT_PATH=<path/to/openocd/share/openocd/scripts>
|
||||||
|
|
||||||
|
@ -245,9 +245,32 @@ You can debug an application in the usual way. Here is an example for the :zephy
|
||||||
|
|
||||||
.. zephyr-app-commands::
|
.. zephyr-app-commands::
|
||||||
:zephyr-app: samples/hello_world
|
:zephyr-app: samples/hello_world
|
||||||
:board: esp32c6_devkitc
|
:board: esp32c6_devkitc/esp32c6/hpcore
|
||||||
:goals: debug
|
:goals: debug
|
||||||
|
|
||||||
|
Low-Power CPU (LP CORE)
|
||||||
|
***********************
|
||||||
|
|
||||||
|
The ESP32-C6 SoC has two RISC-V cores: the High-Performance Core (HP CORE) and the Low-Power Core (LP CORE).
|
||||||
|
The LP Core features ultra low power consumption, an interrupt controller, a debug module and a system bus
|
||||||
|
interface for memory and peripheral access.
|
||||||
|
|
||||||
|
The LP Core is in sleep mode by default. It has two application scenarios:
|
||||||
|
|
||||||
|
- Power insensitive scenario: When the High-Performance CPU (HP Core) is active, the LP Core can assist the HP CPU with some speed and efficiency-insensitive controls and computations.
|
||||||
|
- Power sensitive scenario: When the HP CPU is in the power-down state to save power, the LP Core can be woken up to handle some external wake-up events.
|
||||||
|
|
||||||
|
For more information, check the datasheet at `ESP32-C6 Datasheet`_ or the technical reference
|
||||||
|
manual at `ESP32-C6 Technical Reference Manual`_.
|
||||||
|
|
||||||
|
The LP Core support is fully integrated with :ref:`sysbuild`. The user can enable the LP Core by adding
|
||||||
|
the following configuration to the project:
|
||||||
|
|
||||||
|
.. code:: cfg
|
||||||
|
|
||||||
|
CONFIG_ULP_COPROC_ENABLED=y
|
||||||
|
|
||||||
|
See :zephyr:code-sample-category:`lp-core` folder as code reference.
|
||||||
|
|
||||||
References
|
References
|
||||||
**********
|
**********
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
#include <espressif/partitions_0x0_default.dtsi>
|
#include <espressif/partitions_0x0_default.dtsi>
|
||||||
|
|
||||||
/ {
|
/ {
|
||||||
model = "esp32c6_devkitc";
|
model = "esp32c6_devkitc HP Core";
|
||||||
compatible = "espressif,esp32c6";
|
compatible = "espressif,esp32c6";
|
||||||
|
|
||||||
chosen {
|
chosen {
|
|
@ -1,5 +1,5 @@
|
||||||
identifier: esp32c6_devkitc
|
identifier: esp32c6_devkitc/esp32c6/hpcore
|
||||||
name: ESP32-C6
|
name: ESP32-C6-DevKitC HP Core
|
||||||
vendor: espressif
|
vendor: espressif
|
||||||
type: mcu
|
type: mcu
|
||||||
arch: riscv
|
arch: riscv
|
19
boards/espressif/esp32c6_devkitc/esp32c6_devkitc_lpcore.dts
Normal file
19
boards/espressif/esp32c6_devkitc/esp32c6_devkitc_lpcore.dts
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: Apache-2.0
|
||||||
|
*/
|
||||||
|
/dts-v1/;
|
||||||
|
|
||||||
|
#include <espressif/esp32c6/esp32c6_lpcore_wroom_n4.dtsi>
|
||||||
|
#include <espressif/partitions_0x0_default.dtsi>
|
||||||
|
|
||||||
|
/ {
|
||||||
|
model = "Espressif ESP32C6-DevkitC LPCORE";
|
||||||
|
compatible = "espressif,esp32c6";
|
||||||
|
|
||||||
|
chosen {
|
||||||
|
zephyr,sram = &sramlp;
|
||||||
|
zephyr,code-partition = &slot0_lpcore_partition;
|
||||||
|
};
|
||||||
|
};
|
16
boards/espressif/esp32c6_devkitc/esp32c6_devkitc_lpcore.yaml
Normal file
16
boards/espressif/esp32c6_devkitc/esp32c6_devkitc_lpcore.yaml
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
identifier: esp32c6_devkitc/esp32c6/lpcore
|
||||||
|
name: ESP32-C6-DevKitC LP Core
|
||||||
|
type: mcu
|
||||||
|
arch: riscv
|
||||||
|
toolchain:
|
||||||
|
- zephyr
|
||||||
|
supported:
|
||||||
|
- cpu
|
||||||
|
testing:
|
||||||
|
only_tags:
|
||||||
|
- introduction
|
||||||
|
ignore_tags:
|
||||||
|
- kernel
|
||||||
|
- posix
|
||||||
|
- chre
|
||||||
|
vendor: espressif
|
|
@ -0,0 +1,15 @@
|
||||||
|
# Copyright (c) 2025 Espressif Systems (Shanghai) Co., Ltd.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
# Memory protection
|
||||||
|
CONFIG_THREAD_STACK_INFO=n
|
||||||
|
CONFIG_THREAD_CUSTOM_DATA=n
|
||||||
|
|
||||||
|
# Boot
|
||||||
|
CONFIG_BOOT_BANNER=n
|
||||||
|
|
||||||
|
# Console
|
||||||
|
CONFIG_PRINTK=n
|
||||||
|
|
||||||
|
# Build
|
||||||
|
CONFIG_SIZE_OPTIMIZATIONS=y
|
|
@ -70,6 +70,9 @@ Deprecated APIs and options
|
||||||
of a new ``arduino_uno_r4`` board with revisions (``arduino_uno_r4@minima`` and
|
of a new ``arduino_uno_r4`` board with revisions (``arduino_uno_r4@minima`` and
|
||||||
``arduino_uno_r4@wifi``).
|
``arduino_uno_r4@wifi``).
|
||||||
|
|
||||||
|
* ``esp32c6_devkitc`` board target has been deprecated and renamed to
|
||||||
|
``esp32c6_devkitc/esp32c6/hpcore``.
|
||||||
|
|
||||||
New APIs and options
|
New APIs and options
|
||||||
====================
|
====================
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
|
|
||||||
config ESP32_SYS_TIMER
|
config ESP32_SYS_TIMER
|
||||||
bool "ESP32 sys-timer support (ESP32Cx series)"
|
bool "ESP32 sys-timer support (ESP32Cx series)"
|
||||||
depends on SOC_SERIES_ESP32C2 || SOC_SERIES_ESP32C3 || SOC_SERIES_ESP32C6
|
depends on SOC_SERIES_ESP32C2 || SOC_SERIES_ESP32C3 || (SOC_SERIES_ESP32C6 && !SOC_ESP32C6_LPCORE)
|
||||||
default y
|
default y
|
||||||
select TICKLESS_CAPABLE
|
select TICKLESS_CAPABLE
|
||||||
select TIMER_HAS_64BIT_CYCLE_COUNTER
|
select TIMER_HAS_64BIT_CYCLE_COUNTER
|
||||||
|
|
|
@ -22,3 +22,4 @@ tests:
|
||||||
- intel_ish_5_4_1
|
- intel_ish_5_4_1
|
||||||
- intel_ish_5_6_0
|
- intel_ish_5_6_0
|
||||||
- intel_ish_5_8_0
|
- intel_ish_5_8_0
|
||||||
|
- esp32c6_devkitc/esp32c6/lpcore
|
||||||
|
|
|
@ -90,7 +90,7 @@ tests:
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
- esp8684_devkitm
|
- esp8684_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
sample.net.wifi.siwx91x_offloaded:
|
sample.net.wifi.siwx91x_offloaded:
|
||||||
extra_args:
|
extra_args:
|
||||||
- CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_OFFLOAD=y
|
- CONFIG_WIFI_SILABS_SIWX91X_NET_STACK_OFFLOAD=y
|
||||||
|
|
|
@ -13,14 +13,14 @@ tests:
|
||||||
- esp32s2_devkitc
|
- esp32s2_devkitc
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
integration_platforms:
|
integration_platforms:
|
||||||
- nrf52840dk/nrf52840
|
- nrf52840dk/nrf52840
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp32s2_devkitc
|
- esp32s2_devkitc
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
tags: mcuboot
|
tags: mcuboot
|
||||||
harness: console
|
harness: console
|
||||||
harness_config:
|
harness_config:
|
||||||
|
|
|
@ -5,6 +5,8 @@ menu "Ultra Low Power (ULP) Coprocessor"
|
||||||
|
|
||||||
config ULP_COPROC_ENABLED
|
config ULP_COPROC_ENABLED
|
||||||
bool "Ultra Low Power (ULP) Coprocessor"
|
bool "Ultra Low Power (ULP) Coprocessor"
|
||||||
|
default y if SOC_ESP32C6_LPCORE
|
||||||
|
select SOC_LATE_INIT_HOOK if SOC_ESP32C6_HPCORE
|
||||||
help
|
help
|
||||||
Enable this feature if you plan to use the ULP Coprocessor.
|
Enable this feature if you plan to use the ULP Coprocessor.
|
||||||
Once this option is enabled, further ULP co-processor configuration will appear in the menu.
|
Once this option is enabled, further ULP co-processor configuration will appear in the menu.
|
||||||
|
|
|
@ -44,6 +44,8 @@ set_property(TARGET bintools PROPERTY disassembly_flag_inline_source)
|
||||||
# Select the image origin depending on the boot configuration
|
# Select the image origin depending on the boot configuration
|
||||||
if(CONFIG_SOC_ESP32_APPCPU OR CONFIG_SOC_ESP32S3_APPCPU)
|
if(CONFIG_SOC_ESP32_APPCPU OR CONFIG_SOC_ESP32S3_APPCPU)
|
||||||
dt_nodelabel(dts_partition_path NODELABEL "slot0_appcpu_partition")
|
dt_nodelabel(dts_partition_path NODELABEL "slot0_appcpu_partition")
|
||||||
|
elseif(CONFIG_SOC_ESP32C6_LPCORE)
|
||||||
|
dt_nodelabel(dts_partition_path NODELABEL "slot0_lpcore_partition")
|
||||||
elseif(CONFIG_MCUBOOT OR CONFIG_ESP_SIMPLE_BOOT)
|
elseif(CONFIG_MCUBOOT OR CONFIG_ESP_SIMPLE_BOOT)
|
||||||
dt_nodelabel(dts_partition_path NODELABEL "boot_partition")
|
dt_nodelabel(dts_partition_path NODELABEL "boot_partition")
|
||||||
else()
|
else()
|
||||||
|
@ -78,6 +80,8 @@ if(CONFIG_MCUBOOT)
|
||||||
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/mcuboot.ld CACHE INTERNAL "")
|
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/mcuboot.ld CACHE INTERNAL "")
|
||||||
elseif(CONFIG_SOC_ESP32_APPCPU OR CONFIG_SOC_ESP32S3_APPCPU)
|
elseif(CONFIG_SOC_ESP32_APPCPU OR CONFIG_SOC_ESP32S3_APPCPU)
|
||||||
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/default_appcpu.ld CACHE INTERNAL "")
|
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/default_appcpu.ld CACHE INTERNAL "")
|
||||||
|
elseif(CONFIG_SOC_ESP32C6_LPCORE)
|
||||||
|
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/default_lpcore.ld CACHE INTERNAL "")
|
||||||
else()
|
else()
|
||||||
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/default.ld CACHE INTERNAL "")
|
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/../${CONFIG_SOC}/default.ld CACHE INTERNAL "")
|
||||||
endif()
|
endif()
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
if SOC_SERIES_ESP32C2 || SOC_SERIES_ESP32C3 || SOC_SERIES_ESP32C6
|
if SOC_SERIES_ESP32C2 || SOC_SERIES_ESP32C3 || SOC_SERIES_ESP32C6
|
||||||
|
|
||||||
config GEN_ISR_TABLES
|
config GEN_ISR_TABLES
|
||||||
default y
|
default y if !SOC_ESP32C6_LPCORE
|
||||||
|
|
||||||
config GEN_SW_ISR_TABLE
|
config GEN_SW_ISR_TABLE
|
||||||
default y
|
default y
|
||||||
|
@ -13,7 +13,7 @@ config GEN_IRQ_VECTOR_TABLE
|
||||||
default n
|
default n
|
||||||
|
|
||||||
config DYNAMIC_INTERRUPTS
|
config DYNAMIC_INTERRUPTS
|
||||||
default y
|
default y if !SOC_ESP32C6_LPCORE
|
||||||
|
|
||||||
config ISR_STACK_SIZE
|
config ISR_STACK_SIZE
|
||||||
default 2048
|
default 2048
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
zephyr_sources(
|
zephyr_sources_ifdef(CONFIG_SOC_ESP32C6_HPCORE
|
||||||
vectors.S
|
vectors.S
|
||||||
soc_irq.S
|
soc_irq.S
|
||||||
soc_irq.c
|
soc_irq.c
|
||||||
|
@ -8,9 +8,18 @@ zephyr_sources(
|
||||||
../common/loader.c
|
../common/loader.c
|
||||||
)
|
)
|
||||||
|
|
||||||
|
zephyr_sources_ifdef(CONFIG_SOC_ESP32C6_LPCORE
|
||||||
|
vector_table_lpcore.S
|
||||||
|
vectors_lpcore.S
|
||||||
|
start_lpcore.S
|
||||||
|
soc_lpcore.c
|
||||||
|
)
|
||||||
|
|
||||||
zephyr_include_directories(.)
|
zephyr_include_directories(.)
|
||||||
|
|
||||||
zephyr_sources_ifndef(CONFIG_BOOTLOADER_MCUBOOT hw_init.c)
|
if(CONFIG_SOC_ESP32C6_HPCORE)
|
||||||
|
zephyr_sources_ifndef(CONFIG_BOOTLOADER_MCUBOOT hw_init.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_PM power.c)
|
zephyr_library_sources_ifdef(CONFIG_PM power.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POWEROFF poweroff.c)
|
zephyr_library_sources_ifdef(CONFIG_POWEROFF poweroff.c)
|
||||||
|
zephyr_sources_ifdef(CONFIG_ULP_COPROC_ENABLED hpcore_init_ulp.c)
|
||||||
|
endif()
|
||||||
|
|
|
@ -4,14 +4,15 @@
|
||||||
config SOC_SERIES_ESP32C6
|
config SOC_SERIES_ESP32C6
|
||||||
select RISCV
|
select RISCV
|
||||||
select RISCV_SOC_HAS_GP_RELATIVE_ADDRESSING
|
select RISCV_SOC_HAS_GP_RELATIVE_ADDRESSING
|
||||||
select DYNAMIC_INTERRUPTS
|
select DYNAMIC_INTERRUPTS if SOC_ESP32C6_HPCORE
|
||||||
select CLOCK_CONTROL
|
select CLOCK_CONTROL if SOC_ESP32C6_HPCORE
|
||||||
select PINCTRL
|
select PINCTRL if SOC_ESP32C6_HPCORE
|
||||||
select RISCV_ISA_RV32I
|
select RISCV_ISA_RV32I
|
||||||
select RISCV_ISA_EXT_A
|
select RISCV_ISA_EXT_A
|
||||||
select RISCV_ISA_EXT_M
|
select RISCV_ISA_EXT_M
|
||||||
select RISCV_ISA_EXT_C
|
select RISCV_ISA_EXT_C
|
||||||
select RISCV_ISA_EXT_ZICSR
|
select RISCV_ISA_EXT_ZICSR
|
||||||
|
select RISCV_ISA_EXT_ZIFENCEI
|
||||||
select HAS_ESPRESSIF_HAL
|
select HAS_ESPRESSIF_HAL
|
||||||
select HAS_PM
|
select HAS_PM
|
||||||
select HAS_POWEROFF
|
select HAS_POWEROFF
|
||||||
|
|
|
@ -18,3 +18,25 @@ config MAIN_STACK_SIZE
|
||||||
default 2048
|
default 2048
|
||||||
|
|
||||||
endif # SOC_SERIES_ESP32C6
|
endif # SOC_SERIES_ESP32C6
|
||||||
|
|
||||||
|
if SOC_ESP32C6_LPCORE
|
||||||
|
|
||||||
|
config GEN_ISR_TABLES
|
||||||
|
default n
|
||||||
|
|
||||||
|
config SYS_CLOCK_EXISTS
|
||||||
|
default n
|
||||||
|
|
||||||
|
config KERNEL_MEM_POOL
|
||||||
|
default n
|
||||||
|
|
||||||
|
config COMMON_LIBC_MALLOC_ARENA_SIZE
|
||||||
|
default 0
|
||||||
|
|
||||||
|
config MULTITHREADING
|
||||||
|
default n
|
||||||
|
|
||||||
|
config NUM_PREEMPT_PRIORITIES
|
||||||
|
default 0
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
|
@ -17,6 +17,16 @@ config SOC_ESP32C6
|
||||||
bool
|
bool
|
||||||
select SOC_SERIES_ESP32C6
|
select SOC_SERIES_ESP32C6
|
||||||
|
|
||||||
|
config SOC_ESP32C6_HPCORE
|
||||||
|
bool
|
||||||
|
help
|
||||||
|
This hidden configuration defines that build is targeted for HP CORE.
|
||||||
|
|
||||||
|
config SOC_ESP32C6_LPCORE
|
||||||
|
bool
|
||||||
|
help
|
||||||
|
This hidden configuration defines that build is targeted for LP CORE.
|
||||||
|
|
||||||
config SOC_SERIES
|
config SOC_SERIES
|
||||||
default "esp32c6" if SOC_SERIES_ESP32C6
|
default "esp32c6" if SOC_SERIES_ESP32C6
|
||||||
|
|
||||||
|
|
|
@ -66,9 +66,13 @@ MEMORY
|
||||||
irom0_0_seg(RX): org = IROM_SEG_ORG, len = IROM_SEG_LEN
|
irom0_0_seg(RX): org = IROM_SEG_ORG, len = IROM_SEG_LEN
|
||||||
drom0_0_seg(R): org = DROM_SEG_ORG, len = DROM_SEG_LEN
|
drom0_0_seg(R): org = DROM_SEG_ORG, len = DROM_SEG_LEN
|
||||||
|
|
||||||
|
#if CONFIG_ULP_COPROC_ENABLED
|
||||||
|
lp_ram_seg(RW): org = LPSRAM_IRAM_START + ULP_COPROC_RESERVE_MEM,
|
||||||
|
len = LPSRAM_SIZE - ULP_COPROC_RESERVE_MEM - CONFIG_RESERVE_RTC_MEM
|
||||||
|
#else
|
||||||
lp_ram_seg(RW): org = LPSRAM_IRAM_START,
|
lp_ram_seg(RW): org = LPSRAM_IRAM_START,
|
||||||
len = 0x4000 - CONFIG_RESERVE_RTC_MEM
|
len = 0x4000 - CONFIG_RESERVE_RTC_MEM
|
||||||
|
#endif
|
||||||
/* We reduced the size of lp_ram_seg by CONFIG_RESERVE_RTC_MEM value.
|
/* We reduced the size of lp_ram_seg by CONFIG_RESERVE_RTC_MEM value.
|
||||||
It reserves the amount of LP memory that we use for this memory segment.
|
It reserves the amount of LP memory that we use for this memory segment.
|
||||||
This segment is intended for keeping:
|
This segment is intended for keeping:
|
||||||
|
@ -186,7 +190,6 @@ SECTIONS
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* --- START OF RTC --- */
|
/* --- START OF RTC --- */
|
||||||
|
|
||||||
.rtc.text :
|
.rtc.text :
|
||||||
{
|
{
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
|
|
|
@ -25,3 +25,6 @@ family:
|
||||||
- name: esp32c6
|
- name: esp32c6
|
||||||
socs:
|
socs:
|
||||||
- name: esp32c6
|
- name: esp32c6
|
||||||
|
cpuclusters:
|
||||||
|
- name: hpcore
|
||||||
|
- name: lpcore
|
||||||
|
|
|
@ -14,7 +14,7 @@ Supported Boards
|
||||||
****************
|
****************
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
- esp32s2_saola
|
- esp32s2_saola
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
|
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
common:
|
common:
|
||||||
integration_platforms:
|
integration_platforms:
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
tests:
|
tests:
|
||||||
boards.esp32.rtc_clk:
|
boards.esp32.rtc_clk:
|
||||||
platform_allow:
|
platform_allow:
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
- esp32s2_saola
|
- esp32s2_saola
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
boards.esp32.rtc_clk.xtal:
|
boards.esp32.rtc_clk.xtal:
|
||||||
platform_allow:
|
platform_allow:
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
- esp32s2_saola
|
- esp32s2_saola
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
harness_config:
|
harness_config:
|
||||||
|
|
|
@ -12,7 +12,7 @@ tests:
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp8684_devkitm
|
- esp8684_devkitm
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
- esp32s2_saola
|
- esp32s2_saola
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
||||||
- esp32_devkitc_wrover/esp32/procpu
|
- esp32_devkitc_wrover/esp32/procpu
|
||||||
- esp8684_devkitm
|
- esp8684_devkitm
|
||||||
- esp32c3_devkitm
|
- esp32c3_devkitm
|
||||||
- esp32c6_devkitc
|
- esp32c6_devkitc/esp32c6/hpcore
|
||||||
- esp32s2_saola
|
- esp32s2_saola
|
||||||
- esp32s3_devkitm/esp32s3/procpu
|
- esp32s3_devkitm/esp32s3/procpu
|
||||||
integration_platforms:
|
integration_platforms:
|
||||||
|
|
2
west.yml
2
west.yml
|
@ -162,7 +162,7 @@ manifest:
|
||||||
groups:
|
groups:
|
||||||
- hal
|
- hal
|
||||||
- name: hal_espressif
|
- name: hal_espressif
|
||||||
revision: 202c59552dc98e5cd02386313e1977ecb17a131f
|
revision: 1892bfe6ffc859885bc2b0f2e06b6ad9ee436e6b
|
||||||
path: modules/hal/espressif
|
path: modules/hal/espressif
|
||||||
west-commands: west/west-commands.yml
|
west-commands: west/west-commands.yml
|
||||||
groups:
|
groups:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue