[PATCH V5 1/4] backlight: qcom-wled: convert the wled bindings to .yaml format

kgunda at codeaurora.org kgunda at codeaurora.org
Fri Apr 17 11:53:46 UTC 2020


On 2020-04-15 20:39, Rob Herring wrote:
> On Tue, Apr 07, 2020 at 09:17:07PM +0530, Kiran Gunda wrote:
>> Convert the qcom-wled bindings from .txt to .yaml format.
>> Also replace PM8941 to WLED3 and PMI8998 to WLED4.
>> 
>> Signed-off-by: Kiran Gunda <kgunda at codeaurora.org>
>> Signed-off-by: Subbaraman Narayanamurthy <subbaram at codeaurora.org>
>> Acked-by: Daniel Thompson <daniel.thompson at linaro.org>
>> ---
>>  .../bindings/leds/backlight/qcom-wled.txt          | 154 
>> ----------------
>>  .../bindings/leds/backlight/qcom-wled.yaml         | 201 
>> +++++++++++++++++++++
>>  2 files changed, 201 insertions(+), 154 deletions(-)
>>  delete mode 100644 
>> Documentation/devicetree/bindings/leds/backlight/qcom-wled.txt
>>  create mode 100644 
>> Documentation/devicetree/bindings/leds/backlight/qcom-wled.yaml
> 
> 
>> diff --git 
>> a/Documentation/devicetree/bindings/leds/backlight/qcom-wled.yaml 
>> b/Documentation/devicetree/bindings/leds/backlight/qcom-wled.yaml
>> new file mode 100644
>> index 0000000..770e780
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/leds/backlight/qcom-wled.yaml
>> @@ -0,0 +1,201 @@
>> +# SPDX-License-Identifier: GPL-2.0-only
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/leds/backlight/qcom-wled.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Binding for Qualcomm Technologies, Inc. WLED driver
>> +
>> +maintainers:
>> +  - Bjorn Andersson <bjorn.andersson at linaro.org>
>> +  - Kiran Gunda <kgunda at codeaurora.org>
>> +
>> +description: |
>> +  WLED (White Light Emitting Diode) driver is used for controlling 
>> display
>> +  backlight that is part of PMIC on Qualcomm Technologies, Inc. 
>> reference
>> +  platforms. The PMIC is connected to the host processor via SPMI 
>> bus.
>> +
>> +properties:
>> +  compatible:
>> +    enum:
>> +      - qcom,pm8941-wled
>> +      - qcom,pmi8998-wled
>> +      - qcom,pm660l-wled
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  default-brightness:
>> +    description:
>> +      brightness value on boot.
>> +    minimum: 0
>> +    maximum: 4095
>> +    default: 2048
>> +
>> +  label: true
>> +
>> +  qcom,cs-out:
>> +    description:
>> +      enable current sink output.
>> +      This property is supported only for WLED3.
>> +    type: boolean
>> +
>> +  qcom,cabc:
>> +    description:
>> +      enable content adaptive backlight control.
>> +    type: boolean
>> +
>> +  qcom,ext-gen:
>> +    description:
>> +      use externally generated modulator signal to dim.
>> +      This property is supported only for WLED3.
>> +    type: boolean
>> +
>> +  qcom,current-limit:
>> +    description:
>> +      mA; per-string current limit.
>> +      This property is supported only for WLED3.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +    default: 20
>> +    minimum: 0
>> +    maximum: 25
>> +    multipleOf: 1
> 
> No point in defining a multiple of 1.
> 
>> +
>> +  qcom,current-limit-microamp:
>> +    description:
>> +      uA; per-string current limit.
>> +    default: 25
>> +    minimum: 0
>> +    maximum: 30000
>> +    multipleOf: 25
>> +
>> +  qcom,current-boost-limit:
>> +    description:
>> +      mA; boost current limit.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +
>> +  qcom,switching-freq:
>> +    description:
>> +      kHz; switching frequency.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +      - enum: [ 600, 640, 685, 738, 800, 872, 960, 1066, 1200, 1371, 
>> 1600, 1920, 2400, 3200, 4800, 9600 ]
>> +
>> +  qcom,ovp:
>> +    description:
>> +      V; Over-voltage protection limit.
>> +      This property is supported only for WLED3.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +      - enum: [ 27, 29, 32, 35 ]
>> +      - default: 29
>> +
>> +  qcom,ovp-millivolt:
>> +    description:
>> +      Over-voltage protection limit. This property is for WLED4 only.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +      - enum: [ 18100, 19600, 29600, 31100 ]
>> +      - default: 29600
>> +
>> +  qcom,num-strings:
>> +    description:
>> +      number of led strings attached.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32
>> +
>> +  qcom,enabled-strings:
>> +    description:
>> +      Array of the WLED strings numbered from 0 to 3. Each
>> +      string of leds are operated individually. Specify the
>> +      list of strings used by the device. Any combination of
>> +      led strings can be used.
>> +    allOf:
>> +      - $ref: /schemas/types.yaml#/definitions/uint32-array
>> +    minItems: 1
>> +    maxItems: 4
>> +
>> +  qcom,external-pfet:
>> +    description:
>> +      Specify if external PFET control for short circuit
>> +      protection is used. This property is supported only
>> +      for WLED4.
>> +    type: boolean
>> +
>> +  qcom,auto-string-detection:
>> +    description:
>> +      Enables auto-detection of the WLED string configuration.
>> +      This feature is not supported for WLED3.
>> +    type: boolean
>> +
>> +allOf:
>> +  - if:
>> +      properties:
>> +        compatible:
>> +          contains:
>> +            const: qcom,pm8941-wled
>> +
>> +    then:
>> +      properties:
>> +        qcom,current-boost-limit:
>> +           enum: [ 105, 385, 525, 805, 980, 1260, 1400, 1680 ]
>> +           default: 805
>> +
>> +        qcom,switching-freq:
>> +           default: 1600
>> +
>> +        qcom,num-strings:
>> +           enum: [ 1, 2, 3 ]
>> +
>> +        interrupts:
>> +          items:
>> +            - description: over voltage protection interrupt.
>> +
>> +        interrupt-names:
>> +          items:
>> +            - const: ovp
>> +
>> +    else:
>> +      properties:
>> +        qcom,current-boost-limit:
>> +           enum: [ 105, 280, 450, 620, 970, 1150, 1300, 1500 ]
>> +           default: 970
>> +
>> +        qcom,switching-freq:
>> +           default: 800
>> +
>> +        qcom,num-strings:
>> +           enum: [ 1, 2, 3, 4 ]
>> +
>> +        interrupts:
>> +          items:
>> +            - description: over voltage protection interrupt.
>> +            - description: short circuit interrupt.
>> +
>> +        interrupt-names:
>> +          items:
>> +            - const: ovp
>> +            - const: short
> 
> Move these 2 props to the main section adding a 'minItems: 1'. Then 
> just
> define 'minItems: 2' here and 'maxItems: 1' in the 'then' clause.
> 
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +  - label
> 
> Add:
> 
> additionalProperties: false
> 
>> +
>> +examples:
>> +  - |
>> +    backlight at d800 {
>> +        compatible = "qcom,pm8941-wled";
>> +        reg = <0xd800 0x100>;
>> +        label = "backlight";
>> +
>> +        qcom,cs-out;
>> +        qcom,current-limit = <20>;
>> +        qcom,current-boost-limit = <805>;
>> +        qcom,switching-freq = <1600>;
>> +        qcom,ovp = <29>;
>> +        qcom,num-strings = <2>;
>> +        qcom,enabled-strings = <0 1>;
>> +     };
>> --
>> The Qualcomm Innovation Center, Inc. is a member of the Code Aurora 
>> Forum,
>>  a Linux Foundation Collaborative Project
>> 
Thanks for reviewing. I will submit the next revision with all the 
fixes.


More information about the dri-devel mailing list