[PATCH] clk: qcom: Fix invalid usage of dev_read_addr
Francois Berder
fberder at outlook.fr
Mon May 25 22:46:32 CEST 2026
dev_read_addr returns a fdt_addr_t and not a pointer type.
Replace dev_read_addr by dev_read_addr_ptr.
Check that base pointer is valid.
Signed-off-by: Francois Berder <fberder at outlook.fr>
---
drivers/clk/qcom/clock-qcom.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/qcom/clock-qcom.c b/drivers/clk/qcom/clock-qcom.c
index 6b46d9db744..e238b76d42e 100644
--- a/drivers/clk/qcom/clock-qcom.c
+++ b/drivers/clk/qcom/clock-qcom.c
@@ -489,8 +489,14 @@ static const struct reset_ops qcom_reset_ops = {
static int qcom_reset_probe(struct udevice *dev)
{
+ void *base;
+
+ base = dev_read_addr_ptr(dev);
+ if (!base)
+ return -EINVAL;
+
/* Set our priv pointer to the base address */
- dev_set_priv(dev, (void *)dev_read_addr(dev));
+ dev_set_priv(dev, base);
return 0;
}
@@ -564,8 +570,14 @@ static const struct power_domain_ops qcom_power_ops = {
static int qcom_power_probe(struct udevice *dev)
{
+ void *base;
+
+ base = dev_read_addr_ptr(dev);
+ if (!base)
+ return -EINVAL;
+
/* Set our priv pointer to the base address */
- dev_set_priv(dev, (void *)dev_read_addr(dev));
+ dev_set_priv(dev, base);
return 0;
}
--
2.43.0
More information about the U-Boot
mailing list