diff --git a/boards/m5stack/m5stack_atoms3/Kconfig b/boards/m5stack/m5stack_atoms3/Kconfig new file mode 100644 index 00000000000..651e5528b94 --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/Kconfig @@ -0,0 +1,6 @@ +# Copyright (c) 2024 Espressif Systems (Shanghai) Co., Ltd. +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_M5STACK_ATOMS3 + select SOC_ESP32S3_PROCPU if BOARD_M5STACK_ATOMS3_ESP32S3_PROCPU + select SOC_ESP32S3_APPCPU if BOARD_M5STACK_ATOMS3_ESP32S3_APPCPU diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.defconfig b/boards/m5stack/m5stack_atoms3/Kconfig.defconfig similarity index 60% rename from boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.defconfig rename to boards/m5stack/m5stack_atoms3/Kconfig.defconfig index 94f209758eb..c0dadaceeb4 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.defconfig +++ b/boards/m5stack/m5stack_atoms3/Kconfig.defconfig @@ -2,30 +2,27 @@ # Copyright (c) 2023 Benjamin Cabé # SPDX-License-Identifier: Apache-2.0 -if BOARD_M5STACK_ATOMS3 +if BOARD_M5STACK_ATOMS3_ESP32S3_PROCPU -config BOARD - default "m5stack_atoms3" - depends on BOARD_M5STACK_ATOMS3 - -config ENTROPY_GENERATOR - default y +config LV_COLOR_16_SWAP + default y if LVGL config HEAP_MEM_POOL_ADD_SIZE_BOARD int default 65535 if WIFI && BT default 51200 if WIFI - default 65536 if BT + default 40960 if BT default 4096 -config KERNEL_MEM_POOL - default y - choice BT_HCI_BUS_TYPE default BT_ESP32 if BT endchoice -config LV_COLOR_16_SWAP - default y if LVGL +endif # BOARD_M5STACK_ATOMS3_ESP32S3_PROCPU + +if BOARD_M5STACK_ATOMS3_ESP32S3_APPCPU + +config HEAP_MEM_POOL_ADD_SIZE_BOARD + default 256 -endif # BOARD_M5STACK_ATOMS3 +endif # BOARD_M5STACK_ATOMS3_ESP32S3_APPCPU diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.board b/boards/m5stack/m5stack_atoms3/Kconfig.m5stack_atoms3 similarity index 56% rename from boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.board rename to boards/m5stack/m5stack_atoms3/Kconfig.m5stack_atoms3 index 726e31773e2..e858deba10d 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/Kconfig.board +++ b/boards/m5stack/m5stack_atoms3/Kconfig.m5stack_atoms3 @@ -4,9 +4,4 @@ # SPDX-License-Identifier: Apache-2.0 config BOARD_M5STACK_ATOMS3 - bool "M5Stack AtomS3 Development Board" - depends on SOC_SERIES_ESP32S3 - -choice SOC_PART_NUMBER - default SOC_ESP32S3_FN8 -endchoice + select SOC_ESP32S3_FN8 diff --git a/boards/m5stack/m5stack_atoms3/Kconfig.sysbuild b/boards/m5stack/m5stack_atoms3/Kconfig.sysbuild new file mode 100644 index 00000000000..3a2d17ac5cf --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/Kconfig.sysbuild @@ -0,0 +1,10 @@ +# Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd. +# SPDX-License-Identifier: Apache-2.0 + +choice BOOTLOADER + default BOOTLOADER_MCUBOOT +endchoice + +choice BOOT_SIGNATURE_TYPE + default BOOT_SIGNATURE_TYPE_NONE +endchoice diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/board.cmake b/boards/m5stack/m5stack_atoms3/board.cmake similarity index 100% rename from boards/boards_legacy/xtensa/m5stack_atoms3/board.cmake rename to boards/m5stack/m5stack_atoms3/board.cmake diff --git a/boards/m5stack/m5stack_atoms3/board.yml b/boards/m5stack/m5stack_atoms3/board.yml new file mode 100644 index 00000000000..4126aa17d2e --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/board.yml @@ -0,0 +1,5 @@ +board: + name: m5stack_atoms3 + vendor: m5stack + socs: + - name: esp32s3 diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/doc/img/m5stack_atoms3.webp b/boards/m5stack/m5stack_atoms3/doc/img/m5stack_atoms3.webp similarity index 100% rename from boards/boards_legacy/xtensa/m5stack_atoms3/doc/img/m5stack_atoms3.webp rename to boards/m5stack/m5stack_atoms3/doc/img/m5stack_atoms3.webp diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/doc/index.rst b/boards/m5stack/m5stack_atoms3/doc/index.rst similarity index 98% rename from boards/boards_legacy/xtensa/m5stack_atoms3/doc/index.rst rename to boards/m5stack/m5stack_atoms3/doc/index.rst index 2dd229be436..c053f73c101 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/doc/index.rst +++ b/boards/m5stack/m5stack_atoms3/doc/index.rst @@ -94,7 +94,7 @@ Build and flash applications as usual (see :ref:`build_an_application` and .. zephyr-app-commands:: :zephyr-app: samples/hello_world - :board: m5stack_atoms3 + :board: m5stack_atoms3/esp32s3/procpu :goals: build The usual ``flash`` target will work with the ``m5stack_atoms3`` board @@ -103,7 +103,7 @@ application. .. zephyr-app-commands:: :zephyr-app: samples/hello_world - :board: m5stack_atoms3 + :board: m5stack_atoms3/esp32s3/procpu :goals: flash The baud rate of 921600bps is set by default. If experiencing issues when flashing, diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/grove_connectors.dtsi b/boards/m5stack/m5stack_atoms3/grove_connectors.dtsi similarity index 100% rename from boards/boards_legacy/xtensa/m5stack_atoms3/grove_connectors.dtsi rename to boards/m5stack/m5stack_atoms3/grove_connectors.dtsi diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3-pinctrl.dtsi b/boards/m5stack/m5stack_atoms3/m5stack_atoms3-pinctrl.dtsi similarity index 100% rename from boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3-pinctrl.dtsi rename to boards/m5stack/m5stack_atoms3/m5stack_atoms3-pinctrl.dtsi diff --git a/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.dts b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.dts new file mode 100644 index 00000000000..91bcff6c007 --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.dts @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2023 Espressif Systems (Shanghai) Co., Ltd. + * + * SPDX-License-Identifier: Apache-2.0 + */ +/dts-v1/; + +#include +/ { + model = "M5Stack AtomS3 APPCPU"; + compatible = "espressif,esp32s3"; + + chosen { + zephyr,sram = &sram0; + zephyr,ipc_shm = &shm0; + zephyr,ipc = &ipm0; + }; +}; + +&cpu0 { + clock-frequency = ; +}; + +&cpu1 { + clock-frequency = ; +}; + +&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>; + }; + }; +}; diff --git a/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.yaml b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.yaml new file mode 100644 index 00000000000..a8efc9aad00 --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu.yaml @@ -0,0 +1,27 @@ +identifier: m5stack_atoms3/esp32s3/appcpu +name: M5Stack AtomS3 +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: m5stack diff --git a/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu_defconfig b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu_defconfig new file mode 100644 index 00000000000..100bb882567 --- /dev/null +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_appcpu_defconfig @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: Apache-2.0 + +CONFIG_MAIN_STACK_SIZE=2048 +CONFIG_CLOCK_CONTROL=y +CONFIG_MINIMAL_LIBC=y diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.dts b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.dts similarity index 98% rename from boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.dts rename to boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.dts index 72ebd81b42f..1b5a5da32da 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.dts +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.dts @@ -11,7 +11,7 @@ #include / { - model = "M5Stack AtomS3"; + model = "M5Stack AtomS3 PROCPU"; compatible = "m5stack,atoms3"; chosen { diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.yaml b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.yaml similarity index 84% rename from boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.yaml rename to boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.yaml index ed34b2f551d..4be28b02f83 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3.yaml +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu.yaml @@ -1,4 +1,4 @@ -identifier: m5stack_atoms3 +identifier: m5stack_atoms3/esp32s3/procpu name: M5Stack AtomS3 type: mcu arch: xtensa diff --git a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3_defconfig b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu_defconfig similarity index 75% rename from boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3_defconfig rename to boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu_defconfig index 1000271dbe5..88c69e52e8c 100644 --- a/boards/boards_legacy/xtensa/m5stack_atoms3/m5stack_atoms3_defconfig +++ b/boards/m5stack/m5stack_atoms3/m5stack_atoms3_esp32s3_procpu_defconfig @@ -1,8 +1,5 @@ # SPDX-License-Identifier: Apache-2.0 -CONFIG_BOARD_M5STACK_ATOMS3=y -CONFIG_SOC_SERIES_ESP32S3=y - CONFIG_MAIN_STACK_SIZE=2048 CONFIG_GPIO=y