Message ID | 20240306235021.976083-3-chris.packham@alliedtelesis.co.nz |
---|---|
State | Superseded |
Headers | show |
Series | auxdisplay: 7-segment LED display | expand |
On Thu, Mar 7, 2024 at 12:51 AM Chris Packham <chris.packham@alliedtelesis.co.nz> wrote: > Add bindings for a generic 7-segment LED display using GPIOs. > > Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz> > --- > > Notes: > Changes in v5: > - Preserve formatting, maxItems set to 8, group GPIO specifiers > as suggested by Geert Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org> Gr{oetje,eeting}s, Geert
On Thu, 07 Mar 2024 12:50:20 +1300, Chris Packham wrote: > Add bindings for a generic 7-segment LED display using GPIOs. > > Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz> > --- > > Notes: > Changes in v5: > - Preserve formatting, maxItems set to 8, group GPIO specifiers > as suggested by Geert > Changes in v4: > - Add ASCII art diagram showing arrangement of segments > Changes in v3: > - Set maxItems: 7 > - Expand description of segment-gpios property. > - Use compatible = "gpio-7-segment" as suggested by Rob > Changes in v2: > - Use compatible = "generic-gpio-7seg" to keep checkpatch.pl happy > > .../bindings/auxdisplay/gpio-7-segment.yaml | 55 +++++++++++++++++++ > 1 file changed, 55 insertions(+) > create mode 100644 Documentation/devicetree/bindings/auxdisplay/gpio-7-segment.yaml > Reviewed-by: Rob Herring <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/auxdisplay/gpio-7-segment.yaml b/Documentation/devicetree/bindings/auxdisplay/gpio-7-segment.yaml new file mode 100644 index 000000000000..328954893c64 --- /dev/null +++ b/Documentation/devicetree/bindings/auxdisplay/gpio-7-segment.yaml @@ -0,0 +1,55 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/auxdisplay/gpio-7-segment.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: GPIO based LED segment display + +maintainers: + - Chris Packham <chris.packham@alliedtelesis.co.nz> + +properties: + compatible: + const: gpio-7-segment + + segment-gpios: + description: | + An array of GPIOs one per segment. The first GPIO corresponds to the A + segment, the seventh GPIO corresponds to the G segment. Some LED blocks + also have a decimal point which can be specified as an optional eighth + segment. + + -a- + | | + f b + | | + -g- + | | + e c + | | + -d- dp + + minItems: 7 + maxItems: 8 + +required: + - segment-gpios + +additionalProperties: false + +examples: + - | + + #include <dt-bindings/gpio/gpio.h> + + led-7seg { + compatible = "gpio-7-segment"; + segment-gpios = <&gpio 0 GPIO_ACTIVE_LOW>, + <&gpio 1 GPIO_ACTIVE_LOW>, + <&gpio 2 GPIO_ACTIVE_LOW>, + <&gpio 3 GPIO_ACTIVE_LOW>, + <&gpio 4 GPIO_ACTIVE_LOW>, + <&gpio 5 GPIO_ACTIVE_LOW>, + <&gpio 6 GPIO_ACTIVE_LOW>; + };
Add bindings for a generic 7-segment LED display using GPIOs. Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz> --- Notes: Changes in v5: - Preserve formatting, maxItems set to 8, group GPIO specifiers as suggested by Geert Changes in v4: - Add ASCII art diagram showing arrangement of segments Changes in v3: - Set maxItems: 7 - Expand description of segment-gpios property. - Use compatible = "gpio-7-segment" as suggested by Rob Changes in v2: - Use compatible = "generic-gpio-7seg" to keep checkpatch.pl happy .../bindings/auxdisplay/gpio-7-segment.yaml | 55 +++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Documentation/devicetree/bindings/auxdisplay/gpio-7-segment.yaml