LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Philippe Schenker <philippe.schenker@toradex.com>
To: "robh@kernel.org" <robh@kernel.org>,
	"linux-leds@vger.kernel.org" <linux-leds@vger.kernel.org>
Cc: "pavel@ucw.cz" <pavel@ucw.cz>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"dmurphy@ti.com" <dmurphy@ti.com>,
	"jacek.anaszewski@gmail.com" <jacek.anaszewski@gmail.com>
Subject: Re: [PATCH v2 2/2] dt-bindings: leds: Convert gpio-leds to DT schema
Date: Tue, 17 Jan 2023 12:32:20 +0000	[thread overview]
Message-ID: <cf335bfe5979e2e4936104eb9f6b953d00af13a1.camel@toradex.com> (raw)
In-Reply-To: <20200108001738.8209-2-robh@kernel.org>

On Tue, 2020-01-07 at 18:17 -0600, Rob Herring wrote:
> Convert the gpio-leds binding to DT schema format.
> 
> Drop the last example as the node name collides when built, and it
> doesn't
> add much value.
> 
> Cc: Pavel Machek <pavel@ucw.cz>
> Cc: Dan Murphy <dmurphy@ti.com>
> Acked-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
> Jacek, Please take this via led tree
> 
> v2:
> - no change
> 
>  .../devicetree/bindings/leds/leds-gpio.txt    | 75 ----------------
>  .../devicetree/bindings/leds/leds-gpio.yaml   | 86
> +++++++++++++++++++
>  2 files changed, 86 insertions(+), 75 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/leds/leds-
> gpio.txt
>  create mode 100644 Documentation/devicetree/bindings/leds/leds-
> gpio.yaml
> 
> diff --git a/Documentation/devicetree/bindings/leds/leds-gpio.txt
> b/Documentation/devicetree/bindings/leds/leds-gpio.txt
> deleted file mode 100644
> index d21281b63d38..000000000000
> --- a/Documentation/devicetree/bindings/leds/leds-gpio.txt
> +++ /dev/null
> @@ -1,75 +0,0 @@
> -LEDs connected to GPIO lines
> -
> -Required properties:
> -- compatible : should be "gpio-leds".
> -
> -Each LED is represented as a sub-node of the gpio-leds device.  Each
> -node's name represents the name of the corresponding LED.
> -
> -LED sub-node properties:
> -- gpios :  Should specify the LED's GPIO, see "gpios property" in
> -  Documentation/devicetree/bindings/gpio/gpio.txt.  Active low LEDs
> should be
> -  indicated using flags in the GPIO specifier.
> -- function :  (optional)
> -  see Documentation/devicetree/bindings/leds/common.txt
> -- color :  (optional)
> -  see Documentation/devicetree/bindings/leds/common.txt
> -- label :  (optional)
> -  see Documentation/devicetree/bindings/leds/common.txt (deprecated)
> -- linux,default-trigger :  (optional)
> -  see Documentation/devicetree/bindings/leds/common.txt
> -- default-state:  (optional) The initial state of the LED.
> -  see Documentation/devicetree/bindings/leds/common.txt
> -- retain-state-suspended: (optional) The suspend state can be
> retained.Such
> -  as charge-led gpio.
> -- retain-state-shutdown: (optional) Retain the state of the LED on
> shutdown.
> -  Useful in BMC systems, for example when the BMC is rebooted while
> the host
> -  remains up.
> -- panic-indicator : (optional)
> -  see Documentation/devicetree/bindings/leds/common.txt
> -
> -Examples:
> -
> -#include <dt-bindings/gpio/gpio.h>
> -#include <dt-bindings/leds/common.h>
> -
> -leds {
> -       compatible = "gpio-leds";
> -       led0 {
> -               gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW>;
> -               linux,default-trigger = "disk-activity";
> -               function = LED_FUNCTION_DISK;
> -       };
> -
> -       led1 {
> -               gpios = <&mcu_pio 1 GPIO_ACTIVE_HIGH>;
> -               /* Keep LED on if BIOS detected hardware fault */
> -               default-state = "keep";
> -               function = LED_FUNCTION_FAULT;
> -       };
> -};
> -
> -run-control {
> -       compatible = "gpio-leds";
> -       led0 {
> -               gpios = <&mpc8572 6 GPIO_ACTIVE_HIGH>;
> -               color = <LED_COLOR_ID_RED>;
> -               default-state = "off";
> -       };
> -       led1 {
> -               gpios = <&mpc8572 7 GPIO_ACTIVE_HIGH>;
> -               color = <LED_COLOR_ID_GREEN>;
> -               default-state = "on";
> -       };
> -};
> -
> -leds {
> -       compatible = "gpio-leds";
> -
> -       led0 {
> -               gpios = <&gpio1 2 GPIO_ACTIVE_HIGH>;
> -               linux,default-trigger = "max8903-charger-charging";
> -               retain-state-suspended;
> -               function = LED_FUNCTION_CHARGE;
> -       };
> -};
> diff --git a/Documentation/devicetree/bindings/leds/leds-gpio.yaml
> b/Documentation/devicetree/bindings/leds/leds-gpio.yaml
> new file mode 100644
> index 000000000000..0e75b185dd19
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/leds/leds-gpio.yaml
> @@ -0,0 +1,86 @@
> +# SPDX-License-Identifier: GPL-2.0-only
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/leds/leds-gpio.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: LEDs connected to GPIO lines
> +
> +maintainers:
> +  - Jacek Anaszewski <jacek.anaszewski@gmail.com>
> +  - Pavel Machek <pavel@ucw.cz>
> +
> +description:
> +  Each LED is represented as a sub-node of the gpio-leds device. 
> Each
> +  node's name represents the name of the corresponding LED.
> +
> +properties:
> +  compatible:
> +    const: gpio-leds
> +
> +patternProperties:
> +  # The first form is preferred, but fall back to just 'led' anywhere
> in the
> +  # node name to at least catch some child nodes.
> +  "(^led-[0-9a-f]$|led)":

Hi Rob, just stumbled on this regexp which I do not understand what you
meant with it.
It is limiting the amount of LEDs to 16 in the part "^led-[0-9a-f]$" but
then after the or "|" it is allowed to put any name containing "led"?

Is this really wanted?
Am I now needed to number my leds like "led-1, led-2, ..., led-f"?

Thanks in advance for the explanation.

Philippe

> +    type: object
> +
> +    allOf:
> +      - $ref: common.yaml#
> +
> +    properties:
> +      gpios:
> +        maxItems: 1
> +
> +      retain-state-suspended:
> +        description:
> +          The suspend state can be retained.Such as charge-led gpio.
> +        type: boolean
> +
> +      retain-state-shutdown:
> +        description:
> +          Retain the state of the LED on shutdown. Useful in BMC
> systems, for
> +          example when the BMC is rebooted while the host remains up.
> +        type: boolean
> +
> +    required:
> +      - gpios
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +
> +    #include <dt-bindings/gpio/gpio.h>
> +    #include <dt-bindings/leds/common.h>
> +
> +    leds {
> +        compatible = "gpio-leds";
> +        led-0 {
> +            gpios = <&mcu_pio 0 GPIO_ACTIVE_LOW>;
> +            linux,default-trigger = "disk-activity";
> +            function = LED_FUNCTION_DISK;
> +        };
> +
> +        led-1 {
> +            gpios = <&mcu_pio 1 GPIO_ACTIVE_HIGH>;
> +            /* Keep LED on if BIOS detected hardware fault */
> +            default-state = "keep";
> +            function = LED_FUNCTION_FAULT;
> +        };
> +    };
> +
> +    run-control {
> +        compatible = "gpio-leds";
> +        led-0 {
> +            gpios = <&mpc8572 6 GPIO_ACTIVE_HIGH>;
> +            color = <LED_COLOR_ID_RED>;
> +            default-state = "off";
> +        };
> +        led-1 {
> +            gpios = <&mpc8572 7 GPIO_ACTIVE_HIGH>;
> +            color = <LED_COLOR_ID_GREEN>;
> +            default-state = "on";
> +        };
> +    };
> +
> +...


  parent reply	other threads:[~2023-01-17 12:32 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-08  0:17 [PATCH v2 1/2] dt-bindings: leds: Convert common LED binding to schema Rob Herring
2020-01-08  0:17 ` [PATCH v2 2/2] dt-bindings: leds: Convert gpio-leds to DT schema Rob Herring
2020-02-26 13:33   ` Pavel Machek
2023-01-17 12:32   ` Philippe Schenker [this message]
2020-01-08 19:02 ` [PATCH v2 1/2] dt-bindings: leds: Convert common LED binding to schema Jacek Anaszewski
2020-01-23 21:20   ` Rob Herring
2020-02-18 10:57     ` Pavel Machek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cf335bfe5979e2e4936104eb9f6b953d00af13a1.camel@toradex.com \
    --to=philippe.schenker@toradex.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dmurphy@ti.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=robh@kernel.org \
    --subject='Re: [PATCH v2 2/2] dt-bindings: leds: Convert gpio-leds to DT schema' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).