# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/leds/leds-mt6360.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: LED driver for MT6360 PMIC from MediaTek Integrated.

maintainers:
  - Gene Chen <gene_chen@richtek.com>

description: |
  This module is part of the MT6360 MFD device.
  see Documentation/devicetree/bindings/mfd/mediatek,mt6360.yaml
  Add MT6360 LED driver include 2-channel Flash LED with torch/strobe mode,
  and 4-channel RGB LED support Register/Flash/Breath Mode

properties:
  compatible:
    const: mediatek,mt6360-led

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

patternProperties:
  "^(multi-)?led@[0-5]$":
    type: object
    $ref: common.yaml#
    description:
      Properties for a single LED.

    properties:
      reg:
        description: Index of the LED.
        enum:
          - 0 # LED output ISINK1
          - 1 # LED output ISINK2
          - 2 # LED output ISINK3
          - 3 # LED output ISINKML
          - 4 # LED output FLASH1
          - 5 # LED output FLASH2

required:
  - compatible
  - "#address-cells"
  - "#size-cells"

additionalProperties: false

examples:
  - |
   #include <dt-bindings/leds/common.h>
   led-controller {
     compatible = "mediatek,mt6360-led";
     #address-cells = <1>;
     #size-cells = <0>;

     multi-led@0 {
       reg = <0>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_RGB>;
       led-max-microamp = <24000>;
       #address-cells = <1>;
       #size-cells = <0>;
       led@0 {
         reg = <0>;
         color = <LED_COLOR_ID_RED>;
       };
       led@1 {
         reg = <1>;
         color = <LED_COLOR_ID_GREEN>;
       };
       led@2 {
         reg = <2>;
         color = <LED_COLOR_ID_BLUE>;
       };
     };
     led@3 {
       reg = <3>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_WHITE>;
       led-max-microamp = <150000>;
     };
     led@4 {
       reg = <4>;
       function = LED_FUNCTION_FLASH;
       color = <LED_COLOR_ID_WHITE>;
       function-enumerator = <1>;
       led-max-microamp = <200000>;
       flash-max-microamp = <500000>;
       flash-max-timeout-us = <1024000>;
     };
     led@5 {
       reg = <5>;
       function = LED_FUNCTION_FLASH;
       color = <LED_COLOR_ID_WHITE>;
       function-enumerator = <2>;
       led-max-microamp = <200000>;
       flash-max-microamp = <500000>;
       flash-max-timeout-us = <1024000>;
     };
   };

  - |

   led-controller {
     compatible = "mediatek,mt6360-led";
     #address-cells = <1>;
     #size-cells = <0>;

     led@0 {
       reg = <0>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_RED>;
       led-max-microamp = <24000>;
     };
     led@1 {
       reg = <1>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_GREEN>;
       led-max-microamp = <24000>;
     };
     led@2 {
       reg = <2>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_BLUE>;
       led-max-microamp = <24000>;
     };
     led@3 {
       reg = <3>;
       function = LED_FUNCTION_INDICATOR;
       color = <LED_COLOR_ID_WHITE>;
       led-max-microamp = <150000>;
     };
     led@4 {
       reg = <4>;
       function = LED_FUNCTION_FLASH;
       color = <LED_COLOR_ID_WHITE>;
       function-enumerator = <1>;
       led-max-microamp = <200000>;
       flash-max-microamp = <500000>;
       flash-max-timeout-us = <1024000>;
     };
     led@5 {
       reg = <5>;
       function = LED_FUNCTION_FLASH;
       color = <LED_COLOR_ID_WHITE>;
       function-enumerator = <2>;
       led-max-microamp = <200000>;
       flash-max-microamp = <500000>;
       flash-max-timeout-us = <1024000>;
     };
   };
...
