Commit f8cc21d4 authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Mauro Carvalho Chehab
Browse files

media: dt-bindings: qcom,venus: split common properties



All Qualcomm SoC Venus bindings share a lot of properties, so split
common part to re-usable schema to reduce the duplication and promote
unified style.

Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@kernel.org>
parent af2270e0
Loading
Loading
Loading
Loading
+4 −31
Original line number Diff line number Diff line
@@ -13,16 +13,13 @@ description: |
  The Venus IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,msm8916-venus

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  power-domains:
    maxItems: 1

@@ -38,9 +35,6 @@ properties:
  iommus:
    maxItems: 1

  memory-region:
    maxItems: 1

  video-decoder:
    type: object

@@ -65,34 +59,13 @@ properties:

    additionalProperties: false

  video-firmware:
    type: object
    additionalProperties: false

    description: |
      Firmware subnode is needed when the platform does not
      have TrustZone.

    properties:
      iommus:
        maxItems: 1

    required:
      - iommus

required:
  - compatible
  - reg
  - interrupts
  - power-domains
  - clocks
  - clock-names
  - iommus
  - memory-region
  - video-decoder
  - video-encoder

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+4 −31
Original line number Diff line number Diff line
@@ -13,16 +13,13 @@ description: |
  The Venus IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,msm8996-venus

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  power-domains:
    maxItems: 1

@@ -39,9 +36,6 @@ properties:
  iommus:
    maxItems: 20

  memory-region:
    maxItems: 1

  video-decoder:
    type: object

@@ -92,34 +86,13 @@ properties:

    additionalProperties: false

  video-firmware:
    type: object
    additionalProperties: false

    description: |
      Firmware subnode is needed when the platform does not
      have TrustZone.

    properties:
      iommus:
        maxItems: 1

    required:
      - iommus

required:
  - compatible
  - reg
  - interrupts
  - power-domains
  - clocks
  - clock-names
  - iommus
  - memory-region
  - video-decoder
  - video-encoder

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+4 −28
Original line number Diff line number Diff line
@@ -13,16 +13,13 @@ description: |
  The Venus IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,sc7180-venus

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  power-domains:
    minItems: 2
    maxItems: 3
@@ -83,35 +80,14 @@ properties:

    additionalProperties: false

  video-firmware:
    type: object
    additionalProperties: false

    description: |
      Firmware subnode is needed when the platform does not
      have TrustZone.

    properties:
      iommus:
        maxItems: 1

    required:
      - iommus

required:
  - compatible
  - reg
  - interrupts
  - power-domains
  - power-domain-names
  - clocks
  - clock-names
  - iommus
  - memory-region
  - video-decoder
  - video-encoder

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+4 −31
Original line number Diff line number Diff line
@@ -13,16 +13,13 @@ description: |
  The Venus Iris2 IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,sc7280-venus

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  power-domains:
    minItems: 2
    maxItems: 3
@@ -48,9 +45,6 @@ properties:
  iommus:
    maxItems: 2

  memory-region:
    maxItems: 1

  interconnects:
    maxItems: 2

@@ -83,35 +77,14 @@ properties:

    additionalProperties: false

  video-firmware:
    type: object
    additionalProperties: false

    description: |
      Firmware subnode is needed when the platform does not
      have TrustZone.

    properties:
      iommus:
        maxItems: 1

    required:
      - iommus

required:
  - compatible
  - reg
  - interrupts
  - power-domains
  - power-domain-names
  - clocks
  - clock-names
  - iommus
  - memory-region
  - video-decoder
  - video-encoder

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+4 −31
Original line number Diff line number Diff line
@@ -14,13 +14,13 @@ description: |
  The Venus IP is a video encode and decode accelerator present
  on Qualcomm platforms

allOf:
  - $ref: qcom,venus-common.yaml#

properties:
  compatible:
    const: qcom,sdm660-venus

  reg:
    maxItems: 1

  clocks:
    maxItems: 4

@@ -39,15 +39,9 @@ properties:
      - const: cpu-cfg
      - const: video-mem

  interrupts:
    maxItems: 1

  iommus:
    maxItems: 20

  memory-region:
    maxItems: 1

  power-domains:
    maxItems: 1

@@ -101,34 +95,13 @@ properties:

    additionalProperties: false

  video-firmware:
    type: object
    additionalProperties: false

    description: |
      Firmware subnode is needed when the platform does not
      have TrustZone.

    properties:
      iommus:
        maxItems: 1

    required:
      - iommus

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - interrupts
  - iommus
  - memory-region
  - power-domains
  - video-decoder
  - video-encoder

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
Loading