From 158b18fddc816493e1f609fd00b6a5984435dd70 Mon Sep 17 00:00:00 2001 From: Marco Felsch Date: Mon, 28 Sep 2020 17:50:31 +0200 Subject: regulator: stpmic1: fix registering missed regulators The dts regulators subnode can be incomplete e.g. if the pre-programmed values are valid and shouldn't be changed. Missing regulator nodes are indicated by "of_regulator_match->of_node == NULL". Take missing regulators into account and register only existing ones. Signed-off-by: Marco Felsch Signed-off-by: Sascha Hauer --- drivers/regulator/stpmic1_regulator.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/regulator/stpmic1_regulator.c b/drivers/regulator/stpmic1_regulator.c index 71a4ae80c3..2b4b729541 100644 --- a/drivers/regulator/stpmic1_regulator.c +++ b/drivers/regulator/stpmic1_regulator.c @@ -383,6 +383,11 @@ static int stpmic1_regulator_register(struct device_d *dev, int id, { int ret; + if (!match->of_node) { + dev_dbg(dev, "Skip missing DTB regulator %s", match->name); + return 0; + } + cfg->dev = dev; cfg->rdev.desc = &cfg->desc; cfg->rdev.regmap = dev_get_regmap(dev->parent, NULL); -- cgit v1.2.3