ASoC: dt-bindings: renesas,rsnd.yaml: add R-Car Gen4 support

There are no compatible for "reg/reg-names" and "clock-name"
between previous R-Car series and R-Car Gen4.

"reg/reg-names" needs 3 categorize (for Gen1, for Gen2/Gen3, for Gen4),
therefore, use 3 if-then to avoid nested if-then-else.

Move "clock-name" detail properties to under allOf to use if-then-else
for Gen4 or others.

Link: https://lore.kernel.org/all/87zg9vk0ex.wl-kuninori.morimoto.gx@renesas.com/#r
Link: https://lore.kernel.org/all/87r0v2uvm7.wl-kuninori.morimoto.gx@renesas.com/#r
Link: https://lore.kernel.org/all/87r0v1t02h.wl-kuninori.morimoto.gx@renesas.com/#r
Link: https://lore.kernel.org/all/87y1p7bpma.wl-kuninori.morimoto.gx@renesas.com/#r
Reported-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/87sffa8g99.wl-kuninori.morimoto.gx@renesas.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Kuninori Morimoto 2023-02-13 02:13:06 +00:00 committed by Mark Brown
parent 587cbe9915
commit 7f8b5b24bb
No known key found for this signature in database
GPG key ID: 24D68B725D5487D0

View file

@ -101,17 +101,7 @@ properties:
clock-names:
description: List of necessary clock names.
minItems: 1
maxItems: 31
items:
oneOf:
- const: ssi-all
- pattern: '^ssi\.[0-9]$'
- pattern: '^src\.[0-9]$'
- pattern: '^mix\.[0-1]$'
- pattern: '^ctu\.[0-1]$'
- pattern: '^dvc\.[0-1]$'
- pattern: '^clk_(a|b|c|i)$'
# details are defined below
ports:
$ref: audio-graph-port.yaml#/definitions/port-base
@ -288,6 +278,11 @@ required:
allOf:
- $ref: dai-common.yaml#
#--------------------
# reg/reg-names
#--------------------
# for Gen1
- if:
properties:
compatible:
@ -303,7 +298,15 @@ allOf:
- scu
- ssi
- adg
else:
# for Gen2/Gen3
- if:
properties:
compatible:
contains:
enum:
- renesas,rcar_sound-gen2
- renesas,rcar_sound-gen3
then:
properties:
reg:
minItems: 5
@ -315,6 +318,55 @@ allOf:
- ssiu
- ssi
- audmapp
# for Gen4
- if:
properties:
compatible:
contains:
const: renesas,rcar_sound-gen4
then:
properties:
reg:
maxItems: 4
reg-names:
items:
enum:
- adg
- ssiu
- ssi
- sdmc
#--------------------
# clock-names
#--------------------
- if:
properties:
compatible:
contains:
const: renesas,rcar_sound-gen4
then:
properties:
clock-names:
maxItems: 3
items:
enum:
- ssi.0
- ssiu.0
- clkin
else:
properties:
clock-names:
minItems: 1
maxItems: 31
items:
oneOf:
- const: ssi-all
- pattern: '^ssi\.[0-9]$'
- pattern: '^src\.[0-9]$'
- pattern: '^mix\.[0-1]$'
- pattern: '^ctu\.[0-1]$'
- pattern: '^dvc\.[0-1]$'
- pattern: '^clk_(a|b|c|i)$'
unevaluatedProperties: false