OSDN Git Service

regulator: tps65132: switch to using devm_fwnode_gpiod_get()
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Fri, 4 Oct 2019 23:10:16 +0000 (16:10 -0700)
committerMark Brown <broonie@kernel.org>
Mon, 7 Oct 2019 13:02:16 +0000 (14:02 +0100)
devm_fwnode_get_index_gpiod_from_child() is going away as the name is
too unwieldy, let's switch to using the new devm_fwnode_gpiod_get().

Note that we no longer need to check for NULL as devm_fwnode_gpiod_get()
will return -ENOENT if GPIO is missing.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Link: https://lore.kernel.org/r/20191004231017.130290-7-dmitry.torokhov@gmail.com
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/regulator/tps65132-regulator.c

index e302bd0..7b0e38f 100644 (file)
@@ -136,9 +136,10 @@ static int tps65132_of_parse_cb(struct device_node *np,
        struct tps65132_reg_pdata *rpdata = &tps->reg_pdata[desc->id];
        int ret;
 
-       rpdata->en_gpiod = devm_fwnode_get_index_gpiod_from_child(tps->dev,
-                                       "enable", 0, &np->fwnode, 0, "enable");
-       if (IS_ERR_OR_NULL(rpdata->en_gpiod)) {
+       rpdata->en_gpiod = devm_fwnode_gpiod_get(tps->dev, of_fwnode_handle(np),
+                                                "enable", GPIOD_ASIS,
+                                                "enable");
+       if (IS_ERR(rpdata->en_gpiod)) {
                ret = PTR_ERR(rpdata->en_gpiod);
 
                /* Ignore the error other than probe defer */
@@ -147,10 +148,12 @@ static int tps65132_of_parse_cb(struct device_node *np,
                return 0;
        }
 
-       rpdata->act_dis_gpiod = devm_fwnode_get_index_gpiod_from_child(
-                                       tps->dev, "active-discharge", 0,
-                                       &np->fwnode, 0, "active-discharge");
-       if (IS_ERR_OR_NULL(rpdata->act_dis_gpiod)) {
+       rpdata->act_dis_gpiod = devm_fwnode_gpiod_get(tps->dev,
+                                                     of_fwnode_handle(np),
+                                                     "active-discharge",
+                                                     GPIOD_ASIS,
+                                                     "active-discharge");
+       if (IS_ERR(rpdata->act_dis_gpiod)) {
                ret = PTR_ERR(rpdata->act_dis_gpiod);
 
                /* Ignore the error other than probe defer */