aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorEtienne Carriere <etienne.carriere@st.com>2019-12-02 10:11:32 +0100
committerEtienne Carriere <etienne.carriere@st.com>2020-07-08 12:56:20 +0200
commit66de6f3c30b223b40f31d321a18f50d446898e66 (patch)
tree467411e026388f566e771d9a6954df6763a6ec54 /drivers
parentbcc360f7e0dfd9933d45cbdca1245d8634487751 (diff)
downloadtrusted-firmware-a-66de6f3c30b223b40f31d321a18f50d446898e66.tar.gz
drivers/stm32_gpio: register GPIO resources as secure or not
Register in the shared resources driver the secure or non-secure state of the GPIO pins. Change-Id: Ifda473bcbbb0af799be6587961d6641edf887605 Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/st/gpio/stm32_gpio.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/st/gpio/stm32_gpio.c b/drivers/st/gpio/stm32_gpio.c
index a13c341a81..bb77371bf3 100644
--- a/drivers/st/gpio/stm32_gpio.c
+++ b/drivers/st/gpio/stm32_gpio.c
@@ -254,6 +254,15 @@ void set_gpio(uint32_t bank, uint32_t pin, uint32_t mode, uint32_t speed,
mmio_read_32(base + GPIO_AFRH_OFFSET));
stm32mp_clk_disable(clock);
+
+ if (status == DT_SECURE) {
+ stm32mp_register_secure_gpio(bank, pin);
+ set_gpio_secure_cfg(bank, pin, true);
+
+ } else {
+ stm32mp_register_non_secure_gpio(bank, pin);
+ set_gpio_secure_cfg(bank, pin, false);
+ }
}
void set_gpio_secure_cfg(uint32_t bank, uint32_t pin, bool secure)