aboutsummaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorNicolas Le Bayon <nicolas.le.bayon@st.com>2020-03-10 18:18:45 +0100
committerYann Gautier <yann.gautier@foss.st.com>2021-06-22 14:10:27 +0200
commita4bcfe94e73db89ce2ebbb23c8e33e51eea5026a (patch)
tree5a6f8cb42483199cdf85fe83cf827aa5bb1911af /drivers
parent42822844bfed2e9ffaeae850cc60f5c3d4d9d654 (diff)
downloadtrusted-firmware-a-a4bcfe94e73db89ce2ebbb23c8e33e51eea5026a.tar.gz
fix(drivers/st/pmic): missing error check
In pmic_operate(), "regulators" node value must be checked before entering in the fdt_for_each_subnode loop. Change-Id: I1460cd24ec56ec47ab644f396b71b92973e75fb4 Signed-off-by: Nicolas Le Bayon <nicolas.le.bayon@st.com> Signed-off-by: Yann Gautier <yann.gautier@st.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/st/pmic/stm32mp_pmic.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/st/pmic/stm32mp_pmic.c b/drivers/st/pmic/stm32mp_pmic.c
index 2e925826d1..be410a1f49 100644
--- a/drivers/st/pmic/stm32mp_pmic.c
+++ b/drivers/st/pmic/stm32mp_pmic.c
@@ -121,6 +121,9 @@ int dt_pmic_configure_boot_on_regulators(void)
}
regulators_node = fdt_subnode_offset(fdt, pmic_node, "regulators");
+ if (regulators_node < 0) {
+ return -ENOENT;
+ }
fdt_for_each_subnode(regulator_node, fdt, regulators_node) {
const fdt32_t *cuint;