Platform: Add support for new SOCs: nRF5340 and nRF9160
Supporting most configurations.
This patch targets the nRF9160 and the nRF5340 application core.
The nRF5340 is a dual-core SOC (application core and network core). The
nRF5340 application core is a Cortex-M33F with TrustZone-M.
The nRF9160 is an SOC with LTE-M/NB-IOT/GPS connectivity. The nRF9160 has
a Cortex-M33F with TrustZone-M.
Common code between the two platforms has been placed into a common
directory.
The platforms do not use the tfm_common_s.ld linker script since the nRF
IDAU needs some alterations to the placement of the veneers.
The common directory contains parts of the nrfx driver framework,
copied from https://github.com/NordicSemiconductor/nrfx version 2.3.0
at commit 6c31cb7d0e4038afa1efc9bfed40206adfd7b83e.
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
Change-Id: I15b932f444aa9adf2ef2489e9ecf036c64c851a7
diff --git a/docs/contributing/maintainers.rst b/docs/contributing/maintainers.rst
index 546c42f..a8bf34c 100644
--- a/docs/contributing/maintainers.rst
+++ b/docs/contributing/maintainers.rst
@@ -123,6 +123,22 @@
:github: `RaymondNgun <https://github.com/RaymondNgun>`__
+Nordic Semiconductor Platforms
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Ioannis Glaropoulos
+ :email: `ioannis.glaropoulos@nordicsemi.no <ioannis.glaropoulos@nordicsemi.no>`__
+ :github: `ioannisg <https://github.com/ioannisg>`__
+
+Andrzej Głąbek
+ :email: `andrzej.glabek@nordicsemi.no <andrzej.glabek@nordicsemi.no>`__
+ :github: `anangl <https://github.com/anangl>`__
+
+Øyvind Rønningstad
+ :email: `oyvind.ronningstad@nordicsemi.no <oyvind.ronningstad@nordicsemi.no>`__
+ :github: `oyvindronningstad <https://github.com/oyvindronningstad>`__
+
+
=============
*Copyright (c) 2017-2020, Arm Limited. All rights reserved.*
diff --git a/docs/getting_started/tfm_integration_guide.rst b/docs/getting_started/tfm_integration_guide.rst
index 1ede080..7d39b8a 100644
--- a/docs/getting_started/tfm_integration_guide.rst
+++ b/docs/getting_started/tfm_integration_guide.rst
@@ -29,6 +29,8 @@
- CoreLink SSE-200 Subsystem for MPS3 (AN524)
- DesignStart FPGA on Cloud: Cortex-M33 based platform (SSE-200_AWS)
- STM32L5xx: Cortex-M33 based platform (STM32L562 and STM32L552 socs)
+- nRF9160 DK (Cortex-M33)
+- nRF5340 PDK (Cortex-M33 Application MCU)
The files related to the supported platforms are contained under the
``platform`` subfolder. The platform specific files are under
@@ -57,6 +59,12 @@
More information about the STM32L5xx platform can be found in:
`STM32L5 series product page <https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-ultra-low-power-mcus/stm32l5-series.html>`__
+More information about the nRF5340 PDK platform can be found in:
+`nRF5340 PDK product page <https://www.nordicsemi.com/Software-and-tools/Development-Kits/nRF5340-PDK>`__
+
+More information about the nRF9160 DK platform can be found in:
+`nRF9160 DK product page <https://www.nordicsemi.com/Software-and-tools/Development-Kits/nRF9160-DK>`__
+
Generic drivers and startup/scatter files
=========================================
The addition of a new platform means the creation of a new subfolder inside
diff --git a/docs/getting_started/tfm_secure_boot.rst b/docs/getting_started/tfm_secure_boot.rst
index e29630e..57e3d3c 100644
--- a/docs/getting_started/tfm_secure_boot.rst
+++ b/docs/getting_started/tfm_secure_boot.rst
@@ -254,6 +254,10 @@
+---------------------+-----------------+---------------+----------+----------------+--------------+
| STM_NUCLEO_L552ZE_Q | No | Yes | No | No | No |
+---------------------+-----------------+---------------+----------+----------------+--------------+
+| nRF9160 DK | Yes | Yes | No | No | No |
++---------------------+-----------------+---------------+----------+----------------+--------------+
+| nRF5340 PDK | Yes | Yes | No | No | No |
++---------------------+-----------------+---------------+----------+----------------+--------------+
.. [1] To disable BL2, please set the ``BL2`` cmake option to ``OFF``
diff --git a/docs/introduction/readme.rst b/docs/introduction/readme.rst
index 55fdd5b..e8fb4e7 100644
--- a/docs/introduction/readme.rst
+++ b/docs/introduction/readme.rst
@@ -141,6 +141,10 @@
<https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-l552ze-q.html>`_
- `DISCO L562QE.
<https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-discovery-kits/stm32l562e-dk.html>`_
+ - `nRF9160 DK (nordic_nrf/nrf9160dk_nrf9160).
+ <https://www.nordicsemi.com/Software-and-tools/Development-Kits/nRF9160-DK>`_
+ - `nRF5340 PDK (nordic_nrf/nrf5340pdk_nrf5340_cpuapp).
+ <https://www.nordicsemi.com/Software-and-tools/Development-Kits/nRF5340-PDK>`_
- Cortex-M23 system: