xref: /freebsd/sys/contrib/device-tree/Bindings/sound/renesas,rz-ssi.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2354d7675SEmmanuel Vadot%YAML 1.2
3354d7675SEmmanuel Vadot---
4354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/sound/renesas,rz-ssi.yaml#
5354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6354d7675SEmmanuel Vadot
7c9ccf3a3SEmmanuel Vadottitle: Renesas RZ/{G2L,V2L} ASoC Sound Serial Interface (SSIF-2)
8354d7675SEmmanuel Vadot
9354d7675SEmmanuel Vadotmaintainers:
10354d7675SEmmanuel Vadot  - Biju Das <biju.das.jz@bp.renesas.com>
11354d7675SEmmanuel Vadot
128bab661aSEmmanuel VadotallOf:
138bab661aSEmmanuel Vadot  - $ref: dai-common.yaml#
148bab661aSEmmanuel Vadot
15354d7675SEmmanuel Vadotproperties:
16354d7675SEmmanuel Vadot  compatible:
17354d7675SEmmanuel Vadot    items:
18354d7675SEmmanuel Vadot      - enum:
19*8d13bc63SEmmanuel Vadot          - renesas,r9a07g043-ssi  # RZ/G2UL and RZ/Five
20354d7675SEmmanuel Vadot          - renesas,r9a07g044-ssi  # RZ/G2{L,LC}
21c9ccf3a3SEmmanuel Vadot          - renesas,r9a07g054-ssi  # RZ/V2L
22354d7675SEmmanuel Vadot      - const: renesas,rz-ssi
23354d7675SEmmanuel Vadot
24354d7675SEmmanuel Vadot  reg:
25354d7675SEmmanuel Vadot    maxItems: 1
26354d7675SEmmanuel Vadot
27354d7675SEmmanuel Vadot  interrupts:
28fac71e4eSEmmanuel Vadot    minItems: 2
29fac71e4eSEmmanuel Vadot    maxItems: 3
30354d7675SEmmanuel Vadot
31354d7675SEmmanuel Vadot  interrupt-names:
32fac71e4eSEmmanuel Vadot    oneOf:
33fac71e4eSEmmanuel Vadot      - items:
34354d7675SEmmanuel Vadot          - const: int_req
35354d7675SEmmanuel Vadot          - const: dma_rx
36354d7675SEmmanuel Vadot          - const: dma_tx
37fac71e4eSEmmanuel Vadot      - items:
38fac71e4eSEmmanuel Vadot          - const: int_req
39354d7675SEmmanuel Vadot          - const: dma_rt
40354d7675SEmmanuel Vadot
41354d7675SEmmanuel Vadot  clocks:
42354d7675SEmmanuel Vadot    maxItems: 4
43354d7675SEmmanuel Vadot
44354d7675SEmmanuel Vadot  clock-names:
45354d7675SEmmanuel Vadot    items:
46354d7675SEmmanuel Vadot      - const: ssi
47354d7675SEmmanuel Vadot      - const: ssi_sfr
48354d7675SEmmanuel Vadot      - const: audio_clk1
49354d7675SEmmanuel Vadot      - const: audio_clk2
50354d7675SEmmanuel Vadot
51354d7675SEmmanuel Vadot  power-domains:
52354d7675SEmmanuel Vadot    maxItems: 1
53354d7675SEmmanuel Vadot
54354d7675SEmmanuel Vadot  resets:
55354d7675SEmmanuel Vadot    maxItems: 1
56354d7675SEmmanuel Vadot
57354d7675SEmmanuel Vadot  dmas:
58354d7675SEmmanuel Vadot    minItems: 1
59354d7675SEmmanuel Vadot    maxItems: 2
60354d7675SEmmanuel Vadot    description:
61b97ee269SEmmanuel Vadot      The first cell represents a phandle to dmac.
62354d7675SEmmanuel Vadot      The second cell specifies the encoded MID/RID values of the SSI port
63354d7675SEmmanuel Vadot      connected to the DMA client and the slave channel configuration
64354d7675SEmmanuel Vadot      parameters.
65354d7675SEmmanuel Vadot      bits[0:9]   - Specifies MID/RID value of a SSI channel as below
66354d7675SEmmanuel Vadot                    MID/RID value of SSI rx0 = 0x256
67354d7675SEmmanuel Vadot                    MID/RID value of SSI tx0 = 0x255
68354d7675SEmmanuel Vadot                    MID/RID value of SSI rx1 = 0x25a
69354d7675SEmmanuel Vadot                    MID/RID value of SSI tx1 = 0x259
70354d7675SEmmanuel Vadot                    MID/RID value of SSI rt2 = 0x25f
71354d7675SEmmanuel Vadot                    MID/RID value of SSI rx3 = 0x262
72354d7675SEmmanuel Vadot                    MID/RID value of SSI tx3 = 0x261
73354d7675SEmmanuel Vadot      bit[10]     - HIEN = 1, Detects a request in response to the rising edge
74354d7675SEmmanuel Vadot                    of the signal
75354d7675SEmmanuel Vadot      bit[11]     - LVL = 0, Detects based on the edge
76354d7675SEmmanuel Vadot      bits[12:14] - AM = 2, Bus cycle mode
77354d7675SEmmanuel Vadot      bit[15]     - TM = 0, Single transfer mode
78354d7675SEmmanuel Vadot
79354d7675SEmmanuel Vadot  dma-names:
80354d7675SEmmanuel Vadot    oneOf:
81354d7675SEmmanuel Vadot      - items:
82354d7675SEmmanuel Vadot          - const: tx
83354d7675SEmmanuel Vadot          - const: rx
84354d7675SEmmanuel Vadot      - items:
85354d7675SEmmanuel Vadot          - const: rt
86354d7675SEmmanuel Vadot
87354d7675SEmmanuel Vadot  '#sound-dai-cells':
88354d7675SEmmanuel Vadot    const: 0
89354d7675SEmmanuel Vadot
90354d7675SEmmanuel Vadotrequired:
91354d7675SEmmanuel Vadot  - compatible
92354d7675SEmmanuel Vadot  - reg
93354d7675SEmmanuel Vadot  - interrupts
94354d7675SEmmanuel Vadot  - interrupt-names
95354d7675SEmmanuel Vadot  - clocks
96354d7675SEmmanuel Vadot  - clock-names
97354d7675SEmmanuel Vadot  - resets
98354d7675SEmmanuel Vadot  - '#sound-dai-cells'
99354d7675SEmmanuel Vadot
1008bab661aSEmmanuel VadotunevaluatedProperties: false
101354d7675SEmmanuel Vadot
102354d7675SEmmanuel Vadotexamples:
103354d7675SEmmanuel Vadot  - |
104354d7675SEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
105354d7675SEmmanuel Vadot    #include <dt-bindings/clock/r9a07g044-cpg.h>
106354d7675SEmmanuel Vadot
107354d7675SEmmanuel Vadot    ssi0: ssi@10049c00 {
108354d7675SEmmanuel Vadot        compatible = "renesas,r9a07g044-ssi",
109354d7675SEmmanuel Vadot                     "renesas,rz-ssi";
110354d7675SEmmanuel Vadot            reg = <0x10049c00 0x400>;
111354d7675SEmmanuel Vadot            interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
112354d7675SEmmanuel Vadot                         <GIC_SPI 327 IRQ_TYPE_EDGE_RISING>,
113fac71e4eSEmmanuel Vadot                         <GIC_SPI 328 IRQ_TYPE_EDGE_RISING>;
114fac71e4eSEmmanuel Vadot            interrupt-names = "int_req", "dma_rx", "dma_tx";
115354d7675SEmmanuel Vadot            clocks = <&cpg CPG_MOD R9A07G044_SSI0_PCLK2>,
116354d7675SEmmanuel Vadot                     <&cpg CPG_MOD R9A07G044_SSI0_PCLK_SFR>,
117354d7675SEmmanuel Vadot                     <&audio_clk1>,
118354d7675SEmmanuel Vadot                     <&audio_clk2>;
119354d7675SEmmanuel Vadot            clock-names = "ssi", "ssi_sfr", "audio_clk1", "audio_clk2";
120354d7675SEmmanuel Vadot            power-domains = <&cpg>;
121354d7675SEmmanuel Vadot            resets = <&cpg R9A07G044_SSI0_RST_M2_REG>;
122354d7675SEmmanuel Vadot            dmas = <&dmac 0x2655>,
123354d7675SEmmanuel Vadot                   <&dmac 0x2656>;
124354d7675SEmmanuel Vadot            dma-names = "tx", "rx";
125354d7675SEmmanuel Vadot            #sound-dai-cells = <0>;
126354d7675SEmmanuel Vadot    };
127