blob: b13c08de505e41480732c2060df05c8081b17d31 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/sound/audio-graph-port.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Audio Graph Card 'port'
8
9maintainers:
10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
11
12select: false
13
14definitions:
15 port-base:
16 allOf:
17 - $ref: /schemas/graph.yaml#/$defs/port-base
18 - $ref: /schemas/sound/dai-params.yaml#
19 properties:
20 mclk-fs:
21 $ref: simple-card.yaml#/definitions/mclk-fs
Tom Rini93743d22024-04-01 09:08:13 -040022 playback-only:
23 description: port connection used only for playback
24 $ref: /schemas/types.yaml#/definitions/flag
25 capture-only:
26 description: port connection used only for capture
27 $ref: /schemas/types.yaml#/definitions/flag
Tom Rini53633a82024-02-29 12:33:36 -050028
29 endpoint-base:
30 allOf:
31 - $ref: /schemas/graph.yaml#/$defs/endpoint-base
32 - $ref: /schemas/sound/dai-params.yaml#
33 properties:
34 mclk-fs:
35 $ref: simple-card.yaml#/definitions/mclk-fs
36 frame-inversion:
37 description: dai-link uses frame clock inversion
38 $ref: /schemas/types.yaml#/definitions/flag
39 bitclock-inversion:
40 description: dai-link uses bit clock inversion
41 $ref: /schemas/types.yaml#/definitions/flag
42 frame-master:
43 description: Indicates dai-link frame master.
44 oneOf:
45 - $ref: /schemas/types.yaml#/definitions/flag
46 - $ref: /schemas/types.yaml#/definitions/phandle
47 bitclock-master:
48 description: Indicates dai-link bit clock master
49 oneOf:
50 - $ref: /schemas/types.yaml#/definitions/flag
51 - $ref: /schemas/types.yaml#/definitions/phandle
52 clocks:
53 description: Indicates system clock
54 $ref: /schemas/types.yaml#/definitions/phandle
55 system-clock-frequency:
56 $ref: simple-card.yaml#/definitions/system-clock-frequency
57 system-clock-direction-out:
58 $ref: simple-card.yaml#/definitions/system-clock-direction-out
59 system-clock-fixed:
60 $ref: simple-card.yaml#/definitions/system-clock-fixed
61
62 dai-format:
63 description: audio format.
64 items:
65 enum:
66 - i2s
67 - right_j
68 - left_j
69 - dsp_a
70 - dsp_b
71 - ac97
72 - pdm
73 - msb
74 - lsb
75
76 dai-tdm-slot-num:
77 description: Number of slots in use.
78 $ref: /schemas/types.yaml#/definitions/uint32
79 dai-tdm-slot-width:
80 description: Width in bits for each slot.
81 $ref: /schemas/types.yaml#/definitions/uint32
82 dai-tdm-slot-width-map:
83 description: Mapping of sample widths to slot widths. For hardware
84 that cannot support a fixed slot width or a slot width always
85 equal to sample width. A matrix of one or more 3-tuples.
86 $ref: /schemas/types.yaml#/definitions/uint32-matrix
87 items:
88 items:
89 -
90 description: Sample width in bits
91 minimum: 8
92 maximum: 64
93 -
94 description: Slot width in bits
95 minimum: 8
96 maximum: 256
97 -
98 description: Slot count
99 minimum: 1
100 maximum: 64
101
102 ports:
103 $ref: "#/definitions/port-base"
104 unevaluatedProperties: false
105 patternProperties:
106 "^port(@[0-9a-f]+)?$":
107 $ref: "#/definitions/port-base"
108 unevaluatedProperties: false
109 patternProperties:
110 "^endpoint(@[0-9a-f]+)?":
111 $ref: "#/definitions/endpoint-base"
112 unevaluatedProperties: false
113
114allOf:
115 - $ref: "#/definitions/port-base"
116
117patternProperties:
118 "^endpoint(@[0-9a-f]+)?":
119 $ref: "#/definitions/endpoint-base"
120 unevaluatedProperties: false
121
122additionalProperties: true