diff --git a/samples/subsys/ipc/rpmsg_service/CMakeLists.txt b/samples/subsys/ipc/rpmsg_service/CMakeLists.txt index 18108f25fa0..83667bb1690 100644 --- a/samples/subsys/ipc/rpmsg_service/CMakeLists.txt +++ b/samples/subsys/ipc/rpmsg_service/CMakeLists.txt @@ -20,6 +20,8 @@ elseif("${BOARD}" STREQUAL "v2m_musca_b1") set(BOARD_REMOTE "v2m_musca_b1_ns") elseif("${BOARD}" STREQUAL "esp32") set(BOARD_REMOTE "esp32_net") +elseif("${BOARD}" STREQUAL "esp32s3_devkitm") + set(BOARD_REMOTE "esp32s3_devkitm_appcpu") else() message(FATAL_ERROR "${BOARD} was not supported for this sample") endif() @@ -33,7 +35,7 @@ enable_language(C ASM) target_sources(app PRIVATE src/main.c) -if("${BOARD}" STREQUAL "esp32") +if("${BOARD}" STREQUAL "esp32" OR "${BOARD}" STREQUAL "esp32s3_devkitm") set_source_files_properties(${REMOTE_ZEPHYR_DIR}/esp32_net_firmware.c PROPERTIES GENERATED TRUE) target_sources(app PRIVATE src/main.c ${REMOTE_ZEPHYR_DIR}/esp32_net_firmware.c) endif() @@ -52,7 +54,7 @@ ExternalProject_Add( if(("${BOARD}" STREQUAL "lpcxpresso54114_m4")) add_dependencies(core_m0_inc_target rpmsg_service_remote) -elseif("${BOARD}" STREQUAL "esp32") +elseif("${BOARD}" STREQUAL "esp32" OR "${BOARD}" STREQUAL "esp32s3_devkitm") add_dependencies(app rpmsg_service_remote) endif() diff --git a/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.conf b/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.conf new file mode 100644 index 00000000000..a8ee714a955 --- /dev/null +++ b/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.conf @@ -0,0 +1 @@ +CONFIG_SOC_ESP32S3_PROCPU=y diff --git a/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.overlay b/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.overlay new file mode 100644 index 00000000000..ad437c16e49 --- /dev/null +++ b/samples/subsys/ipc/rpmsg_service/boards/esp32s3_devkitm.overlay @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2023 Felipe Neves + * + * SPDX-License-Identifier: Apache-2.0 + */ + +/ { + chosen { + /* + * shared memory reserved for the inter-processor communication + */ + zephyr,ipc_shm = &shm0; + zephyr,ipc = &ipm0; + }; +}; + +&ipm0 { + status = "okay"; +}; diff --git a/samples/subsys/ipc/rpmsg_service/remote/CMakeLists.txt b/samples/subsys/ipc/rpmsg_service/remote/CMakeLists.txt index fa4fe6ebad5..76fc92e6307 100644 --- a/samples/subsys/ipc/rpmsg_service/remote/CMakeLists.txt +++ b/samples/subsys/ipc/rpmsg_service/remote/CMakeLists.txt @@ -10,7 +10,8 @@ if("${BOARD}" STREQUAL "nrf5340dk_nrf5340_cpunet" OR "${BOARD}" STREQUAL "lpcxpresso54114_m0" OR "${BOARD}" STREQUAL "mps2_an521_remote" OR "${BOARD}" STREQUAL "v2m_musca_b1_ns" - OR "${BOARD}" STREQUAL "esp32_net") + OR "${BOARD}" STREQUAL "esp32_net" + OR "${BOARD}" STREQUAL "esp32s3_devkitm_appcpu") message(STATUS "${BOARD} compile as slave in this sample") else() message(FATAL_ERROR "${BOARD} was not supported for this sample")