[PATCH v3 0/5] STM32 ETZPC bus controller

From: Benjamin Gaignard
Date: Tue May 05 2020 - 03:33:39 EST


STM32 Extended TrustZone Protection controller act like a firewall on the
platform bus. Depending of its configuration devices could be accessible
by the TrustZone, the co-processor or the non-secure world. ETZPC
configuration could evolve at runtime for example to switch a device from
non-secure world to co-processor.

The series introduce 'firewall' helpers to handle the new devices-tree
properties. These properties are not dedicated to ETZPC and will be reused
for STM32 next generation of bus controller.

version 3:
- add description in firewall consumer bindings
- add Linus reviewed-by tag

version 2:
- fix unit name into st,stm32-etzpc.yaml example and DT


Benjamin Gaignard (5):
dt-bindings: bus: Add firewall bindings
bus: stm32: Introduce firewall controller helpers
dt-bindings: bus: Add STM32 ETZPC firewall controller
bus: stm32: Add stm32 ETZPC firewall bus controller
ARM: dts: stm32: Use ETZPC firewall bus

.../bindings/bus/stm32/firewall-consumer.yaml | 36 +++
.../bindings/bus/stm32/firewall-provider.yaml | 18 ++
.../bindings/bus/stm32/st,stm32-etzpc.yaml | 46 ++++
arch/arm/boot/dts/stm32mp151.dtsi | 7 +-
drivers/bus/Kconfig | 2 +
drivers/bus/Makefile | 2 +
drivers/bus/stm32/Kconfig | 11 +
drivers/bus/stm32/Makefile | 2 +
drivers/bus/stm32/firewall.c | 266 +++++++++++++++++++++
drivers/bus/stm32/firewall.h | 75 ++++++
drivers/bus/stm32/stm32-etzpc.c | 160 +++++++++++++
include/dt-bindings/bus/stm32/stm32-etzpc.h | 90 +++++++
12 files changed, 713 insertions(+), 2 deletions(-)
create mode 100644 Documentation/devicetree/bindings/bus/stm32/firewall-consumer.yaml
create mode 100644 Documentation/devicetree/bindings/bus/stm32/firewall-provider.yaml
create mode 100644 Documentation/devicetree/bindings/bus/stm32/st,stm32-etzpc.yaml
create mode 100644 drivers/bus/stm32/Kconfig
create mode 100644 drivers/bus/stm32/Makefile
create mode 100644 drivers/bus/stm32/firewall.c
create mode 100644 drivers/bus/stm32/firewall.h
create mode 100644 drivers/bus/stm32/stm32-etzpc.c
create mode 100644 include/dt-bindings/bus/stm32/stm32-etzpc.h

--
2.15.0