diff --git a/doc/nrf/releases_and_maturity/releases/release-notes-2.0.0.rst b/doc/nrf/releases_and_maturity/releases/release-notes-2.0.0.rst index 1887d2758350..84660cdf7fcc 100644 --- a/doc/nrf/releases_and_maturity/releases/release-notes-2.0.0.rst +++ b/doc/nrf/releases_and_maturity/releases/release-notes-2.0.0.rst @@ -491,7 +491,7 @@ nRF5340 samples * Added: * :ref:`nrf5340_remote_shell` sample. - * :ref:`multicore_hello_world` sample. + * ``multicore_hello_world`` sample. * Updated: diff --git a/doc/nrf/releases_and_maturity/releases/release-notes-2.4.0.rst b/doc/nrf/releases_and_maturity/releases/release-notes-2.4.0.rst index fb6fd6fbebca..630697cd785a 100644 --- a/doc/nrf/releases_and_maturity/releases/release-notes-2.4.0.rst +++ b/doc/nrf/releases_and_maturity/releases/release-notes-2.4.0.rst @@ -535,10 +535,10 @@ Matter samples Multicore samples ----------------- -* :ref:`multicore_hello_world` sample: +* ``multicore_hello_world`` sample: * Added :ref:`zephyr:sysbuild` support to the sample. - * Updated the sample documentation by renaming it as :ref:`multicore_hello_world` from nRF5340: Multicore application and moved it from :ref:`nrf5340_samples` to Multicore samples. + * Updated the sample documentation by renaming it as ``multicore_hello_world`` from nRF5340: Multicore application and moved it from :ref:`nrf5340_samples` to Multicore samples. nRF9160 samples --------------- @@ -943,7 +943,7 @@ Documentation * Added: * A page on :ref:`ug_nrf70_developing_regulatory_support` in the :ref:`ug_nrf70_developing` user guide. - * New sample categories :ref:`pmic_samples`, :ref:`debug_samples`, :ref:`multicore_samples`, and :ref:`networking_samples`. + * New sample categories :ref:`pmic_samples`, :ref:`debug_samples`, Multicore samples, and :ref:`networking_samples`. * Updated: diff --git a/doc/nrf/releases_and_maturity/releases/release-notes-2.6.99-cs2.rst b/doc/nrf/releases_and_maturity/releases/release-notes-2.6.99-cs2.rst index 05353797f498..e7cbc35cea7f 100644 --- a/doc/nrf/releases_and_maturity/releases/release-notes-2.6.99-cs2.rst +++ b/doc/nrf/releases_and_maturity/releases/release-notes-2.6.99-cs2.rst @@ -94,7 +94,7 @@ Enhanced ShockBurst samples Multicore samples ----------------- -* :ref:`multicore_hello_world` sample: +* ``multicore_hello_world`` sample: * Added support for the :ref:`nRF54H20 DK ` with build target ``nrf54h20dk_nrf54h20_cpuapp``. diff --git a/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst b/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst index 1f1b64259b6c..3c89d17fd604 100644 --- a/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst +++ b/doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst @@ -633,7 +633,8 @@ Matter samples that used :ref:`zephyr:nrf-ieee802154-rpmsg-sample` or :ref:`mult Multicore samples ----------------- -|no_changes_yet_note| +* Removed the "Multicore Hello World application" sample in favor of :zephyr:code-sample:`sysbuild_hello_world`, which has equivalent functionality. + This also removes the Multicore samples category from the :ref:`samples` page. Networking samples ------------------ diff --git a/doc/nrf/samples.rst b/doc/nrf/samples.rst index 8c374f2a623e..2b6052efcb9c 100644 --- a/doc/nrf/samples.rst +++ b/doc/nrf/samples.rst @@ -42,7 +42,6 @@ If you want to list samples available for one or more specific boards, `use the samples/gazell samples/keys samples/matter - samples/multicore samples/net samples/nfc samples/nrf5340 diff --git a/doc/nrf/samples/multicore.rst b/doc/nrf/samples/multicore.rst deleted file mode 100644 index 5a563ca3c89a..000000000000 --- a/doc/nrf/samples/multicore.rst +++ /dev/null @@ -1,11 +0,0 @@ -.. _multicore_samples: - -Multicore samples -################# - -.. toctree:: - :maxdepth: 1 - :caption: Subpages - :glob: - - ../../../samples/multicore/*/README diff --git a/samples/multicore/hello_world/CMakeLists.txt b/samples/multicore/hello_world/CMakeLists.txt deleted file mode 100644 index 2916cda176f9..000000000000 --- a/samples/multicore/hello_world/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -# -# Copyright (c) 2022 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -cmake_minimum_required(VERSION 3.20.0) - -find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE}) -if (NOT SYSBUILD) - message(WARNING - " This is a multi-image application that should be built using sysbuild.\n" - " Add --sysbuild argument to west build command to prepare all the images.") -endif() - -project(hello_world) - -target_sources(app PRIVATE src/main.c) diff --git a/samples/multicore/hello_world/Kconfig b/samples/multicore/hello_world/Kconfig deleted file mode 100644 index a1b31463128c..000000000000 --- a/samples/multicore/hello_world/Kconfig +++ /dev/null @@ -1,12 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -source "Kconfig.zephyr" - -config BOARD_ENABLE_CPUNET - bool - depends on BOARD_NRF5340DK_NRF5340_CPUAPP || BOARD_NRF5340DK_NRF5340_CPUAPP_NS - default y diff --git a/samples/multicore/hello_world/Kconfig.sysbuild b/samples/multicore/hello_world/Kconfig.sysbuild deleted file mode 100644 index da26dbe3dc09..000000000000 --- a/samples/multicore/hello_world/Kconfig.sysbuild +++ /dev/null @@ -1,10 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -source "${ZEPHYR_BASE}/share/sysbuild/Kconfig" - -config REMOTE_BOARD - string "The board used for remote target" diff --git a/samples/multicore/hello_world/README.rst b/samples/multicore/hello_world/README.rst deleted file mode 100644 index 86400bf6c403..000000000000 --- a/samples/multicore/hello_world/README.rst +++ /dev/null @@ -1,101 +0,0 @@ -.. _multicore_hello_world: - -Multicore Hello World application -################################# - -.. contents:: - :local: - :depth: 2 - -The sample demonstrates how to build a Hello World application that runs on multiple cores. - -Requirements -************ - -The sample supports the following development kits: - -.. table-from-sample-yaml:: - -Overview -******** - -The sample demonstrates how to build a multicore Hello World application with the :ref:`zephyr:sysbuild`. -When building with Zephyr Sysbuild, the build system adds child images based on the options selected in the project's additional configuration and build files. -This sample shows how to inform the build system about dedicated sources for additional images. -The sample comes with the following additional files: - -* :file:`Kconfig.sysbuild` - This file is used to add Sysbuild configuration that is passed to all the images. - ``SB_CONFIG`` is the prefix for sysbuild's Kconfig options. -* :file:`sysbuild.cmake` - The CMake file adds additional images using the :c:macro:`ExternalZephyrProject_Add` macro. - You can also add the dependencies for the images if required. - -Both the application and remote cores use the same :file:`main.c` that prints the name of the DK on which the application is programmed. - -Building and running -******************** - -.. |sample path| replace:: :file:`samples/multicore/hello_world` - -.. include:: /includes/build_and_run_sb.txt - -The remote board needs to be specified using ``SB_CONFIG_REMOTE_BOARD``. -As shown below, it is recommended to use configuration setups from :file:`sample.yaml` using the ``-T`` option to build the sample. - -nRF5340 DK - You can build the sample for application and network cores as follows: - - .. code-block:: console - - west build -p -b nrf5340dk/nrf5340/cpuapp -T sample.multicore.hello_world.nrf5340dk_cpuapp_cpunet . - -nRF54H20 DK - You can build the sample for application and radio cores as follows: - - .. code-block:: console - - west build -p -b nrf54h20dk/nrf54h20/cpuapp -T sample.multicore.hello_world.nrf54h20dk_cpuapp_cpurad . - - You can build the sample for application and PPR cores as follows: - - .. code-block:: console - - west build -p -b nrf54h20dk/nrf54h20/cpuapp -T sample.multicore.hello_world.nrf54h20dk_cpuapp_cpuppr . - - Note that :ref:`zephyr:nordic-ppr` is used in the configuration above to automatically launch PPR core from the application core. - - An additional configuration setup is provided to execute code directly from MRAM on the PPR core. - This configuration uses :ref:`zephyr:nordic-ppr-xip` and enables :kconfig:option:`CONFIG_XIP` on the PPR core. - It can be built as follows: - - .. code-block:: console - - west build -p -b nrf54h20dk/nrf54h20/cpuapp -T sample.multicore.hello_world.nrf54h20dk_cpuapp_cpuppr_xip . - -.. include:: /includes/nRF54H20_erase_UICR.txt - -Testing -======= - -After programming the sample to your development kit, complete the following steps to test it: - - 1. |connect_terminal| - #. Reset the kit. - #. Observe the console output for both cores: - - * For the application core, the output should be as follows: - - .. code-block:: console - - *** Booting nRF Connect SDK zephyr-v3.5.0-3517-g9458a1aaf744 *** - Hello world from nrf5340dk/nrf5340/cpuapp - Hello world from nrf5340dk/nrf5340/cpuapp - ... - - * For the remote core, the output should be as follows: - - .. code-block:: console - - *** Booting nRF Connect SDK zephyr-v3.5.0-3517-g9458a1aaf744 *** - Hello world from nrf5340dk/nrf5340/cpunet - Hello world from nrf5340dk/nrf5340/cpunet - ... diff --git a/samples/multicore/hello_world/prj.conf b/samples/multicore/hello_world/prj.conf deleted file mode 100644 index c6baee637082..000000000000 --- a/samples/multicore/hello_world/prj.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_PRINTK=y diff --git a/samples/multicore/hello_world/remote/CMakeLists.txt b/samples/multicore/hello_world/remote/CMakeLists.txt deleted file mode 100644 index 031fd28d29a7..000000000000 --- a/samples/multicore/hello_world/remote/CMakeLists.txt +++ /dev/null @@ -1,12 +0,0 @@ -# -# Copyright (c) 2022 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -cmake_minimum_required(VERSION 3.20.0) - -find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE}) -project(remote) - -target_sources(app PRIVATE ../src/main.c) diff --git a/samples/multicore/hello_world/remote/prj.conf b/samples/multicore/hello_world/remote/prj.conf deleted file mode 100644 index c6baee637082..000000000000 --- a/samples/multicore/hello_world/remote/prj.conf +++ /dev/null @@ -1 +0,0 @@ -CONFIG_PRINTK=y diff --git a/samples/multicore/hello_world/sample.yaml b/samples/multicore/hello_world/sample.yaml deleted file mode 100644 index 0fe06213dfa0..000000000000 --- a/samples/multicore/hello_world/sample.yaml +++ /dev/null @@ -1,55 +0,0 @@ -sample: - name: Multicore Hello World - description: | - Hello World application that builds remote core from sources. Both cores - print board name they were run on. - -common: - build_only: true - sysbuild: true - tags: ci_build - -tests: - sample.multicore.hello_world.nrf5340dk_cpuapp_cpunet: - platform_allow: - - nrf5340dk/nrf5340/cpuapp - integration_platforms: - - nrf5340dk/nrf5340/cpuapp - extra_args: - SB_CONF_FILE=sysbuild/nrf5340dk_nrf5340_cpunet.conf - - sample.multicore.hello_world.nrf5340dk_cpuapp_cpunet_mcuboot: - platform_allow: - - nrf5340dk/nrf5340/cpuapp - integration_platforms: - - nrf5340dk/nrf5340/cpuapp - extra_configs: - - CONFIG_BOOTLOADER_MCUBOOT=y - extra_args: - SB_CONF_FILE=sysbuild/nrf5340dk_nrf5340_cpunet.conf - - sample.multicore.hello_world.nrf54h20dk_cpuapp_cpuppr: - platform_allow: - - nrf54h20dk/nrf54h20/cpuapp - integration_platforms: - - nrf54h20dk/nrf54h20/cpuapp - extra_args: - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpuppr.conf - hello_world_SNIPPET=nordic-ppr - - sample.multicore.hello_world.nrf54h20dk_cpuapp_cpuppr_xip: - platform_allow: - - nrf54h20dk/nrf54h20/cpuapp - integration_platforms: - - nrf54h20dk/nrf54h20/cpuapp - extra_args: - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpuppr_xip.conf - hello_world_SNIPPET=nordic-ppr-xip - - sample.multicore.hello_world.nrf54h20dk_cpuapp_cpurad: - platform_allow: - - nrf54h20dk/nrf54h20/cpuapp - integration_platforms: - - nrf54h20dk/nrf54h20/cpuapp - extra_args: - SB_CONF_FILE=sysbuild/nrf54h20dk_nrf54h20_cpurad.conf diff --git a/samples/multicore/hello_world/src/main.c b/samples/multicore/hello_world/src/main.c deleted file mode 100644 index 916410602402..000000000000 --- a/samples/multicore/hello_world/src/main.c +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Copyright (c) 2022 Nordic Semiconductor ASA - * - * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause - */ - -#include -#include -#include -LOG_MODULE_REGISTER(app); - -int main(void) -{ - int cnt = 0; - - while (1) { - LOG_INF("test %d", cnt++); - printk("Hello world from %s\n", CONFIG_BOARD_TARGET); - k_msleep(1000); - } - - return 0; -} diff --git a/samples/multicore/hello_world/sysbuild.cmake b/samples/multicore/hello_world/sysbuild.cmake deleted file mode 100644 index 6568f10afd8c..000000000000 --- a/samples/multicore/hello_world/sysbuild.cmake +++ /dev/null @@ -1,25 +0,0 @@ -# -# Copyright (c) 2023 Nordic Semiconductor ASA -# -# SPDX-License-Identifier: LicenseRef-Nordic-5-Clause -# - -if("${SB_CONFIG_REMOTE_BOARD}" STREQUAL "") - message(FATAL_ERROR "REMOTE_BOARD must be set to a valid board name") -endif() - -# Add remote project -ExternalZephyrProject_Add( - APPLICATION remote - SOURCE_DIR ${APP_DIR}/remote - BOARD ${SB_CONFIG_REMOTE_BOARD} - ) -set_property(GLOBAL APPEND PROPERTY PM_DOMAINS CPUNET) -set_property(GLOBAL APPEND PROPERTY PM_CPUNET_IMAGES remote) -set_property(GLOBAL PROPERTY DOMAIN_APP_CPUNET remote) -set(CPUNET_PM_DOMAIN_DYNAMIC_PARTITION remote CACHE INTERNAL "") - -# Add a dependency so that the remote sample will be built and flashed first -add_dependencies(hello_world remote) -# Add dependency so that the remote image is flashed first. -sysbuild_add_dependencies(FLASH hello_world remote) diff --git a/samples/multicore/hello_world/sysbuild/nrf5340dk_nrf5340_cpunet.conf b/samples/multicore/hello_world/sysbuild/nrf5340dk_nrf5340_cpunet.conf deleted file mode 100644 index b8ae05d4ef6f..000000000000 --- a/samples/multicore/hello_world/sysbuild/nrf5340dk_nrf5340_cpunet.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf5340dk/nrf5340/cpunet" diff --git a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr.conf b/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr.conf deleted file mode 100644 index f50bc8553a01..000000000000 --- a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf54h20dk/nrf54h20/cpuppr" diff --git a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr_xip.conf b/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr_xip.conf deleted file mode 100644 index 270c92c09a4f..000000000000 --- a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpuppr_xip.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf54h20dk/nrf54h20/cpuppr/xip" diff --git a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf b/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf deleted file mode 100644 index dd863e78d993..000000000000 --- a/samples/multicore/hello_world/sysbuild/nrf54h20dk_nrf54h20_cpurad.conf +++ /dev/null @@ -1 +0,0 @@ -SB_CONFIG_REMOTE_BOARD="nrf54h20dk/nrf54h20/cpurad"