Commit fce43d8f authored by Vincent Knecht's avatar Vincent Knecht Committed by Rob Herring
Browse files

dt-bindings: leds: is31fl319x: Document variants specificities



Add si-en compatibles for all chip variants and add conditionals
depending on compatibles to document variants specs:
- possible reg addresses
- whether audio-gain-db is supported or not
- maximum number of leds
- led-max-microamp values

Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarVincent Knecht <vincent.knecht@mailoo.org>
Signed-off-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20220712100841.1538395-3-vincent.knecht@mailoo.org
parent dbc801b4
Loading
Loading
Loading
Loading
+82 −2
Original line number Diff line number Diff line
@@ -28,6 +28,10 @@ properties:
      - issi,is31fl3193
      - issi,is31fl3196
      - issi,is31fl3199
      - si-en,sn3190
      - si-en,sn3191
      - si-en,sn3193
      - si-en,sn3196
      - si-en,sn3199

  reg:
@@ -61,8 +65,6 @@ patternProperties:
        maximum: 9

      led-max-microamp:
        default: 20000
        enum: [5000, 10000, 15000, 20000, 25000, 30000, 35000, 40000]
        description:
          Note that a driver will take the lowest of all LED limits
          since the chip has a single global setting. The lowest value
@@ -71,6 +73,84 @@ patternProperties:
          and not the current, which will always have its peak value
          equal to led-max-microamp.

allOf:
  - if:
      properties:
        compatible:
          contains:
            enum:
              - issi,is31fl3190
              - issi,is31fl3191
              - issi,is31fl3193
              - si-en,sn3190
              - si-en,sn3191
              - si-en,sn3193
    then:
      properties:
        reg:
          enum: [0x68, 0x69, 0x6a, 0x6b]

        audio-gain-db: false

      patternProperties:
        "^led@[1-9]$":
          properties:
            led-max-microamp:
              default: 42000
              enum: [5000, 10000, 17500, 30000, 42000]
    else:
      properties:
        reg:
          enum: [0x64, 0x65, 0x66, 0x67]

      patternProperties:
        "^led@[1-9]$":
          properties:
            led-max-microamp:
              default: 20000
              enum: [5000, 10000, 15000, 20000, 25000, 30000, 35000, 40000]
  - if:
      properties:
        compatible:
          contains:
            enum:
              - issi,is31fl3190
              - issi,is31fl3191
              - si-en,sn3190
              - si-en,sn3191
    then:
      patternProperties:
        "^led@[1-9]$":
          properties:
            reg:
              maximum: 1
  - if:
      properties:
        compatible:
          contains:
            enum:
              - issi,is31fl3193
              - si-en,sn3193
    then:
      patternProperties:
        "^led@[1-9]$":
          properties:
            reg:
              maximum: 3
  - if:
      properties:
        compatible:
          contains:
            enum:
              - issi,is31fl3196
              - si-en,sn3196
    then:
      patternProperties:
        "^led@[1-9]$":
          properties:
            reg:
              maximum: 6

required:
  - compatible
  - reg