1# 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' Node Bindings
8
9maintainers:
10  - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
11
12select: false
13
14allOf:
15  - $ref: /schemas/graph.yaml#/$defs/port-base
16
17properties:
18  prefix:
19    description: "device name prefix"
20    $ref: /schemas/types.yaml#/definitions/string
21  convert-rate:
22    description: CPU to Codec rate convert.
23    $ref: /schemas/types.yaml#/definitions/uint32
24  convert-channels:
25    description: CPU to Codec rate channels.
26    $ref: /schemas/types.yaml#/definitions/uint32
27patternProperties:
28  "^endpoint(@[0-9a-f]+)?":
29    $ref: /schemas/graph.yaml#/$defs/endpoint-base
30    properties:
31      mclk-fs:
32        description: |
33          Multiplication factor between stream rate and codec mclk.
34          When defined, mclk-fs property defined in dai-link sub nodes are
35          ignored.
36        $ref: /schemas/types.yaml#/definitions/uint32
37      frame-inversion:
38        description: dai-link uses frame clock inversion
39        $ref: /schemas/types.yaml#/definitions/flag
40      bitclock-inversion:
41        description: dai-link uses bit clock inversion
42        $ref: /schemas/types.yaml#/definitions/flag
43      frame-master:
44        description: Indicates dai-link frame master.
45        oneOf:
46          - $ref: /schemas/types.yaml#/definitions/flag
47          - $ref: /schemas/types.yaml#/definitions/phandle
48      bitclock-master:
49        description: Indicates dai-link bit clock master
50        oneOf:
51          - $ref: /schemas/types.yaml#/definitions/flag
52          - $ref: /schemas/types.yaml#/definitions/phandle
53
54      dai-format:
55        description: audio format.
56        items:
57          enum:
58            - i2s
59            - right_j
60            - left_j
61            - dsp_a
62            - dsp_b
63            - ac97
64            - pdm
65            - msb
66            - lsb
67      convert-rate:
68        description: CPU to Codec rate convert.
69        $ref: /schemas/types.yaml#/definitions/uint32
70      convert-channels:
71        description: CPU to Codec rate channels.
72        $ref: /schemas/types.yaml#/definitions/uint32
73
74      dai-tdm-slot-width-map:
75        description: Mapping of sample widths to slot widths. For hardware
76          that cannot support a fixed slot width or a slot width always
77          equal to sample width. A matrix of one or more 3-tuples.
78        $ref: /schemas/types.yaml#/definitions/uint32-matrix
79        items:
80          items:
81            -
82              description: Sample width in bits
83              minimum: 8
84              maximum: 64
85            -
86              description: Slot width in bits
87              minimum: 8
88              maximum: 256
89            -
90              description: Slot count
91              minimum: 1
92              maximum: 64
93
94additionalProperties: true
95