2014-10-23 08:17:15

by Alexandre Courbot

[permalink] [raw]
Subject: [PATCH] drm/panel: s6e8aa0: Update calls to gpiod_get*()

Add the new flags argument to calls of (devm_)gpiod_get*() and
remove any direction setting code afterwards.

Currently both forms (with or without the flags argument)
are valid thanks to transitional macros in
<linux/gpio/consumer.h>. These macros will be removed once
all consumers are updated and the flags argument will become
compulsary.

Signed-off-by: Alexandre Courbot <[email protected]>
---
drivers/gpu/drm/panel/panel-s6e8aa0.c | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-s6e8aa0.c b/drivers/gpu/drm/panel/panel-s6e8aa0.c
index b5217fe37f02..6427aa187735 100644
--- a/drivers/gpu/drm/panel/panel-s6e8aa0.c
+++ b/drivers/gpu/drm/panel/panel-s6e8aa0.c
@@ -1019,17 +1019,12 @@ static int s6e8aa0_probe(struct mipi_dsi_device *dsi)
return ret;
}

- ctx->reset_gpio = devm_gpiod_get(dev, "reset");
+ ctx->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
if (IS_ERR(ctx->reset_gpio)) {
dev_err(dev, "cannot get reset-gpios %ld\n",
PTR_ERR(ctx->reset_gpio));
return PTR_ERR(ctx->reset_gpio);
}
- ret = gpiod_direction_output(ctx->reset_gpio, 1);
- if (ret < 0) {
- dev_err(dev, "cannot configure reset-gpios %d\n", ret);
- return ret;
- }

ctx->brightness = GAMMA_LEVEL_NUM - 1;

--
2.1.2


2014-10-23 08:17:13

by Alexandre Courbot

[permalink] [raw]
Subject: [PATCH] drm/panel: simple: Update calls to gpiod_get*()

Add the new flags argument to calls of (devm_)gpiod_get*() and
remove any direction setting code afterwards.

Currently both forms (with or without the flags argument)
are valid thanks to transitional macros in
<linux/gpio/consumer.h>. These macros will be removed once
all consumers are updated and the flags argument will become
compulsary.

Signed-off-by: Alexandre Courbot <[email protected]>
---
drivers/gpu/drm/panel/panel-simple.c | 11 ++---------
1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 23de22f8c820..83d93062930d 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -247,21 +247,14 @@ static int panel_simple_probe(struct device *dev, const struct panel_desc *desc)
if (IS_ERR(panel->supply))
return PTR_ERR(panel->supply);

- panel->enable_gpio = devm_gpiod_get_optional(dev, "enable");
+ panel->enable_gpio = devm_gpiod_get_optional(dev, "enable",
+ GPIOD_OUT_LOW);
if (IS_ERR(panel->enable_gpio)) {
err = PTR_ERR(panel->enable_gpio);
dev_err(dev, "failed to request GPIO: %d\n", err);
return err;
}

- if (panel->enable_gpio) {
- err = gpiod_direction_output(panel->enable_gpio, 0);
- if (err < 0) {
- dev_err(dev, "failed to setup GPIO: %d\n", err);
- return err;
- }
- }
-
backlight = of_parse_phandle(dev->of_node, "backlight", 0);
if (backlight) {
panel->backlight = of_find_backlight_by_node(backlight);
--
2.1.2

2014-10-23 09:46:15

by Andrzej Hajda

[permalink] [raw]
Subject: Re: [PATCH] drm/panel: s6e8aa0: Update calls to gpiod_get*()

On 10/23/2014 10:16 AM, Alexandre Courbot wrote:
> Add the new flags argument to calls of (devm_)gpiod_get*() and
> remove any direction setting code afterwards.
>
> Currently both forms (with or without the flags argument)
> are valid thanks to transitional macros in
> <linux/gpio/consumer.h>. These macros will be removed once
> all consumers are updated and the flags argument will become
> compulsary.
>
> Signed-off-by: Alexandre Courbot <[email protected]>

It needs patch "gpio: Fix gpio direction flags not getting set" to work
correctly. It is not yet present in drm-next. Beside this:

Acked-by: Andrzej Hajda <[email protected]>

--
Regards
Andrzej


> ---
> drivers/gpu/drm/panel/panel-s6e8aa0.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/panel/panel-s6e8aa0.c b/drivers/gpu/drm/panel/panel-s6e8aa0.c
> index b5217fe37f02..6427aa187735 100644
> --- a/drivers/gpu/drm/panel/panel-s6e8aa0.c
> +++ b/drivers/gpu/drm/panel/panel-s6e8aa0.c
> @@ -1019,17 +1019,12 @@ static int s6e8aa0_probe(struct mipi_dsi_device *dsi)
> return ret;
> }
>
> - ctx->reset_gpio = devm_gpiod_get(dev, "reset");
> + ctx->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
> if (IS_ERR(ctx->reset_gpio)) {
> dev_err(dev, "cannot get reset-gpios %ld\n",
> PTR_ERR(ctx->reset_gpio));
> return PTR_ERR(ctx->reset_gpio);
> }
> - ret = gpiod_direction_output(ctx->reset_gpio, 1);
> - if (ret < 0) {
> - dev_err(dev, "cannot configure reset-gpios %d\n", ret);
> - return ret;
> - }
>
> ctx->brightness = GAMMA_LEVEL_NUM - 1;
>
>

2014-11-06 03:34:26

by Alexandre Courbot

[permalink] [raw]
Subject: Re: [PATCH] drm/panel: s6e8aa0: Update calls to gpiod_get*()

On Thu, Oct 23, 2014 at 6:46 PM, Andrzej Hajda <[email protected]> wrote:
> On 10/23/2014 10:16 AM, Alexandre Courbot wrote:
>> Add the new flags argument to calls of (devm_)gpiod_get*() and
>> remove any direction setting code afterwards.
>>
>> Currently both forms (with or without the flags argument)
>> are valid thanks to transitional macros in
>> <linux/gpio/consumer.h>. These macros will be removed once
>> all consumers are updated and the flags argument will become
>> compulsary.
>>
>> Signed-off-by: Alexandre Courbot <[email protected]>
>
> It needs patch "gpio: Fix gpio direction flags not getting set" to work
> correctly. It is not yet present in drm-next. Beside this:
>
> Acked-by: Andrzej Hajda <[email protected]>

The required patch is now merged, can we go on with this patch?

2014-11-06 03:34:47

by Alexandre Courbot

[permalink] [raw]
Subject: Re: [PATCH] drm/panel: simple: Update calls to gpiod_get*()

On Thu, Oct 23, 2014 at 5:16 PM, Alexandre Courbot <[email protected]> wrote:
> Add the new flags argument to calls of (devm_)gpiod_get*() and
> remove any direction setting code afterwards.
>
> Currently both forms (with or without the flags argument)
> are valid thanks to transitional macros in
> <linux/gpio/consumer.h>. These macros will be removed once
> all consumers are updated and the flags argument will become
> compulsary.
>
> Signed-off-by: Alexandre Courbot <[email protected]>

Thierry, are you ok with this patch?

2014-11-06 08:51:48

by Thierry Reding

[permalink] [raw]
Subject: Re: [PATCH] drm/panel: s6e8aa0: Update calls to gpiod_get*()

On Thu, Oct 23, 2014 at 05:16:57PM +0900, Alexandre Courbot wrote:
> Add the new flags argument to calls of (devm_)gpiod_get*() and
> remove any direction setting code afterwards.
>
> Currently both forms (with or without the flags argument)
> are valid thanks to transitional macros in
> <linux/gpio/consumer.h>. These macros will be removed once
> all consumers are updated and the flags argument will become
> compulsary.
>
> Signed-off-by: Alexandre Courbot <[email protected]>
> ---
> drivers/gpu/drm/panel/panel-s6e8aa0.c | 7 +------
> 1 file changed, 1 insertion(+), 6 deletions(-)

Applied, thanks.

Thierry


Attachments:
(No filename) (622.00 B)
(No filename) (819.00 B)
Download all attachments

2014-11-06 08:58:33

by Thierry Reding

[permalink] [raw]
Subject: Re: [PATCH] drm/panel: simple: Update calls to gpiod_get*()

On Thu, Oct 23, 2014 at 05:16:58PM +0900, Alexandre Courbot wrote:
> Add the new flags argument to calls of (devm_)gpiod_get*() and
> remove any direction setting code afterwards.
>
> Currently both forms (with or without the flags argument)
> are valid thanks to transitional macros in
> <linux/gpio/consumer.h>. These macros will be removed once
> all consumers are updated and the flags argument will become
> compulsary.
>
> Signed-off-by: Alexandre Courbot <[email protected]>
> ---
> drivers/gpu/drm/panel/panel-simple.c | 11 ++---------
> 1 file changed, 2 insertions(+), 9 deletions(-)

Applied, thanks.

Thierry


Attachments:
(No filename) (627.00 B)
(No filename) (819.00 B)
Download all attachments