
When bootph-all is enabled for a syscon driver, the device may leave unprobed when syscon_get_regmap is called by another driver.
Perform device_probe in syscon_get_regmap, there is no side affect as device_probe will return 0 quickly for an activated device.
Signed-off-by: Jiaxun Yang jiaxun.yang@flygoat.com --- drivers/core/syscon-uclass.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/core/syscon-uclass.c b/drivers/core/syscon-uclass.c index f0e69d7216b3..b09f7013194d 100644 --- a/drivers/core/syscon-uclass.c +++ b/drivers/core/syscon-uclass.c @@ -32,10 +32,14 @@ */ struct regmap *syscon_get_regmap(struct udevice *dev) { + int ret; struct syscon_uc_info *priv;
if (device_get_uclass_id(dev) != UCLASS_SYSCON) return ERR_PTR(-ENOEXEC); + ret = device_probe(dev); + if (ret) + return ERR_PTR(ret); priv = dev_get_uclass_priv(dev); return priv->regmap; }