Linux-LEDs Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH v4 0/2] backlight_lm3630a: add enable_gpios property
@ 2019-09-12 21:32 Andreas Kemnade
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
  2019-09-12 21:32 ` [PATCH v4 2/2] backlight: lm3630a: add an enable gpio for the HWEN pin Andreas Kemnade
  0 siblings, 2 replies; 9+ messages in thread
From: Andreas Kemnade @ 2019-09-12 21:32 UTC (permalink / raw)
  To: lee.jones, daniel.thompson, jingoohan1, jacek.anaszewski, pavel,
	dmurphy, robh+dt, mark.rutland, b.zolnierkie, dri-devel,
	linux-leds, devicetree, linux-kernel, linux-fbdev
  Cc: Andreas Kemnade

To be able to handle the HWEN pin of the lm3630a, add
an enable gpio to the driver and a property.

Tested on Kobo Clara HD.

Changes in v2:
simplification and reordering

Changes in v3:
added acked-by
removed legacy include

Changes in v4:
added reviewed-by
moved gpio to the right position in the bindings example

Andreas Kemnade (2):
  dt-bindings: backlight: lm3630a: add enable_gpios
  backlight: lm3630a: add an enable gpio for the HWEN pin

 .../bindings/leds/backlight/lm3630a-backlight.yaml       | 5 +++++
 drivers/video/backlight/lm3630a_bl.c                     | 9 +++++++++
 2 files changed, 14 insertions(+)

-- 
2.20.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios
  2019-09-12 21:32 [PATCH v4 0/2] backlight_lm3630a: add enable_gpios property Andreas Kemnade
@ 2019-09-12 21:32 ` Andreas Kemnade
  2019-09-13 14:06   ` Dan Murphy
                     ` (3 more replies)
  2019-09-12 21:32 ` [PATCH v4 2/2] backlight: lm3630a: add an enable gpio for the HWEN pin Andreas Kemnade
  1 sibling, 4 replies; 9+ messages in thread
From: Andreas Kemnade @ 2019-09-12 21:32 UTC (permalink / raw)
  To: lee.jones, daniel.thompson, jingoohan1, jacek.anaszewski, pavel,
	dmurphy, robh+dt, mark.rutland, b.zolnierkie, dri-devel,
	linux-leds, devicetree, linux-kernel, linux-fbdev
  Cc: Andreas Kemnade

add enable-gpios to describe HWEN pin

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
---
changes in v2: added example
changes in v3: added Acked-by
changes in v4: moved enable-gpios to the right position
  in the example
 .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
index dc129d9a329e..c8470628fe02 100644
--- a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
+++ b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
@@ -29,6 +29,10 @@ properties:
   '#size-cells':
     const: 0
 
+  enable-gpios:
+    description: GPIO to use to enable/disable the backlight (HWEN pin).
+    maxItems: 1
+
 required:
   - compatible
   - reg
@@ -96,6 +100,7 @@ examples:
         led-controller@38 {
                 compatible = "ti,lm3630a";
                 reg = <0x38>;
+                enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;
 
                 #address-cells = <1>;
                 #size-cells = <0>;
-- 
2.20.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v4 2/2] backlight: lm3630a: add an enable gpio for the HWEN pin
  2019-09-12 21:32 [PATCH v4 0/2] backlight_lm3630a: add enable_gpios property Andreas Kemnade
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
@ 2019-09-12 21:32 ` Andreas Kemnade
  2019-10-03 11:42   ` [PATCH v4 2/2] backlight: lm3630a: Add " Lee Jones
  1 sibling, 1 reply; 9+ messages in thread
From: Andreas Kemnade @ 2019-09-12 21:32 UTC (permalink / raw)
  To: lee.jones, daniel.thompson, jingoohan1, jacek.anaszewski, pavel,
	dmurphy, robh+dt, mark.rutland, b.zolnierkie, dri-devel,
	linux-leds, devicetree, linux-kernel, linux-fbdev
  Cc: Andreas Kemnade

For now just enable it in the probe function to allow i2c
access. Disabling also means resetting the register values
to default and according to the datasheet does not give
power savings.

Tested on Kobo Clara HD.

Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
Reviewed-by: Dan Murphy <dmurphy@ti.com>
Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
---
changes in v2:
- simplification
- correct gpio direction initialisation

changes in v3:
- removed legacy include

 drivers/video/backlight/lm3630a_bl.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/video/backlight/lm3630a_bl.c b/drivers/video/backlight/lm3630a_bl.c
index 8f84f3684f04..d9e67b9b2571 100644
--- a/drivers/video/backlight/lm3630a_bl.c
+++ b/drivers/video/backlight/lm3630a_bl.c
@@ -12,6 +12,7 @@
 #include <linux/uaccess.h>
 #include <linux/interrupt.h>
 #include <linux/regmap.h>
+#include <linux/gpio/consumer.h>
 #include <linux/pwm.h>
 #include <linux/platform_data/lm3630a_bl.h>
 
@@ -48,6 +49,7 @@ struct lm3630a_chip {
 	struct lm3630a_platform_data *pdata;
 	struct backlight_device *bleda;
 	struct backlight_device *bledb;
+	struct gpio_desc *enable_gpio;
 	struct regmap *regmap;
 	struct pwm_device *pwmd;
 };
@@ -535,6 +537,13 @@ static int lm3630a_probe(struct i2c_client *client,
 	}
 	pchip->pdata = pdata;
 
+	pchip->enable_gpio = devm_gpiod_get_optional(&client->dev, "enable",
+						GPIOD_OUT_HIGH);
+	if (IS_ERR(pchip->enable_gpio)) {
+		rval = PTR_ERR(pchip->enable_gpio);
+		return rval;
+	}
+
 	/* chip initialize */
 	rval = lm3630a_chip_init(pchip);
 	if (rval < 0) {
-- 
2.20.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
@ 2019-09-13 14:06   ` Dan Murphy
  2019-09-17 18:14   ` Rob Herring
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Dan Murphy @ 2019-09-13 14:06 UTC (permalink / raw)
  To: Andreas Kemnade, lee.jones, daniel.thompson, jingoohan1,
	jacek.anaszewski, pavel, robh+dt, mark.rutland, b.zolnierkie,
	dri-devel, linux-leds, devicetree, linux-kernel, linux-fbdev

Andreas

On 9/12/19 4:32 PM, Andreas Kemnade wrote:
> add enable-gpios to describe HWEN pin
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> Acked-by: Daniel Thompson <daniel.thompson@linaro.org>

Reviewed-by: Dan Murphy <dmurphy@ti.com>


> ---
> changes in v2: added example
> changes in v3: added Acked-by
> changes in v4: moved enable-gpios to the right position
>    in the example
>   .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
>   1 file changed, 5 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> index dc129d9a329e..c8470628fe02 100644
> --- a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> +++ b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> @@ -29,6 +29,10 @@ properties:
>     '#size-cells':
>       const: 0
>   
> +  enable-gpios:
> +    description: GPIO to use to enable/disable the backlight (HWEN pin).
> +    maxItems: 1
> +
>   required:
>     - compatible
>     - reg
> @@ -96,6 +100,7 @@ examples:
>           led-controller@38 {
>                   compatible = "ti,lm3630a";
>                   reg = <0x38>;
> +                enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;
>   
>                   #address-cells = <1>;
>                   #size-cells = <0>;

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
  2019-09-13 14:06   ` Dan Murphy
@ 2019-09-17 18:14   ` Rob Herring
  2019-10-03 11:42   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: Add enable-gpios to describe HWEN pin Lee Jones
  2019-10-28 23:25   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Rob Herring
  3 siblings, 0 replies; 9+ messages in thread
From: Rob Herring @ 2019-09-17 18:14 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: lee.jones, daniel.thompson, jingoohan1, jacek.anaszewski, pavel,
	dmurphy, robh+dt, mark.rutland, b.zolnierkie, dri-devel,
	linux-leds, devicetree, linux-kernel, linux-fbdev,
	Andreas Kemnade

On Thu, 12 Sep 2019 23:32:56 +0200, Andreas Kemnade wrote:
> add enable-gpios to describe HWEN pin
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
> ---
> changes in v2: added example
> changes in v3: added Acked-by
> changes in v4: moved enable-gpios to the right position
>   in the example
>  .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
>  1 file changed, 5 insertions(+)
> 

Reviewed-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: backlight: lm3630a: Add enable-gpios to describe HWEN pin
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
  2019-09-13 14:06   ` Dan Murphy
  2019-09-17 18:14   ` Rob Herring
@ 2019-10-03 11:42   ` Lee Jones
  2019-10-28 23:25   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Rob Herring
  3 siblings, 0 replies; 9+ messages in thread
From: Lee Jones @ 2019-10-03 11:42 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: daniel.thompson, jingoohan1, jacek.anaszewski, pavel, dmurphy,
	robh+dt, mark.rutland, b.zolnierkie, dri-devel, linux-leds,
	devicetree, linux-kernel, linux-fbdev

On Thu, 12 Sep 2019, Andreas Kemnade wrote:

> Provide DT documentation for enable-gpios.
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
> Reviewed-by: Rob Herring <robh@kernel.org>
> Reviewed-by: Dan Murphy <dmurphy@ti.com>
> ---
> changes in v2: added example
> changes in v3: added Acked-by
> changes in v4: moved enable-gpios to the right position
>   in the example
>  .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
>  1 file changed, 5 insertions(+)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Linaro Services Technical Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 2/2] backlight: lm3630a: Add an enable gpio for the HWEN pin
  2019-09-12 21:32 ` [PATCH v4 2/2] backlight: lm3630a: add an enable gpio for the HWEN pin Andreas Kemnade
@ 2019-10-03 11:42   ` " Lee Jones
  0 siblings, 0 replies; 9+ messages in thread
From: Lee Jones @ 2019-10-03 11:42 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: daniel.thompson, jingoohan1, jacek.anaszewski, pavel, dmurphy,
	robh+dt, mark.rutland, b.zolnierkie, dri-devel, linux-leds,
	devicetree, linux-kernel, linux-fbdev

On Thu, 12 Sep 2019, Andreas Kemnade wrote:

> For now just enable it in the probe function to allow I2C
> access. Disabling also means resetting the register values
> to default and according to the datasheet does not give
> power savings.
> 
> Tested on Kobo Clara HD.
> 
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> Reviewed-by: Dan Murphy <dmurphy@ti.com>
> Reviewed-by: Daniel Thompson <daniel.thompson@linaro.org>
> ---
> changes in v2:
> - simplification
> - correct gpio direction initialisation
> 
> changes in v3:
> - removed legacy include
> 
>  drivers/video/backlight/lm3630a_bl.c | 9 +++++++++
>  1 file changed, 9 insertions(+)

Applied, thanks.

-- 
Lee Jones [李琼斯]
Linaro Services Technical Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios
  2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
                     ` (2 preceding siblings ...)
  2019-10-03 11:42   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: Add enable-gpios to describe HWEN pin Lee Jones
@ 2019-10-28 23:25   ` Rob Herring
  2019-10-29 12:16     ` Andreas Kemnade
  3 siblings, 1 reply; 9+ messages in thread
From: Rob Herring @ 2019-10-28 23:25 UTC (permalink / raw)
  To: Andreas Kemnade
  Cc: Lee Jones, Daniel Thompson, Jingoo Han, Jacek Anaszewski,
	Pavel Machek, Dan Murphy, Mark Rutland,
	Bartlomiej Zolnierkiewicz, dri-devel, Linux LED Subsystem,
	devicetree, linux-kernel, Linux Fbdev development list

On Thu, Sep 12, 2019 at 4:33 PM Andreas Kemnade <andreas@kemnade.info> wrote:
>
> add enable-gpios to describe HWEN pin
>
> Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> Acked-by: Daniel Thompson <daniel.thompson@linaro.org>

This breaking linux-next now...

> ---
> changes in v2: added example
> changes in v3: added Acked-by
> changes in v4: moved enable-gpios to the right position
>   in the example
>  .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> index dc129d9a329e..c8470628fe02 100644
> --- a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> +++ b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> @@ -29,6 +29,10 @@ properties:
>    '#size-cells':
>      const: 0
>
> +  enable-gpios:
> +    description: GPIO to use to enable/disable the backlight (HWEN pin).
> +    maxItems: 1
> +
>  required:
>    - compatible
>    - reg
> @@ -96,6 +100,7 @@ examples:
>          led-controller@38 {
>                  compatible = "ti,lm3630a";
>                  reg = <0x38>;
> +                enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;

Error: Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dts:24.46-47
syntax error
FATAL ERROR: Unable to parse input tree
make[1]: *** [Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dt.yaml]
Error 1
scripts/Makefile.lib:314: recipe for target
'Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dt.yaml'
failed

You need the include for the define.

Rob

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios
  2019-10-28 23:25   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Rob Herring
@ 2019-10-29 12:16     ` Andreas Kemnade
  0 siblings, 0 replies; 9+ messages in thread
From: Andreas Kemnade @ 2019-10-29 12:16 UTC (permalink / raw)
  To: Rob Herring
  Cc: Lee Jones, Daniel Thompson, Jingoo Han, Jacek Anaszewski,
	Pavel Machek, Dan Murphy, Mark Rutland,
	Bartlomiej Zolnierkiewicz, dri-devel, Linux LED Subsystem,
	devicetree, linux-kernel, Linux Fbdev development list

[-- Attachment #1: Type: text/plain, Size: 2276 bytes --]

Hi,

On Mon, 28 Oct 2019 18:25:56 -0500
Rob Herring <robh+dt@kernel.org> wrote:

> On Thu, Sep 12, 2019 at 4:33 PM Andreas Kemnade <andreas@kemnade.info> wrote:
> >
> > add enable-gpios to describe HWEN pin
> >
> > Signed-off-by: Andreas Kemnade <andreas@kemnade.info>
> > Acked-by: Daniel Thompson <daniel.thompson@linaro.org>  
> 
> This breaking linux-next now...
> 
oops, sorry. 

> > ---
> > changes in v2: added example
> > changes in v3: added Acked-by
> > changes in v4: moved enable-gpios to the right position
> >   in the example
> >  .../bindings/leds/backlight/lm3630a-backlight.yaml           | 5 +++++
> >  1 file changed, 5 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> > index dc129d9a329e..c8470628fe02 100644
> > --- a/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> > +++ b/Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.yaml
> > @@ -29,6 +29,10 @@ properties:
> >    '#size-cells':
> >      const: 0
> >
> > +  enable-gpios:
> > +    description: GPIO to use to enable/disable the backlight (HWEN pin).
> > +    maxItems: 1
> > +
> >  required:
> >    - compatible
> >    - reg
> > @@ -96,6 +100,7 @@ examples:
> >          led-controller@38 {
> >                  compatible = "ti,lm3630a";
> >                  reg = <0x38>;
> > +                enable-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>;  
> 
> Error: Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dts:24.46-47
> syntax error
> FATAL ERROR: Unable to parse input tree
> make[1]: *** [Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dt.yaml]
> Error 1
> scripts/Makefile.lib:314: recipe for target
> 'Documentation/devicetree/bindings/leds/backlight/lm3630a-backlight.example.dt.yaml'
> failed
> 
> You need the include for the define.

gpio/gpio.h is missing.
Yes, was not aware of that these things will be compiled and the automatic
check did not work on my system at all. So I decided not to fix that for just
this simple thing which was a not so good idea.
Will send a fixup.

Regards,
Andreas

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, back to index

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-12 21:32 [PATCH v4 0/2] backlight_lm3630a: add enable_gpios property Andreas Kemnade
2019-09-12 21:32 ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Andreas Kemnade
2019-09-13 14:06   ` Dan Murphy
2019-09-17 18:14   ` Rob Herring
2019-10-03 11:42   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: Add enable-gpios to describe HWEN pin Lee Jones
2019-10-28 23:25   ` [PATCH v4 1/2] dt-bindings: backlight: lm3630a: add enable_gpios Rob Herring
2019-10-29 12:16     ` Andreas Kemnade
2019-09-12 21:32 ` [PATCH v4 2/2] backlight: lm3630a: add an enable gpio for the HWEN pin Andreas Kemnade
2019-10-03 11:42   ` [PATCH v4 2/2] backlight: lm3630a: Add " Lee Jones

Linux-LEDs Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-leds/0 linux-leds/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-leds linux-leds/ https://lore.kernel.org/linux-leds \
		linux-leds@vger.kernel.org
	public-inbox-index linux-leds

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-leds


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git