2019-11-20 12:01:01

by Neil Armstrong

[permalink] [raw]
Subject: [PATCH 2/4] dt-bindings: media: amlogic,gx-vdec: add bindings for G12A family

Add bindings to support the Amlogic Video Decoder on the Amlogic G12A
family.

For the G12A family, a supplementary clock is needed to operate the
HEVC/VP9 decoder.

Signed-off-by: Neil Armstrong <[email protected]>
---
.../bindings/media/amlogic,gx-vdec.yaml | 57 +++++++++++++++----
1 file changed, 46 insertions(+), 11 deletions(-)

diff --git a/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml b/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
index 878944867d6e..8ea979bb97e6 100644
--- a/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
+++ b/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
@@ -27,12 +27,15 @@ description: |

properties:
compatible:
- items:
+ oneOf:
+ - items:
+ - enum:
+ - amlogic,gxbb-vdec # GXBB (S905)
+ - amlogic,gxl-vdec # GXL (S905X, S905D)
+ - amlogic,gxm-vdec # GXM (S912)
+ - const: amlogic,gx-vdec
- enum:
- - amlogic,gxbb-vdec # GXBB (S905)
- - amlogic,gxl-vdec # GXL (S905X, S905D)
- - amlogic,gxm-vdec # GXM (S912)
- - const: amlogic,gx-vdec
+ - amlogic,g12a-vdec # G12A (S905X2, S905D2)

interrupts:
minItems: 2
@@ -59,13 +62,9 @@ properties:

clocks:
minItems: 4
+ maxItems: 5

- clock-names:
- items:
- - const: dos_parser
- - const: dos
- - const: vdec_1
- - const: vdec_hevc
+ clock-names: true

amlogic,ao-sysctrl:
description: should point to the AOBUS sysctrl node
@@ -77,6 +76,42 @@ properties:
allOf:
- $ref: /schemas/types.yaml#/definitions/phandle

+allOf:
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - amlogic,gx-vdec
+
+ then:
+ properties:
+ clock-names:
+ minItems: 4
+ items:
+ - const: dos_parser
+ - const: dos
+ - const: vdec_1
+ - const: vdec_hevc
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - amlogic,g12a-vdec
+
+ then:
+ properties:
+ clock-names:
+ minItems: 5
+ items:
+ - const: dos_parser
+ - const: dos
+ - const: vdec_1
+ - const: vdec_hevc
+ - const: vdec_hevcf
+
required:
- compatible
- reg
--
2.22.0



2019-12-03 23:23:10

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 2/4] dt-bindings: media: amlogic,gx-vdec: add bindings for G12A family

On Wed, Nov 20, 2019 at 12:14:28PM +0100, Neil Armstrong wrote:
> Add bindings to support the Amlogic Video Decoder on the Amlogic G12A
> family.
>
> For the G12A family, a supplementary clock is needed to operate the
> HEVC/VP9 decoder.
>
> Signed-off-by: Neil Armstrong <[email protected]>
> ---
> .../bindings/media/amlogic,gx-vdec.yaml | 57 +++++++++++++++----
> 1 file changed, 46 insertions(+), 11 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml b/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
> index 878944867d6e..8ea979bb97e6 100644
> --- a/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
> +++ b/Documentation/devicetree/bindings/media/amlogic,gx-vdec.yaml
> @@ -27,12 +27,15 @@ description: |
>
> properties:
> compatible:
> - items:
> + oneOf:
> + - items:
> + - enum:
> + - amlogic,gxbb-vdec # GXBB (S905)
> + - amlogic,gxl-vdec # GXL (S905X, S905D)
> + - amlogic,gxm-vdec # GXM (S912)
> + - const: amlogic,gx-vdec
> - enum:
> - - amlogic,gxbb-vdec # GXBB (S905)
> - - amlogic,gxl-vdec # GXL (S905X, S905D)
> - - amlogic,gxm-vdec # GXM (S912)
> - - const: amlogic,gx-vdec
> + - amlogic,g12a-vdec # G12A (S905X2, S905D2)
>
> interrupts:
> minItems: 2
> @@ -59,13 +62,9 @@ properties:
>
> clocks:
> minItems: 4
> + maxItems: 5
>
> - clock-names:
> - items:
> - - const: dos_parser
> - - const: dos
> - - const: vdec_1
> - - const: vdec_hevc

You can leave this here and add the 5th clock along with { minItems: 4,
maxItems: 5 }.

Then the 'if' schema just needs a 'maxItems: 4'.

> + clock-names: true
>
> amlogic,ao-sysctrl:
> description: should point to the AOBUS sysctrl node
> @@ -77,6 +76,42 @@ properties:
> allOf:
> - $ref: /schemas/types.yaml#/definitions/phandle
>
> +allOf:
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - amlogic,gx-vdec
> +
> + then:
> + properties:
> + clock-names:
> + minItems: 4
> + items:
> + - const: dos_parser
> + - const: dos
> + - const: vdec_1
> + - const: vdec_hevc
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - amlogic,g12a-vdec
> +
> + then:
> + properties:
> + clock-names:
> + minItems: 5
> + items:
> + - const: dos_parser
> + - const: dos
> + - const: vdec_1
> + - const: vdec_hevc
> + - const: vdec_hevcf
> +
> required:
> - compatible
> - reg
> --
> 2.22.0
>