summaryrefslogtreecommitdiff
path: root/arch/arm/mach-stm32mp/syscon.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2021-07-16 09:15:05 -0400
committerTom Rini <trini@konsulko.com>2021-07-16 09:15:05 -0400
commit7533f80bec2e76f98df32e031ba5fe37927cd89f (patch)
treeb83b37c93196238fce4ab1410f65bd44d014026b /arch/arm/mach-stm32mp/syscon.c
parentd3fc3da9a4fb98104d004b025149ec6dadccc2cd (diff)
parentdb1ab52e15135eb1efab512bc30d4e1b4789b434 (diff)
Merge tag 'u-boot-stm32-20210715' of https://source.denx.de/u-boot/custodians/u-boot-stm
- DTS: alignment with Linux kernel v5.13 for stm32mp15 boards - STM32MP1: update the stm32key command - STM32MP1: activate the rng command - STM32MP1: fix the stm32prog command (help, parttition size) - STM32MP1: add fdtoverlay_addr_r variable - STM32MP1: correctly managed SYSCON/SYSCFG clock - STM32MP1: remove mmc alias and directly use device instance in boot_instance variable
Diffstat (limited to 'arch/arm/mach-stm32mp/syscon.c')
-rw-r--r--arch/arm/mach-stm32mp/syscon.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm/mach-stm32mp/syscon.c b/arch/arm/mach-stm32mp/syscon.c
index 3e61ce40978..a0e8e1dfdc5 100644
--- a/arch/arm/mach-stm32mp/syscon.c
+++ b/arch/arm/mach-stm32mp/syscon.c
@@ -4,6 +4,7 @@
*/
#include <common.h>
+#include <clk.h>
#include <dm.h>
#include <syscon.h>
#include <asm/arch/stm32.h>
@@ -14,9 +15,22 @@ static const struct udevice_id stm32mp_syscon_ids[] = {
{ }
};
+static int stm32mp_syscon_probe(struct udevice *dev)
+{
+ struct clk_bulk clk_bulk;
+ int ret;
+
+ ret = clk_get_bulk(dev, &clk_bulk);
+ if (!ret)
+ clk_enable_bulk(&clk_bulk);
+
+ return 0;
+}
+
U_BOOT_DRIVER(syscon_stm32mp) = {
.name = "stmp32mp_syscon",
.id = UCLASS_SYSCON,
.of_match = stm32mp_syscon_ids,
.bind = dm_scan_fdt_dev,
+ .probe = stm32mp_syscon_probe,
};