On Sat, 21 Jan 2023 17:13:06 -0600 Samuel Holland <sam...@sholland.org> wrote:
Hi, > Now that a regulator driver exists for this PMIC, hook it up to the > device tree "regulators" subnodes. > > Signed-off-by: Samuel Holland <sam...@sholland.org> > --- > > (no changes since v1) > > drivers/power/pmic/axp.c | 18 ++++++++++++++++++ > 1 file changed, 18 insertions(+) > > diff --git a/drivers/power/pmic/axp.c b/drivers/power/pmic/axp.c > index e0005994e2..025dac24f2 100644 > --- a/drivers/power/pmic/axp.c > +++ b/drivers/power/pmic/axp.c > @@ -45,14 +45,32 @@ static struct dm_pmic_ops axp_pmic_ops = { > .write = dm_i2c_write, > }; > > +static const struct pmic_child_info axp_pmic_child_info[] = { > + { "aldo", "axp_regulator" }, > + { "bldo", "axp_regulator" }, > + { "cldo", "axp_regulator" }, > + { "dc", "axp_regulator" }, > + { "dldo", "axp_regulator" }, > + { "eldo", "axp_regulator" }, > + { "fldo", "axp_regulator" }, > + { "ldo", "axp_regulator" }, Technically I think this list misses "rtc" (for rtc[_-]ldo), but those are real fixed regulators, and I see only one weird consumer (GPS device in sun8i-a83t-tbs-a711.dts, not relevant to U-Boot), so I think it's fine. Should an actual user emerge, we can always add it. Reviewed-by: Andre Przywara <andre.przyw...@arm.com> Cheers, Andre > + { "sw", "axp_regulator" }, > + { } > +}; > + > static int axp_pmic_bind(struct udevice *dev) > { > + ofnode regulators_node; > int ret; > > ret = dm_scan_fdt_dev(dev); > if (ret) > return ret; > > + regulators_node = dev_read_subnode(dev, "regulators"); > + if (ofnode_valid(regulators_node)) > + pmic_bind_children(dev, regulators_node, axp_pmic_child_info); > + > if (CONFIG_IS_ENABLED(SYSRESET)) { > ret = device_bind_driver_to_node(dev, "axp_sysreset", > "axp_sysreset", > dev_ofnode(dev), NULL);