Commit 0fe5ac3d authored by Alexander Dahl's avatar Alexander Dahl Committed by Pavel Machek
Browse files

dt-bindings: leds: Convert pwm to yaml



The example was adapted in the following ways:

- make use of the now supported 'function' and 'color' properties
- remove pwm nodes, those are documented elsewhere
- align node names to new dt schema rules and dt recommendations

License was not explicitly set before.  The license set now is
recommended by DT project.

Suggested-by: default avatarJacek Anaszewski <jacek.anaszewski@gmail.com>
Signed-off-by: default avatarAlexander Dahl <post@lespocky.de>
Reviewed-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
[For the license change only:]
Acked-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: default avatarPavel Machek <pavel@ucw.cz>
parent 6d8d014c
Loading
Loading
Loading
Loading
+0 −50
Original line number Diff line number Diff line
LED connected to PWM

Required properties:
- compatible : should be "pwm-leds".

Each LED is represented as a sub-node of the pwm-leds device.  Each
node's name represents the name of the corresponding LED.

LED sub-node properties:
- pwms : PWM property to point to the PWM device (phandle)/port (id) and to
  specify the period time to be used: <&phandle id period_ns>;
- pwm-names : (optional) Name to be used by the PWM subsystem for the PWM device
  For the pwms and pwm-names property please refer to:
  Documentation/devicetree/bindings/pwm/pwm.txt
- max-brightness : Maximum brightness possible for the LED
- active-low : (optional) For PWMs where the LED is wired to supply
  rather than ground.
- label :  (optional)
  see Documentation/devicetree/bindings/leds/common.txt
- linux,default-trigger :  (optional)
  see Documentation/devicetree/bindings/leds/common.txt

Example:

twl_pwm: pwm {
	/* provides two PWMs (id 0, 1 for PWM1 and PWM2) */
	compatible = "ti,twl6030-pwm";
	#pwm-cells = <2>;
};

twl_pwmled: pwmled {
	/* provides one PWM (id 0 for Charing indicator LED) */
	compatible = "ti,twl6030-pwmled";
	#pwm-cells = <2>;
};

pwmleds {
	compatible = "pwm-leds";
	kpad {
		label = "omap4::keypad";
		pwms = <&twl_pwm 0 7812500>;
		max-brightness = <127>;
	};

	charging {
		label = "omap4:green:chrg";
		pwms = <&twl_pwmled 0 7812500>;
		max-brightness = <255>;
	};
};
+70 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/leds/leds-pwm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: LEDs connected to PWM

maintainers:
  - Pavel Machek <pavel@ucw.cz>

description:
  Each LED is represented as a sub-node of the pwm-leds device.  Each
  node's name represents the name of the corresponding LED.

properties:
  compatible:
    const: pwm-leds

patternProperties:
  "^led(-[0-9a-f]+)?$":
    type: object

    $ref: common.yaml#

    properties:
      pwms:
        maxItems: 1

      pwm-names: true

      max-brightness:
        description:
          Maximum brightness possible for the LED
        $ref: /schemas/types.yaml#/definitions/uint32

      active-low:
        description:
          For PWMs where the LED is wired to supply rather than ground.
        type: boolean

    required:
      - pwms
      - max-brightness

additionalProperties: false

examples:
  - |

    #include <dt-bindings/leds/common.h>

    led-controller {
        compatible = "pwm-leds";

        led-1 {
            label = "omap4::keypad";
            pwms = <&twl_pwm 0 7812500>;
            max-brightness = <127>;
        };

        led-2 {
            color = <LED_COLOR_ID_GREEN>;
            function = LED_FUNCTION_CHARGING;
            pwms = <&twl_pwmled 0 7812500>;
            max-brightness = <255>;
        };
    };

...