Re: [PATCH v4 4/4] staging: greybus: arche-platform: Switch to the gpio descriptor interface

From: Johan Hovold
Date: Wed Jan 09 2019 - 06:35:49 EST


On Sat, Dec 22, 2018 at 08:23:02PM +0530, Nishad Kamdar wrote:
> Use the gpiod interface instead of the deprecated
> old non-descriptor interface.
>
> Signed-off-by: Nishad Kamdar <nishadkamdar@xxxxxxxxx>
> ---
> Changes in v4:
> - Move 'gpio_desc *svc_sysboot' below the reset flag
> as it is more logical to have reset flag below
> reset gpio.
> - Remove a few unnecessary line breaks.
> Changes in v3:
> - Add this patch to a patchset.
> Changes in v2:
> - Move comment to the same line as to what it applies to.
> ---

> -static inline void svc_reset_onoff(unsigned int gpio, bool onoff)
> +static inline void svc_reset_onoff(struct gpio_desc *gpio, bool onoff)
> {
> - gpio_set_value(gpio, onoff);
> + gpiod_set_value(gpio, onoff);
> }

Please use the raw interface here too, until we've done away with the
polarity properties and can honour the generic device tree flags. Please
make a comment about this in the commit message too.

> @@ -444,61 +438,33 @@ static int arche_platform_probe(struct platform_device *pdev)
> /* setup svc reset gpio */
> arche_pdata->is_reset_act_hi = of_property_read_bool(np,
> "svc,reset-active-high");
> - arche_pdata->svc_reset_gpio = of_get_named_gpio(np,
> - "svc,reset-gpio",
> - 0);
> - if (!gpio_is_valid(arche_pdata->svc_reset_gpio)) {
> - dev_err(dev, "failed to get reset-gpio\n");
> - return arche_pdata->svc_reset_gpio;
> - }
> - ret = devm_gpio_request(dev, arche_pdata->svc_reset_gpio, "svc-reset");
> - if (ret) {
> - dev_err(dev, "failed to request svc-reset gpio:%d\n", ret);
> - return ret;
> - }
> - ret = gpio_direction_output(arche_pdata->svc_reset_gpio,
> - arche_pdata->is_reset_act_hi);
> - if (ret) {
> - dev_err(dev, "failed to set svc-reset gpio dir:%d\n", ret);
> + if (arche_pdata->is_reset_act_hi)
> + flags = GPIOD_OUT_HIGH;
> + else
> + flags = GPIOD_OUT_LOW;
> +
> + arche_pdata->svc_reset = devm_gpiod_get(dev, "svc,reset-gpio", flags);

Again, you cannot just rename devicetree properties like this. Keep the
current names for now (and drop the -gpio suffix when requesting).

Johan