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: