# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/bus/st,stm32-etzpc.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: STM32 Extended TrustZone protection controller description: | The ETZPC configures TrustZone security in a SoC having bus masters and devices with programmable-security attributes (securable resources). maintainers: - Gatien Chevallier select: properties: compatible: contains: const: st,stm32-etzpc required: - compatible properties: compatible: items: - const: st,stm32-etzpc - const: simple-bus reg: maxItems: 1 "#address-cells": const: 1 "#size-cells": const: 1 ranges: true "#access-controller-cells": const: 1 description: Contains the firewall ID associated to the peripheral. patternProperties: "^.*@[0-9a-f]+$": description: Peripherals type: object additionalProperties: true required: - access-controllers required: - compatible - reg - "#address-cells" - "#size-cells" - "#access-controller-cells" - ranges additionalProperties: false examples: - | // In this example, the usart2 device refers to rifsc as its access // controller. // Access rights are verified before creating devices. #include #include #include etzpc: bus@5c007000 { compatible = "st,stm32-etzpc", "simple-bus"; reg = <0x5c007000 0x400>; #address-cells = <1>; #size-cells = <1>; #access-controller-cells = <1>; ranges; usart2: serial@4c001000 { compatible = "st,stm32h7-uart"; reg = <0x4c001000 0x400>; interrupts-extended = <&exti 27 IRQ_TYPE_LEVEL_HIGH>; clocks = <&rcc USART2_K>; resets = <&rcc USART2_R>; wakeup-source; dmas = <&dmamux1 43 0x400 0x5>, <&dmamux1 44 0x400 0x1>; dma-names = "rx", "tx"; access-controllers = <&etzpc 17>; }; };