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