1ea4407faSLuca Weiss# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2ea4407faSLuca Weiss%YAML 1.2
3ea4407faSLuca Weiss---
4ea4407faSLuca Weiss$id: http://devicetree.org/schemas/leds/leds-sgm3140.yaml#
5ea4407faSLuca Weiss$schema: http://devicetree.org/meta-schemas/core.yaml#
6ea4407faSLuca Weiss
7ea4407faSLuca Weisstitle: SGMICRO SGM3140 500mA Buck/Boost Charge Pump LED Driver
8ea4407faSLuca Weiss
9ea4407faSLuca Weissmaintainers:
10ea4407faSLuca Weiss  - Luca Weiss <luca@z3ntu.xyz>
11ea4407faSLuca Weiss
12ea4407faSLuca Weissdescription: |
13ea4407faSLuca Weiss  The SGM3140 is a current-regulated charge pump which can regulate two current
14ea4407faSLuca Weiss  levels for Flash and Torch modes.
15ea4407faSLuca Weiss
16ea4407faSLuca Weiss  The data sheet can be found at:
17ea4407faSLuca Weiss    http://www.sg-micro.com/uploads/soft/20190626/1561535688.pdf
18ea4407faSLuca Weiss
19ea4407faSLuca Weissproperties:
20ea4407faSLuca Weiss  compatible:
21ea4407faSLuca Weiss    const: sgmicro,sgm3140
22ea4407faSLuca Weiss
23ea4407faSLuca Weiss  enable-gpios:
24ea4407faSLuca Weiss    maxItems: 1
25ea4407faSLuca Weiss    description: A connection to the 'EN' pin.
26ea4407faSLuca Weiss
27ea4407faSLuca Weiss  flash-gpios:
28ea4407faSLuca Weiss    maxItems: 1
29ea4407faSLuca Weiss    description: A connection to the 'FLASH' pin.
30ea4407faSLuca Weiss
31ea4407faSLuca Weiss  vin-supply:
32ea4407faSLuca Weiss    description: Regulator providing power to the 'VIN' pin.
33ea4407faSLuca Weiss
34ea4407faSLuca Weiss  led:
35ea4407faSLuca Weiss    type: object
36ea4407faSLuca Weiss    allOf:
37ea4407faSLuca Weiss      - $ref: common.yaml#
38ea4407faSLuca Weiss
39ea4407faSLuca Weissrequired:
40ea4407faSLuca Weiss  - compatible
41ea4407faSLuca Weiss  - flash-gpios
42ea4407faSLuca Weiss  - enable-gpios
43ea4407faSLuca Weiss
44ea4407faSLuca WeissadditionalProperties: false
45ea4407faSLuca Weiss
46ea4407faSLuca Weissexamples:
47ea4407faSLuca Weiss  - |
48ea4407faSLuca Weiss    #include <dt-bindings/gpio/gpio.h>
49ea4407faSLuca Weiss    #include <dt-bindings/leds/common.h>
50ea4407faSLuca Weiss
51ea4407faSLuca Weiss    led-controller {
52ea4407faSLuca Weiss        compatible = "sgmicro,sgm3140";
53ea4407faSLuca Weiss        flash-gpios = <&pio 3 24 GPIO_ACTIVE_HIGH>; /* PD24 */
54ea4407faSLuca Weiss        enable-gpios = <&pio 2 3 GPIO_ACTIVE_HIGH>; /* PC3 */
55ea4407faSLuca Weiss        vin-supply = <&reg_dcdc1>;
56ea4407faSLuca Weiss
57ea4407faSLuca Weiss        sgm3140_flash: led {
58ea4407faSLuca Weiss            function = LED_FUNCTION_FLASH;
59ea4407faSLuca Weiss            color = <LED_COLOR_ID_WHITE>;
60ea4407faSLuca Weiss            flash-max-timeout-us = <250000>;
61ea4407faSLuca Weiss        };
62ea4407faSLuca Weiss    };
63