Hi Morimoto-san,
From: Kuninori Morimoto kuninori.morimoto.gx@renesas.com
This patch switches from .txt base to .yaml base Document.
Signed-off-by: Kuninori Morimoto kuninori.morimoto.gx@renesas.com
.../bindings/sound/audio-graph-card.txt | 337 ------------------ .../bindings/sound/audio-graph-card.yaml | 165 +++++++++ .../devicetree/bindings/vendor-prefixes.yaml | 2 +- 3 files changed, 166 insertions(+), 338 deletions(-) delete mode 100644 Documentation/devicetree/bindings/sound/audio-graph-card.txt create mode 100644 Documentation/devicetree/bindings/sound/audio-graph-card.yaml
diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card.txt b/Documentation/devicetree/bindings/sound/audio-graph-card.txt deleted file mode 100644 index d5f6919a2d69..000000000000 --- a/Documentation/devicetree/bindings/sound/audio-graph-card.txt +++ /dev/null @@ -1,337 +0,0 @@
...
diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card.yaml b/Documentation/devicetree/bindings/sound/audio-graph-card.yaml new file mode 100644 index 000000000000..9ccffbda86a8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/audio-graph-card.yaml @@ -0,0 +1,165 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/audio-graph-card.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Audio Graph Card Driver Device Tree Bindings
+maintainers:
- Kuninori Morimoto kuninori.morimoto.gx@renesas.com
+properties:
- compatible:
- enum:
- audio-graph-card
- audio-graph-scu-card
Since I am trying to re-use most of audio-graph for Tegra, can 'compatible' be moved to a separate schema? For example, audio-graph.yaml -> defines all the common stuff audio-graph-card.yaml -> audio-graph.yaml + 'compatible' property Similarly, tegra-audio-graph-card.yaml -> audio-graph.yaml + Tegra 'compatible' property
- dais:
- $ref: /schemas/types.yaml#/definitions/phandle-array
- label:
- maxItems: 1
- prefix:
- description: "device name prefix"
- $ref: /schemas/types.yaml#/definitions/string
- "audio-graph-card,prefix":
- description: "device name prefix"
- $ref: /schemas/types.yaml#/definitions/string
- routing:
- description: |
A list of the connections between audio components.
Each entry is a pair of strings, the first being the
connection's sink, the second being the connection's source.
- $ref: /schemas/types.yaml#/definitions/non-unique-string-array
- widgets:
- description: User specified audio sound widgets.
- $ref: /schemas/types.yaml#/definitions/non-unique-string-array
- convert-rate:
- description: CPU to Codec rate convert.
- $ref: /schemas/types.yaml#/definitions/uint32
- "audio-graph-card,convert-rate":
- description: CPU to Codec rate convert.
- $ref: /schemas/types.yaml#/definitions/uint32
- convert-channels:
- description: CPU to Codec rate channels.
- $ref: /schemas/types.yaml#/definitions/uint32
- "audio-graph-card,convert-channels":
- description: CPU to Codec rate channels.
- $ref: /schemas/types.yaml#/definitions/uint32
- pa-gpios:
- maxItems: 1
- hp-det-gpio:
- maxItems: 1
- mic-det-gpio:
- maxItems: 1
- endpoint:
- type: object
- properties:
remote-endpoint:
maxItems: 1
mclk-fs:
description: |
Multiplication factor between stream rate and codec mclk.
When defined, mclk-fs property defined in dai-link sub nodes are ignored.
$ref: /schemas/types.yaml#/definitions/uint32
frame-inversion:
description: dai-link uses frame clock inversion
$ref: /schemas/types.yaml#/definitions/flag
bitclock-inversion:
description: dai-link uses bit clock inversion
$ref: /schemas/types.yaml#/definitions/flag
frame-master:
description: Indicates dai-link frame master.
$ref: /schemas/types.yaml#/definitions/phandle-array
maxItems: 1
bitclock-master:
description: Indicates dai-link bit clock master
$ref: /schemas/types.yaml#/definitions/phandle-array
maxItems: 1
dai-format:
description: audio format.
items:
enum:
- i2s
- right_j
- left_j
- dsp_a
- dsp_b
- ac97
- pdm
- msb
- lsb
convert-rate:
description: CPU to Codec rate convert.
$ref: /schemas/types.yaml#/definitions/uint32
convert-channels:
description: CPU to Codec rate channels.
$ref: /schemas/types.yaml#/definitions/uint32
- required:
- remote-endpoint
Is it possible to have endpoint without port nodes?
- port:
- description: single OF-Graph subnode
- type: object
- properties:
reg:
maxItems: 1
prefix:
description: "device name prefix"
$ref: /schemas/types.yaml#/definitions/string
convert-rate:
description: CPU to Codec rate convert.
$ref: /schemas/types.yaml#/definitions/uint32
convert-channels:
description: CPU to Codec rate channels.
$ref: /schemas/types.yaml#/definitions/uint32
- patternProperties:
"^endpoint(@[0-9a-f]+)?":
$ref: "#/properties/endpoint"
- ports:
- description: multi OF-Graph subnode
- type: object
- patternProperties:
"^port(@[0-9a-f]+)?":
$ref: "#/properties/port"
+required:
- compatible
- dais
+additionalProperties: false
This needs to be true when other files want to reference this schema and/or define some additional properties.
+examples:
- |
- sound {
compatible = "audio-graph-card";
dais = <&cpu_port_a>;
- };
- cpu {
/*
* dai-controller own settings
*/
port {
cpu_endpoint: endpoint {
remote-endpoint = <&codec_endpoint>;
dai-format = "left_j";
};
};
- };
- codec {
/*
* codec own settings
*/
port {
codec_endpoint: endpoint {
remote-endpoint = <&cpu_endpoint>;
};
};
- };
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml index 63996ab03521..5ada35ddac7e 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.yaml +++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml @@ -20,7 +20,7 @@ patternProperties: "^(keypad|m25p|max8952|max8997|max8998|mpmc),.*": true "^(pinctrl-single|#pinctrl-single|PowerPC),.*": true "^(pl022|pxa-mmc|rcar_sound|rotary-encoder|s5m8767|sdhci),.*": true
- "^(simple-audio-card|st-plgpio|st-spics|ts),.*": true
"^(simple-audio-card|audio-graph-card|st-plgpio|st-spics|ts),.*": true
# Keep list in alphabetical order. "^70mai,.*":
-- 2.25.1