boards: xtensa: esp32s3_luatos_core: Convert to v2

Converts the board to hwmv2

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
This commit is contained in:
Sylvio Alves
2024-02-26 11:24:04 -03:00
committed by Carles Cufi
parent a78b2552eb
commit db1fd4d229
26 changed files with 273 additions and 59 deletions

View File

@@ -1,15 +0,0 @@
# Copyright (c) 2023 YuLong Yao <feilongphone@gmail.com>
# SPDX-License-Identifier: Apache-2.0
# ESP32S3 Core board configuration
config BOARD_ESP32S3_LUATOS_CORE
bool "ESP32S3 LuatOS Core Board with ch343 enabled"
depends on SOC_SERIES_ESP32S3
config BOARD_ESP32S3_LUATOS_CORE_USB
bool "ESP32S3 LuatOS Core Board with ch343 disabled"
depends on SOC_SERIES_ESP32S3
choice SOC_PART_NUMBER
default SOC_ESP32S3_MINI_N8
endchoice

View File

@@ -1,22 +0,0 @@
# ESP32S3 Core board configuration
# Copyright (c) 2023 YuLong Yao <feilongphone@gmail.com>
# SPDX-License-Identifier: Apache-2.0
config BOARD
default "esp32s3_luatos_core"
depends on BOARD_ESP32S3_LUATOS_CORE || BOARD_ESP32S3_LUATOS_CORE_USB
config ENTROPY_GENERATOR
default y
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096
choice BT_HCI_BUS_TYPE
default BT_ESP32 if BT
endchoice

View File

@@ -0,0 +1,6 @@
# Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd.
# SPDX-License-Identifier: Apache-2.0
config BOARD_ESP32S3_LUATOS_CORE
select SOC_ESP32S3_PROCPU if BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU_USB
select SOC_ESP32S3_APPCPU if BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU_USB

View File

@@ -0,0 +1,26 @@
# ESP32S3 Core board configuration
# Copyright (c) 2023 YuLong Yao <feilongphone@gmail.com>
# SPDX-License-Identifier: Apache-2.0
if BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU_USB
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096
choice BT_HCI_BUS_TYPE
default BT_ESP32 if BT
endchoice
endif # BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_PROCPU_USB
if BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU_USB
config HEAP_MEM_POOL_ADD_SIZE_BOARD
default 256
endif # BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU || BOARD_ESP32S3_LUATOS_CORE_ESP32S3_APPCPU_USB

View File

@@ -0,0 +1,5 @@
# Copyright (c) 2023 YuLong Yao <feilongphone@gmail.com>
# SPDX-License-Identifier: Apache-2.0
config BOARD_ESP32S3_LUATOS_CORE
select SOC_ESP32S3_MINI_N8

View File

@@ -0,0 +1,10 @@
board:
name: esp32s3_luatos_core
vendor: luatos
socs:
- name: esp32s3
variants:
- name: usb
cpucluster: procpu
- name: usb
cpucluster: appcpu

View File

@@ -188,9 +188,9 @@ Zephyr build. Output is structured by the domain subdirectories:
build/
├── hello_world
   └── zephyr
   ├── zephyr.elf
   └── zephyr.bin
└── zephyr
├── zephyr.elf
└── zephyr.bin
├── mcuboot
│ └── zephyr
│ ├── zephyr.elf
@@ -222,14 +222,14 @@ Build and flash applications as usual (see :ref:`build_an_application` and
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: esp32s3_luatos_core
:board: esp32s3_luatos_core/esp32s3/procpu
:goals: build
If CH343 chip is disabled, You need use the following command to build:
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: esp32s3_luatos_core_usb
:board: esp32s3_luatos_core_usb/esp32s3/procpu
:goals: build
The usual ``flash`` target will work with the ``esp32s3_luatos_core`` board
@@ -238,7 +238,7 @@ application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: esp32s3_luatos_core
:board: esp32s3_luatos_core/esp32s3/procpu
:goals: flash
Open the serial monitor using the following command:
@@ -270,14 +270,14 @@ Here is an example for building the :ref:`hello_world` application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: esp32s3_luatos_core
:board: esp32s3_luatos_core/esp32s3/procpu
:goals: build flash
You can debug an application in the usual way. Here is an example for the :ref:`hello_world` application.
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: esp32s3_luatos_core
:board: esp32s3_luatos_core/esp32s3/procpu
:goals: debug
.. _`JTAG debugging for ESP32-S3`: https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/api-guides/jtag-debugging/

View File

@@ -0,0 +1,73 @@
/*
* Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <espressif/esp32s3/esp32s3_appcpu.dtsi>
/ {
model = "ESP32S3 Luatos Core APPCPU";
compatible = "espressif,esp32s3";
chosen {
zephyr,sram = &sram0;
zephyr,ipc_shm = &shm0;
zephyr,ipc = &ipm0;
};
};
&cpu0 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&cpu1 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&trng0 {
status = "okay";
};
&ipm0 {
status = "okay";
};
&flash0 {
status = "okay";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/* Reserve 64kB for the bootloader */
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x00010000>;
read-only;
};
/* Reserve 1024kB for the application in slot 0 */
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x00010000 0x00100000>;
};
/* Reserve 1024kB for the application in slot 1 */
slot1_partition: partition@110000 {
label = "image-1";
reg = <0x00110000 0x00100000>;
};
/* Reserve 256kB for the scratch partition */
scratch_partition: partition@210000 {
label = "image-scratch";
reg = <0x00210000 0x00040000>;
};
storage_partition: partition@250000 {
label = "storage";
reg = <0x00250000 0x00006000>;
};
};
};

View File

@@ -0,0 +1,27 @@
identifier: esp32s3_luatos_core/esp32s3/appcpu
name: ESP32-S3 LuatOS Core
type: mcu
arch: xtensa
toolchain:
- zephyr
supported:
- uart
testing:
ignore_tags:
- net
- bluetooth
- flash
- cpp
- posix
- watchdog
- logging
- kernel
- pm
- gpio
- crypto
- eeprom
- heap
- cmsis_rtos
- jwt
- zdsp
vendor: luatos

View File

@@ -0,0 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CLOCK_CONTROL=y
CONFIG_MINIMAL_LIBC=y

View File

@@ -0,0 +1,73 @@
/*
* Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include <espressif/esp32s3/esp32s3_appcpu.dtsi>
/ {
model = "ESP32S3 Luatos Core USB APPCPU";
compatible = "espressif,esp32s3";
chosen {
zephyr,sram = &sram0;
zephyr,ipc_shm = &shm0;
zephyr,ipc = &ipm0;
};
};
&cpu0 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&cpu1 {
clock-frequency = <ESP32_CLK_CPU_240M>;
};
&trng0 {
status = "okay";
};
&ipm0 {
status = "okay";
};
&flash0 {
status = "okay";
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/* Reserve 64kB for the bootloader */
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x00010000>;
read-only;
};
/* Reserve 1024kB for the application in slot 0 */
slot0_partition: partition@10000 {
label = "image-0";
reg = <0x00010000 0x00100000>;
};
/* Reserve 1024kB for the application in slot 1 */
slot1_partition: partition@110000 {
label = "image-1";
reg = <0x00110000 0x00100000>;
};
/* Reserve 256kB for the scratch partition */
scratch_partition: partition@210000 {
label = "image-scratch";
reg = <0x00210000 0x00040000>;
};
storage_partition: partition@250000 {
label = "storage";
reg = <0x00250000 0x00006000>;
};
};
};

View File

@@ -0,0 +1,27 @@
identifier: esp32s3_luatos_core/esp32s3/appcpu/usb
name: ESP32-S3 LuatOS Core USB
type: mcu
arch: xtensa
toolchain:
- zephyr
supported:
- uart
testing:
ignore_tags:
- net
- bluetooth
- flash
- cpp
- posix
- watchdog
- logging
- kernel
- pm
- gpio
- crypto
- eeprom
- heap
- cmsis_rtos
- jwt
- zdsp
vendor: luatos

View File

@@ -0,0 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CLOCK_CONTROL=y
CONFIG_MINIMAL_LIBC=y

View File

@@ -8,7 +8,7 @@
#include "esp32s3_luatos_core.dtsi"
/ {
model = "esp32s3_luatos_core";
model = "ESP32S3 Luatos Core PROCPU";
compatible = "espressif,esp32s3";
aliases {

View File

@@ -1,5 +1,5 @@
identifier: esp32s3_luatos_core_usb
name: ESP32-S3 Core USB
identifier: esp32s3_luatos_core/esp32s3/procpu
name: ESP32-S3 LuatOS Core
type: mcu
arch: xtensa
toolchain:
@@ -19,4 +19,4 @@ testing:
ignore_tags:
- net
- bluetooth
vendor: espressif
vendor: luatos

View File

@@ -1,8 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_BOARD_ESP32S3_LUATOS_CORE=y
CONFIG_SOC_SERIES_ESP32S3=y
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CONSOLE=y

View File

@@ -8,7 +8,7 @@
#include "esp32s3_luatos_core.dtsi"
/ {
model = "esp32s3_luatos_core";
model = "ESP32S3 Luatos Core USB PROCPU";
compatible = "espressif,esp32s3";
aliases {

View File

@@ -1,5 +1,5 @@
identifier: esp32s3_luatos_core
name: ESP32-S3 Core
identifier: esp32s3_luatos_core/esp32s3/procpu/usb
name: ESP32-S3 LuatOS Core USB
type: mcu
arch: xtensa
toolchain:
@@ -19,4 +19,4 @@ testing:
ignore_tags:
- net
- bluetooth
vendor: espressif
vendor: luatos

View File

@@ -1,8 +1,5 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_BOARD_ESP32S3_LUATOS_CORE=y
CONFIG_SOC_SERIES_ESP32S3=y
CONFIG_MAIN_STACK_SIZE=2048
CONFIG_CONSOLE=y