summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-stm32mp
diff options
context:
space:
mode:
authorMarco Felsch <m.felsch@pengutronix.de>2021-06-25 09:25:36 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2021-06-25 10:01:00 +0200
commitf14c861ca6927e4592c459d7963ed712b6412b38 (patch)
tree3a782c556e6d064d56a78999eca39fdac4bf360f /arch/arm/mach-stm32mp
parent33ea0fbcb1b9eb27322e1d5a112bbac7fa39f69f (diff)
downloadbarebox-f14c861ca6927e4592c459d7963ed712b6412b38.tar.gz
barebox-f14c861ca6927e4592c459d7963ed712b6412b38.tar.xz
ARM: stm32mp: ddrctrl: add deep-probe support
In case of deep-probe we have to ensure that the memory device is available after the mem_initcall(). Signed-off-by: Marco Felsch <m.felsch@pengutronix.de> Link: https://lore.pengutronix.de/20201021115813.31645-10-m.felsch@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Link: https://lore.barebox.org/20210625072540.32717-16-s.hauer@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-stm32mp')
-rw-r--r--arch/arm/mach-stm32mp/ddrctrl.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/arm/mach-stm32mp/ddrctrl.c b/arch/arm/mach-stm32mp/ddrctrl.c
index 43486c57c5..7f2013c22d 100644
--- a/arch/arm/mach-stm32mp/ddrctrl.c
+++ b/arch/arm/mach-stm32mp/ddrctrl.c
@@ -146,4 +146,14 @@ static struct driver_d stm32mp1_ddr_driver = {
.of_compatible = DRV_OF_COMPAT(stm32mp1_ddr_dt_ids),
};
-mem_platform_driver(stm32mp1_ddr_driver);
+static int stm32mp1_ddr_init(void)
+{
+ int ret;
+
+ ret = platform_driver_register(&stm32mp1_ddr_driver);
+ if (ret)
+ return ret;
+
+ return of_devices_ensure_probed_by_dev_id(stm32mp1_ddr_dt_ids);
+}
+mem_initcall(stm32mp1_ddr_init);