xref: /openbmc/linux/Documentation/devicetree/bindings/sound/audio-graph-port.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1e52f3f29SSameer Pujar# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2e52f3f29SSameer Pujar%YAML 1.2
3e52f3f29SSameer Pujar---
4e52f3f29SSameer Pujar$id: http://devicetree.org/schemas/sound/audio-graph-port.yaml#
5e52f3f29SSameer Pujar$schema: http://devicetree.org/meta-schemas/core.yaml#
6e52f3f29SSameer Pujar
79fa3ad1aSKrzysztof Kozlowskititle: Audio Graph Card 'port'
8e52f3f29SSameer Pujar
9e52f3f29SSameer Pujarmaintainers:
10e52f3f29SSameer Pujar  - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
11e52f3f29SSameer Pujar
12e52f3f29SSameer Pujarselect: false
13e52f3f29SSameer Pujar
14bbda859eSKuninori Morimotodefinitions:
15bbda859eSKuninori Morimoto  port-base:
16bbda859eSKuninori Morimoto    $ref: /schemas/graph.yaml#/$defs/port-base
17e52f3f29SSameer Pujar    properties:
18e52f3f29SSameer Pujar      convert-rate:
19*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-rate
20e52f3f29SSameer Pujar      convert-channels:
21*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-channels
2295592787SSameer Pujar      convert-sample-format:
23*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-format
24a2fabeaaSKuninori Morimoto      mclk-fs:
25*d9e909e2SRob Herring        $ref: simple-card.yaml#/definitions/mclk-fs
26b79b6220SSameer Pujar
27bbda859eSKuninori Morimoto  endpoint-base:
28ec1c8302SRob Herring    $ref: /schemas/graph.yaml#/$defs/endpoint-base
29e52f3f29SSameer Pujar    properties:
30e52f3f29SSameer Pujar      mclk-fs:
31*d9e909e2SRob Herring        $ref: simple-card.yaml#/definitions/mclk-fs
32e52f3f29SSameer Pujar      frame-inversion:
33e52f3f29SSameer Pujar        description: dai-link uses frame clock inversion
34e52f3f29SSameer Pujar        $ref: /schemas/types.yaml#/definitions/flag
35e52f3f29SSameer Pujar      bitclock-inversion:
36e52f3f29SSameer Pujar        description: dai-link uses bit clock inversion
37e52f3f29SSameer Pujar        $ref: /schemas/types.yaml#/definitions/flag
38e52f3f29SSameer Pujar      frame-master:
39e52f3f29SSameer Pujar        description: Indicates dai-link frame master.
409b3c847bSKuninori Morimoto        oneOf:
419b3c847bSKuninori Morimoto          - $ref: /schemas/types.yaml#/definitions/flag
429b3c847bSKuninori Morimoto          - $ref: /schemas/types.yaml#/definitions/phandle
43e52f3f29SSameer Pujar      bitclock-master:
44e52f3f29SSameer Pujar        description: Indicates dai-link bit clock master
459b3c847bSKuninori Morimoto        oneOf:
469b3c847bSKuninori Morimoto          - $ref: /schemas/types.yaml#/definitions/flag
479b3c847bSKuninori Morimoto          - $ref: /schemas/types.yaml#/definitions/phandle
482f0be75cSKuninori Morimoto      clocks:
492f0be75cSKuninori Morimoto        description: Indicates system clock
502f0be75cSKuninori Morimoto        $ref: /schemas/types.yaml#/definitions/phandle
512f0be75cSKuninori Morimoto      system-clock-frequency:
52*d9e909e2SRob Herring        $ref: simple-card.yaml#/definitions/system-clock-frequency
532f0be75cSKuninori Morimoto      system-clock-direction-out:
54*d9e909e2SRob Herring        $ref: simple-card.yaml#/definitions/system-clock-direction-out
552f0be75cSKuninori Morimoto      system-clock-fixed:
56*d9e909e2SRob Herring        $ref: simple-card.yaml#/definitions/system-clock-fixed
579b3c847bSKuninori Morimoto
58e52f3f29SSameer Pujar      dai-format:
59e52f3f29SSameer Pujar        description: audio format.
60e52f3f29SSameer Pujar        items:
61e52f3f29SSameer Pujar          enum:
62e52f3f29SSameer Pujar            - i2s
63e52f3f29SSameer Pujar            - right_j
64e52f3f29SSameer Pujar            - left_j
65e52f3f29SSameer Pujar            - dsp_a
66e52f3f29SSameer Pujar            - dsp_b
67e52f3f29SSameer Pujar            - ac97
68e52f3f29SSameer Pujar            - pdm
69e52f3f29SSameer Pujar            - msb
70e52f3f29SSameer Pujar            - lsb
71e52f3f29SSameer Pujar      convert-rate:
72*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-rate
73e52f3f29SSameer Pujar      convert-channels:
74*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-channels
7595592787SSameer Pujar      convert-sample-format:
76*d9e909e2SRob Herring        $ref: /schemas/sound/dai-params.yaml#/$defs/dai-sample-format
77e52f3f29SSameer Pujar
7885311099SMarek Vasut      dai-tdm-slot-num:
7985311099SMarek Vasut        description: Number of slots in use.
8085311099SMarek Vasut        $ref: /schemas/types.yaml#/definitions/uint32
8185311099SMarek Vasut      dai-tdm-slot-width:
8285311099SMarek Vasut        description: Width in bits for each slot.
8385311099SMarek Vasut        $ref: /schemas/types.yaml#/definitions/uint32
8426e5366dSRichard Fitzgerald      dai-tdm-slot-width-map:
8526e5366dSRichard Fitzgerald        description: Mapping of sample widths to slot widths. For hardware
8626e5366dSRichard Fitzgerald          that cannot support a fixed slot width or a slot width always
8726e5366dSRichard Fitzgerald          equal to sample width. A matrix of one or more 3-tuples.
8826e5366dSRichard Fitzgerald        $ref: /schemas/types.yaml#/definitions/uint32-matrix
8926e5366dSRichard Fitzgerald        items:
9026e5366dSRichard Fitzgerald          items:
9126e5366dSRichard Fitzgerald            -
9226e5366dSRichard Fitzgerald              description: Sample width in bits
9326e5366dSRichard Fitzgerald              minimum: 8
9426e5366dSRichard Fitzgerald              maximum: 64
9526e5366dSRichard Fitzgerald            -
9626e5366dSRichard Fitzgerald              description: Slot width in bits
9726e5366dSRichard Fitzgerald              minimum: 8
9826e5366dSRichard Fitzgerald              maximum: 256
9926e5366dSRichard Fitzgerald            -
10026e5366dSRichard Fitzgerald              description: Slot count
10126e5366dSRichard Fitzgerald              minimum: 1
10226e5366dSRichard Fitzgerald              maximum: 64
10326e5366dSRichard Fitzgerald
1046a7216dbSKuninori Morimoto  ports:
1056a7216dbSKuninori Morimoto    $ref: "#/definitions/port-base"
1066a7216dbSKuninori Morimoto    unevaluatedProperties: false
1076a7216dbSKuninori Morimoto    patternProperties:
1086a7216dbSKuninori Morimoto      "^port(@[0-9a-f]+)?$":
1096a7216dbSKuninori Morimoto        $ref: "#/definitions/port-base"
1106a7216dbSKuninori Morimoto        unevaluatedProperties: false
1116a7216dbSKuninori Morimoto        patternProperties:
1126a7216dbSKuninori Morimoto          "^endpoint(@[0-9a-f]+)?":
1136a7216dbSKuninori Morimoto            $ref: "#/definitions/endpoint-base"
1146a7216dbSKuninori Morimoto            unevaluatedProperties: false
1156a7216dbSKuninori Morimoto
116bbda859eSKuninori MorimotoallOf:
117bbda859eSKuninori Morimoto  - $ref: "#/definitions/port-base"
118bbda859eSKuninori Morimoto
119bbda859eSKuninori MorimotopatternProperties:
120bbda859eSKuninori Morimoto  "^endpoint(@[0-9a-f]+)?":
121bbda859eSKuninori Morimoto    $ref: "#/definitions/endpoint-base"
122bbda859eSKuninori Morimoto    unevaluatedProperties: false
123bbda859eSKuninori Morimoto
124e52f3f29SSameer PujaradditionalProperties: true
125