[PATCH 04/11] power: domain: meson-ee-pwrc: use dev_read_phandle_with_args for ao-sysctrl

Peng Fan (OSS) peng.fan at oss.nxp.com
Thu Jun 4 14:20:27 CEST 2026


From: Peng Fan <peng.fan at nxp.com>

Replace the manual ofnode_read_u32() + ofnode_get_by_phandle() sequence
with a single dev_read_phandle_with_args() call to resolve the
amlogic,ao-sysctrl phandle. This is cleaner and avoids the intermediate
phandle value and ofnode_valid() check.

No functional change.

Signed-off-by: Peng Fan <peng.fan at nxp.com>
---
 drivers/power/domain/meson-ee-pwrc.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/drivers/power/domain/meson-ee-pwrc.c b/drivers/power/domain/meson-ee-pwrc.c
index 6361f3a6c59..882238f2937 100644
--- a/drivers/power/domain/meson-ee-pwrc.c
+++ b/drivers/power/domain/meson-ee-pwrc.c
@@ -435,8 +435,7 @@ static const struct udevice_id meson_ee_pwrc_ids[] = {
 static int meson_ee_pwrc_probe(struct udevice *dev)
 {
 	struct meson_ee_pwrc_priv *priv = dev_get_priv(dev);
-	u32 ao_phandle;
-	ofnode ao_node;
+	struct ofnode_phandle_args args;
 	int ret;
 
 	priv->data = (void *)dev_get_driver_data(dev);
@@ -447,16 +446,12 @@ static int meson_ee_pwrc_probe(struct udevice *dev)
 	if (IS_ERR(priv->regmap_hhi))
 		return PTR_ERR(priv->regmap_hhi);
 
-	ret = ofnode_read_u32(dev_ofnode(dev), "amlogic,ao-sysctrl",
-			      &ao_phandle);
+	ret = dev_read_phandle_with_args(dev, "amlogic,ao-sysctrl", NULL, 0, 0,
+					 &args);
 	if (ret)
 		return ret;
 
-	ao_node = ofnode_get_by_phandle(ao_phandle);
-	if (!ofnode_valid(ao_node))
-		return -EINVAL;
-
-	priv->regmap_ao = syscon_node_to_regmap(ao_node);
+	priv->regmap_ao = syscon_node_to_regmap(args.node);
 	if (IS_ERR(priv->regmap_ao))
 		return PTR_ERR(priv->regmap_ao);
 

-- 
2.51.0



More information about the U-Boot mailing list