Commit 522235e4 authored by Nolwenn Violette's avatar Nolwenn Violette Committed by Ioannis Glaropoulos
Browse files

boards: nucleo_l552ze_q: Add non secure target



This commit adds a second target for the nucleo_l552ze_q board.
The non secure target is configured for TFM applications.

Signed-off-by: default avatarNolwenn Violette <nolwenn.violette01@st.com>
parent bc90cf0d
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -152,6 +152,8 @@ The Zephyr nucleo_l552ze_q board configuration supports the following hardware f
+-----------+------------+-------------------------------------+
| SPI       | on-chip    | spi                                 |
+-----------+------------+-------------------------------------+
| TrustZone | on-chip    | Trusted Firmware-M                  |
+-----------+------------+-------------------------------------+

Other hardware features are not yet supported on this Zephyr port.

@@ -270,6 +272,11 @@ You should see the following message on the console:

   Hello World! arm

Building a secure/non-secure with Arm |reg| TrustZone |reg|
-----------------------------------------------------------

The TF-M integration sample :ref:`tfm_ipc` can be run by a Nucleo L552ZE Q, using the ``nucleo_l552ze_q_ns`` target. When building a ``*_ns`` image with TF-M, a ``build/tfm/install/postbuild.sh`` bash script will be run as a post-build step to make some required flash layout changes. The ``build/tfm/install/postbuild.sh`` script will also be used to flash the board. Check the ``build/tfm/install`` directory to ensure that the commands required by these scripts (``readlink``, etc.) are available on your system.

Debugging
=========

+34 −0
Original line number Diff line number Diff line
/*
 * Copyright (c) 2020 Linaro Limited
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <st/l5/stm32l552Xe.dtsi>
#include "arduino_r3_connector.dtsi"

/ {
    leds {
		compatible = "gpio-leds";
		green_led_1: led_1 {
			gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>;
			label = "User LD1";
		};
		blue_led_1: led_2 {
			gpios = <&gpiob 7 GPIO_ACTIVE_HIGH>;
			label = "User LD2";
		};
		red_led_1: led_3 {
			gpios = <&gpioa 9 GPIO_ACTIVE_HIGH>;
			label = "User LD3";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		user_button: button {
			label = "User";
			gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
		};
	};
};
+1 −26
Original line number Diff line number Diff line
@@ -5,8 +5,7 @@
 */

/dts-v1/;
#include <st/l5/stm32l552Xe.dtsi>
#include "arduino_r3_connector.dtsi"
#include "nucleo_l552ze_q-common.dtsi"

/ {
	model = "STMicroelectronics STM32L552ZE-NUCLEO-Q board";
@@ -22,30 +21,6 @@
		zephyr,flash = &flash0;
	};

	leds {
		compatible = "gpio-leds";
		green_led_1: led_1 {
			gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>;
			label = "User LD1";
		};
		blue_led_1: led_2 {
			gpios = <&gpiob 7 GPIO_ACTIVE_HIGH>;
			label = "User LD2";
		};
		red_led_1: led_3 {
			gpios = <&gpioa 9 GPIO_ACTIVE_HIGH>;
			label = "User LD3";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		user_button: button {
			label = "User";
			gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
		};
	};

	aliases {
		led0 = &blue_led_1;
		sw0 = &user_button;
+33 −0
Original line number Diff line number Diff line
/*
 * Copyright (c) 2020 STMicroelectronics
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include "nucleo_l552ze_q-common.dtsi"

/ {
	model = "STMicroelectronics STM32L552ZE-NUCLEO-Q board";
	compatible = "st,stm32l552ze-nucleo-q", "st,stm32l552";

	#address-cells = <1>;
	#size-cells = <1>;

	chosen {
		zephyr,console = &lpuart1;
		zephyr,shell-uart = &lpuart1;
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
	};

	aliases {
		led0 = &blue_led_1;
		sw0 = &user_button;
	};
};

&lpuart1 {
	current-speed = <115200>;
	status = "okay";
};
+11 −0
Original line number Diff line number Diff line
identifier: nucleo_l552ze_q_ns
name: ST Nucleo L552ZE Q non secure
type: mcu
arch: arm
toolchain:
  - zephyr
  - gnuarmemb
supported:
  - gpio
ram: 192
flash: 328
Loading