diff --git a/samples/drivers/mbox/CMakeLists.txt b/samples/drivers/mbox/CMakeLists.txt index 658a18ac21f..00eab257b4d 100644 --- a/samples/drivers/mbox/CMakeLists.txt +++ b/samples/drivers/mbox/CMakeLists.txt @@ -17,6 +17,8 @@ if(CONFIG_BOARD_NRF5340DK_NRF5340_CPUAPP OR CONFIG_BOARD_MIMXRT1170_EVK_MIMXRT1176_CM7 OR CONFIG_BOARD_MIMXRT1160_EVK_MIMXRT1166_CM7 OR CONFIG_BOARD_LPCXPRESSO55S69_LPC55S69_CPU0 OR + CONFIG_BOARD_ESP32_DEVKITC_WROOM_ESP32_PROCPU OR + CONFIG_BOARD_ESP32S3_DEVKITM_ESP32S3_PROCPU OR CONFIG_BOARD_NRF54H20DK_NRF54H20_CPUAPP OR CONFIG_BOARD_NRF54H20DK_NRF54H20_CPURAD OR CONFIG_BOARD_NRF54L15PDK_NRF54L15_CPUAPP OR @@ -35,4 +37,9 @@ if(CONFIG_INCLUDE_REMOTE_DIR) INTERFACE ${REMOTE_ZEPHYR_DIR}/include/public) endif() -target_sources(app PRIVATE src/main.c) +if("${BOARD}" STREQUAL "esp32_devkitc_wrover_procpu" OR "${BOARD}" STREQUAL "esp32s3_devkitm_procpu") + set_source_files_properties(${REMOTE_ZEPHYR_DIR}/esp32_appcpu_firmware.c PROPERTIES GENERATED TRUE) + target_sources(app PRIVATE src/main.c ${REMOTE_ZEPHYR_DIR}/esp32_appcpu_firmware.c) +else() + target_sources(app PRIVATE src/main.c) +endif() diff --git a/samples/drivers/mbox/Kconfig.sysbuild b/samples/drivers/mbox/Kconfig.sysbuild index ab6b1bff171..2c7060626bc 100644 --- a/samples/drivers/mbox/Kconfig.sysbuild +++ b/samples/drivers/mbox/Kconfig.sysbuild @@ -17,3 +17,5 @@ config REMOTE_BOARD default "nrf54h20dk/nrf54h20/cpuapp" if "$(BOARD)${BOARD_QUALIFIERS}" = "nrf54h20dk/nrf54h20/cpurad" default "nrf54l15pdk/nrf54l15/cpuflpr" if $(BOARD) = "nrf54l15pdk" default "stm32h747i_disco/stm32h747xx/m4" if $(BOARD) = "stm32h747i_disco" + default "esp32_devkitc_wroom/esp32/appcpu" if "$(BOARD)${BOARD_QUALIFIERS}" = "esp32_devkitc_wroom/esp32/procpu" + default "esp32s3_devkitm/esp32s3/appcpu" if "$(BOARD)${BOARD_QUALIFIERS}" = "esp32s3_devkitm/esp32s3/procpu" diff --git a/samples/drivers/mbox/boards/esp32_devkitc_wroom_procpu.overlay b/samples/drivers/mbox/boards/esp32_devkitc_wroom_procpu.overlay new file mode 100644 index 00000000000..211ec3f8f51 --- /dev/null +++ b/samples/drivers/mbox/boards/esp32_devkitc_wroom_procpu.overlay @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024 Felipe Neves. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + zephyr,sram = &sram0; + zephyr,ipc_shm = &shm0; + zephyr,ipc = &mbox0; + }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox0 1>, <&mbox0 0>; + mbox-names = "tx", "rx"; + }; +}; + +&mbox0 { + status = "okay"; +}; diff --git a/samples/drivers/mbox/boards/esp32s3_devkitm_procpu.overlay b/samples/drivers/mbox/boards/esp32s3_devkitm_procpu.overlay new file mode 100644 index 00000000000..211ec3f8f51 --- /dev/null +++ b/samples/drivers/mbox/boards/esp32s3_devkitm_procpu.overlay @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024 Felipe Neves. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + zephyr,sram = &sram0; + zephyr,ipc_shm = &shm0; + zephyr,ipc = &mbox0; + }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox0 1>, <&mbox0 0>; + mbox-names = "tx", "rx"; + }; +}; + +&mbox0 { + status = "okay"; +}; diff --git a/samples/drivers/mbox/remote/CMakeLists.txt b/samples/drivers/mbox/remote/CMakeLists.txt index 203fab879a3..daccb9899e6 100644 --- a/samples/drivers/mbox/remote/CMakeLists.txt +++ b/samples/drivers/mbox/remote/CMakeLists.txt @@ -15,6 +15,8 @@ if(CONFIG_BOARD_NRF5340DK_NRF5340_CPUNET OR CONFIG_BOARD_MIMXRT1170_EVK_MIMXRT1176_CM4 OR CONFIG_BOARD_MIMXRT1160_EVK_MIMXRT1166_CM4 OR CONFIG_BOARD_LPCXPRESSO55S69_LPC55S69_CPU1 OR + CONFIG_BOARD_ESP32_DEVKITC_WROOM_ESP32_APPCPU OR + CONFIG_BOARD_ESP32S3_DEVKITM_ESP32S3_APPCPU OR CONFIG_BOARD_NRF54H20DK_NRF54H20_CPUPPR OR CONFIG_BOARD_NRF54H20DK_NRF54H20_CPUFLPR OR CONFIG_BOARD_NRF54H20DK_NRF54H20_CPUAPP OR diff --git a/samples/drivers/mbox/remote/boards/esp32_devkitc_wroom_appcpu.overlay b/samples/drivers/mbox/remote/boards/esp32_devkitc_wroom_appcpu.overlay new file mode 100644 index 00000000000..c9643fb3e5d --- /dev/null +++ b/samples/drivers/mbox/remote/boards/esp32_devkitc_wroom_appcpu.overlay @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024 Felipe Neves. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + zephyr,sram = &sram0; + zephyr,ipc_shm = &shm0; + zephyr,ipc = &mbox0; + }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox0 0>, <&mbox0 1>; + mbox-names = "tx", "rx"; + }; +}; + +&mbox0 { + status = "okay"; +}; diff --git a/samples/drivers/mbox/remote/boards/esp32s3_devkitm_appcpu.overlay b/samples/drivers/mbox/remote/boards/esp32s3_devkitm_appcpu.overlay new file mode 100644 index 00000000000..c9643fb3e5d --- /dev/null +++ b/samples/drivers/mbox/remote/boards/esp32s3_devkitm_appcpu.overlay @@ -0,0 +1,23 @@ +/* + * Copyright (c) 2024 Felipe Neves. + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + zephyr,sram = &sram0; + zephyr,ipc_shm = &shm0; + zephyr,ipc = &mbox0; + }; + + mbox-consumer { + compatible = "vnd,mbox-consumer"; + mboxes = <&mbox0 0>, <&mbox0 1>; + mbox-names = "tx", "rx"; + }; +}; + +&mbox0 { + status = "okay"; +};