Re: [PATCH 1/2] regulator: mt6370: Use 'fwnode_gpiod_get_index' to fix gpio parsing

From: AngeloGioacchino Del Regno
Date: Wed Jun 29 2022 - 04:23:14 EST


Il 29/06/22 03:41, cy_huang ha scritto:
From: ChiYuan Huang <cy_huang@xxxxxxxxxxx>

From the common binding, 'enable-gpio' or 'enable-gpios' are all well
for external 'enable' gpio.

'gpiod_get_from_of_node' only parse the 'enable' property, it need to
add the gpio suffix. It's more convenient to use fwnode_gpiod_get_index.
Although fwnode parsing is not preferred, but 'of_parse_cb' already can
guarantee the callback will only be used by regulator of_node parsing.

Signed-off-by: ChiYuan Huang <cy_huang@xxxxxxxxxxx>
---
drivers/regulator/mt6370-regulator.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/regulator/mt6370-regulator.c b/drivers/regulator/mt6370-regulator.c
index bc356b4..949b2c7 100644
--- a/drivers/regulator/mt6370-regulator.c
+++ b/drivers/regulator/mt6370-regulator.c
@@ -153,7 +153,8 @@ static int mt6370_of_parse_cb(struct device_node *np,
struct gpio_desc *enable_gpio;
int ret;
- enable_gpio = gpiod_get_from_of_node(np, "enable", 0, GPIOD_OUT_HIGH |
+ enable_gpio = fwnode_gpiod_get_index(of_fwnode_handle(np), "enable", 0,

Since this driver is never calling gpiod_put(), you can even fix that in one shot.

Just use devm_fwnode_gpiod_get() here, as it's guaranteed that priv->dev is
initialized at this time.

Cheers,
Angelo