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

title: Awinic AW99706 6-channel WLED Backlight Driver

maintainers:
  - Junjie Cao <caojunjie650@gmail.com>

allOf:
  - $ref: common.yaml#

properties:
  compatible:
    const: awinic,aw99706

  reg:
    maxItems: 1

  enable-gpios:
    description: GPIO to use to enable/disable the backlight (HWEN pin).
    maxItems: 1

  awinic,dim-mode:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: >
      Select dimming mode of the device.
        0 = Bypass mode.
        1 = DC mode.
        2 = MIX mode(PWM at low brightness and DC at high brightness).
        3 = MIX-26k mode(MIX mode with different PWM frequency).
    enum: [ 0, 1, 2, 3 ]
    default: 1

  awinic,sw-freq-hz:
    description: Boost switching frequency in Hz.
    enum: [ 300000, 400000, 500000, 600000, 660000, 750000, 850000, 1000000,
            1200000, 1330000, 1500000, 1700000 ]
    default: 750000

  awinic,sw-ilmt-microamp:
    description: Switching current limitation in uA.
    enum: [ 1500000, 2000000, 2500000, 3000000 ]
    default: 3000000

  awinic,iled-max-microamp:
    description: Maximum LED current setting in uA.
    minimum: 5000
    maximum: 50000
    multipleOf: 500
    default: 20000

  awinic,uvlo-thres-microvolt:
    description: UVLO(Under Voltage Lock Out) in uV.
    enum: [ 2200000, 5000000 ]
    default: 2200000

  awinic,ramp-ctl:
    $ref: /schemas/types.yaml#/definitions/uint32
    description: >
      Select ramp control and filter of the device.
        0 = Fade in/fade out.
        1 = Light filter.
        2 = Medium filter.
        3 = Heavy filter.
    enum: [ 0, 1, 2, 3 ]
    default: 2

required:
  - compatible
  - reg
  - enable-gpios

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        backlight@76 {
            compatible = "awinic,aw99706";
            reg = <0x76>;
            enable-gpios = <&tlmm 88 GPIO_ACTIVE_HIGH>;
            default-brightness = <2047>;
            max-brightness = <4095>;
            awinic,dim-mode = <1>;
            awinic,sw-freq-hz = <750000>;
            awinic,sw-ilmt-microamp = <3000000>;
            awinic,uvlo-thres-microvolt = <2200000>;
            awinic,iled-max-microamp = <20000>;
            awinic,ramp-ctl = <2>;
        };
    };

...
