12d8fc973SKuninori Morimoto# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 22d8fc973SKuninori Morimoto%YAML 1.2 32d8fc973SKuninori Morimoto--- 42d8fc973SKuninori Morimoto$id: http://devicetree.org/schemas/sound/renesas,rsnd.yaml# 52d8fc973SKuninori Morimoto$schema: http://devicetree.org/meta-schemas/core.yaml# 62d8fc973SKuninori Morimoto 7dd3cb467SAndrew Lunntitle: Renesas R-Car Sound Driver 82d8fc973SKuninori Morimoto 92d8fc973SKuninori Morimotomaintainers: 102d8fc973SKuninori Morimoto - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 112d8fc973SKuninori Morimoto 122d8fc973SKuninori Morimotoproperties: 132d8fc973SKuninori Morimoto 142d8fc973SKuninori Morimoto compatible: 152d8fc973SKuninori Morimoto oneOf: 162d8fc973SKuninori Morimoto # for Gen1 SoC 172d8fc973SKuninori Morimoto - items: 182d8fc973SKuninori Morimoto - enum: 192d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7778 # R-Car M1A 202d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7779 # R-Car H1 21167b3a2bSKrzysztof Kozlowski - const: renesas,rcar_sound-gen1 222d8fc973SKuninori Morimoto # for Gen2 SoC 232d8fc973SKuninori Morimoto - items: 242d8fc973SKuninori Morimoto - enum: 252d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7742 # RZ/G1H 262d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7743 # RZ/G1M 272d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7744 # RZ/G1N 282d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7745 # RZ/G1E 292d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a77470 # RZ/G1C 302d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7790 # R-Car H2 312d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7791 # R-Car M2-W 322d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7793 # R-Car M2-N 332d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7794 # R-Car E2 34167b3a2bSKrzysztof Kozlowski - const: renesas,rcar_sound-gen2 352d8fc973SKuninori Morimoto # for Gen3 SoC 362d8fc973SKuninori Morimoto - items: 372d8fc973SKuninori Morimoto - enum: 382d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a774a1 # RZ/G2M 392d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a774b1 # RZ/G2N 402d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a774c0 # RZ/G2E 412d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a774e1 # RZ/G2H 422d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7795 # R-Car H3 432d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a7796 # R-Car M3-W 448d96ec9bSKuninori Morimoto - renesas,rcar_sound-r8a77961 # R-Car M3-W+ 452d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a77965 # R-Car M3-N 462d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a77990 # R-Car E3 472d8fc973SKuninori Morimoto - renesas,rcar_sound-r8a77995 # R-Car D3 48167b3a2bSKrzysztof Kozlowski - const: renesas,rcar_sound-gen3 492d8fc973SKuninori Morimoto # for Generic 502d8fc973SKuninori Morimoto - enum: 512d8fc973SKuninori Morimoto - renesas,rcar_sound-gen1 522d8fc973SKuninori Morimoto - renesas,rcar_sound-gen2 532d8fc973SKuninori Morimoto - renesas,rcar_sound-gen3 542d8fc973SKuninori Morimoto 552d8fc973SKuninori Morimoto reg: 562d8fc973SKuninori Morimoto minItems: 1 572d8fc973SKuninori Morimoto maxItems: 5 582d8fc973SKuninori Morimoto 592d8fc973SKuninori Morimoto reg-names: 602d8fc973SKuninori Morimoto minItems: 1 612d8fc973SKuninori Morimoto maxItems: 5 622d8fc973SKuninori Morimoto 632d8fc973SKuninori Morimoto "#sound-dai-cells": 642d8fc973SKuninori Morimoto description: | 652d8fc973SKuninori Morimoto it must be 0 if your system is using single DAI 662d8fc973SKuninori Morimoto it must be 1 if your system is using multi DAIs 672d8fc973SKuninori Morimoto enum: [0, 1] 682d8fc973SKuninori Morimoto 692d8fc973SKuninori Morimoto "#clock-cells": 702d8fc973SKuninori Morimoto description: | 712d8fc973SKuninori Morimoto it must be 0 if your system has audio_clkout 722d8fc973SKuninori Morimoto it must be 1 if your system has audio_clkout0/1/2/3 732d8fc973SKuninori Morimoto enum: [0, 1] 742d8fc973SKuninori Morimoto 752d8fc973SKuninori Morimoto clock-frequency: 762d8fc973SKuninori Morimoto description: for audio_clkout0/1/2/3 772d8fc973SKuninori Morimoto 782d8fc973SKuninori Morimoto clkout-lr-asynchronous: 792d8fc973SKuninori Morimoto description: audio_clkoutn is asynchronizes with lr-clock. 802d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/flag 812d8fc973SKuninori Morimoto 822d8fc973SKuninori Morimoto power-domains: true 832d8fc973SKuninori Morimoto 842d8fc973SKuninori Morimoto resets: 8517c2d247SKuninori Morimoto minItems: 1 862d8fc973SKuninori Morimoto maxItems: 11 872d8fc973SKuninori Morimoto 882d8fc973SKuninori Morimoto reset-names: 8917c2d247SKuninori Morimoto minItems: 1 902d8fc973SKuninori Morimoto maxItems: 11 912d8fc973SKuninori Morimoto 922d8fc973SKuninori Morimoto clocks: 932d8fc973SKuninori Morimoto description: References to SSI/SRC/MIX/CTU/DVC/AUDIO_CLK clocks. 942d8fc973SKuninori Morimoto minItems: 1 952d8fc973SKuninori Morimoto maxItems: 31 962d8fc973SKuninori Morimoto 972d8fc973SKuninori Morimoto clock-names: 982d8fc973SKuninori Morimoto description: List of necessary clock names. 992d8fc973SKuninori Morimoto minItems: 1 1002d8fc973SKuninori Morimoto maxItems: 31 1012d8fc973SKuninori Morimoto items: 1022d8fc973SKuninori Morimoto oneOf: 1032d8fc973SKuninori Morimoto - const: ssi-all 1042d8fc973SKuninori Morimoto - pattern: '^ssi\.[0-9]$' 1052d8fc973SKuninori Morimoto - pattern: '^src\.[0-9]$' 1062d8fc973SKuninori Morimoto - pattern: '^mix\.[0-1]$' 1072d8fc973SKuninori Morimoto - pattern: '^ctu\.[0-1]$' 1082d8fc973SKuninori Morimoto - pattern: '^dvc\.[0-1]$' 1092d8fc973SKuninori Morimoto - pattern: '^clk_(a|b|c|i)$' 1102d8fc973SKuninori Morimoto 11117c2d247SKuninori Morimoto ports: 112*fcedf654SKuninori Morimoto $ref: audio-graph-port.yaml#/definitions/port-base 113*fcedf654SKuninori Morimoto unevaluatedProperties: false 1149a3223b0SRob Herring patternProperties: 1157621aabdSRob Herring '^port(@[0-9a-f]+)?$': 116*fcedf654SKuninori Morimoto $ref: audio-graph-port.yaml#/definitions/port-base 117*fcedf654SKuninori Morimoto unevaluatedProperties: false 118*fcedf654SKuninori Morimoto patternProperties: 119*fcedf654SKuninori Morimoto "^endpoint(@[0-9a-f]+)?": 120*fcedf654SKuninori Morimoto $ref: audio-graph-port.yaml#/definitions/endpoint-base 121*fcedf654SKuninori Morimoto properties: 122*fcedf654SKuninori Morimoto playback: 123*fcedf654SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 124*fcedf654SKuninori Morimoto capture: 125*fcedf654SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 12617c2d247SKuninori Morimoto unevaluatedProperties: false 12717c2d247SKuninori Morimoto 1289c1e0439SRob Herring port: 129*fcedf654SKuninori Morimoto $ref: audio-graph-port.yaml#/definitions/port-base 130*fcedf654SKuninori Morimoto unevaluatedProperties: false 131*fcedf654SKuninori Morimoto patternProperties: 132*fcedf654SKuninori Morimoto "^endpoint(@[0-9a-f]+)?": 133*fcedf654SKuninori Morimoto $ref: audio-graph-port.yaml#/definitions/endpoint-base 134*fcedf654SKuninori Morimoto properties: 135*fcedf654SKuninori Morimoto playback: 136*fcedf654SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 137*fcedf654SKuninori Morimoto capture: 138*fcedf654SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 1399c1e0439SRob Herring unevaluatedProperties: false 1402d8fc973SKuninori Morimoto 141910f42bfSRob Herring rcar_sound,dvc: 1422d8fc973SKuninori Morimoto description: DVC subnode. 1432d8fc973SKuninori Morimoto type: object 1442d8fc973SKuninori Morimoto patternProperties: 1452d8fc973SKuninori Morimoto "^dvc-[0-1]$": 1462d8fc973SKuninori Morimoto type: object 1479e10a1deSRob Herring additionalProperties: false 1489e10a1deSRob Herring 1492d8fc973SKuninori Morimoto properties: 1502d8fc973SKuninori Morimoto dmas: 1512d8fc973SKuninori Morimoto maxItems: 1 1522d8fc973SKuninori Morimoto dma-names: 1532d8fc973SKuninori Morimoto const: "tx" 1542d8fc973SKuninori Morimoto required: 1552d8fc973SKuninori Morimoto - dmas 1562d8fc973SKuninori Morimoto - dma-names 1572d8fc973SKuninori Morimoto additionalProperties: false 1582d8fc973SKuninori Morimoto 159910f42bfSRob Herring rcar_sound,mix: 1602d8fc973SKuninori Morimoto description: MIX subnode. 1612d8fc973SKuninori Morimoto type: object 1622d8fc973SKuninori Morimoto patternProperties: 1632d8fc973SKuninori Morimoto "^mix-[0-1]$": 1642d8fc973SKuninori Morimoto type: object 1659e10a1deSRob Herring additionalProperties: false 1662d8fc973SKuninori Morimoto additionalProperties: false 1672d8fc973SKuninori Morimoto 168910f42bfSRob Herring rcar_sound,ctu: 1692d8fc973SKuninori Morimoto description: CTU subnode. 1702d8fc973SKuninori Morimoto type: object 1712d8fc973SKuninori Morimoto patternProperties: 1722d8fc973SKuninori Morimoto "^ctu-[0-7]$": 1732d8fc973SKuninori Morimoto type: object 1749e10a1deSRob Herring additionalProperties: false 1752d8fc973SKuninori Morimoto additionalProperties: false 1762d8fc973SKuninori Morimoto 177910f42bfSRob Herring rcar_sound,src: 1782d8fc973SKuninori Morimoto description: SRC subnode. 1792d8fc973SKuninori Morimoto type: object 1802d8fc973SKuninori Morimoto patternProperties: 1812d8fc973SKuninori Morimoto "^src-[0-9]$": 1822d8fc973SKuninori Morimoto type: object 1839e10a1deSRob Herring additionalProperties: false 1849e10a1deSRob Herring 1852d8fc973SKuninori Morimoto properties: 1862d8fc973SKuninori Morimoto interrupts: 1872d8fc973SKuninori Morimoto maxItems: 1 1882d8fc973SKuninori Morimoto dmas: 1892d8fc973SKuninori Morimoto maxItems: 2 1902d8fc973SKuninori Morimoto dma-names: 1912d8fc973SKuninori Morimoto allOf: 1922d8fc973SKuninori Morimoto - items: 1932d8fc973SKuninori Morimoto enum: 1942d8fc973SKuninori Morimoto - tx 1952d8fc973SKuninori Morimoto - rx 1962d8fc973SKuninori Morimoto required: 1972d8fc973SKuninori Morimoto - interrupts 1982d8fc973SKuninori Morimoto - dmas 1992d8fc973SKuninori Morimoto - dma-names 2002d8fc973SKuninori Morimoto additionalProperties: false 2012d8fc973SKuninori Morimoto 202910f42bfSRob Herring rcar_sound,ssiu: 2032d8fc973SKuninori Morimoto description: SSIU subnode. 2042d8fc973SKuninori Morimoto type: object 2052d8fc973SKuninori Morimoto patternProperties: 2062d8fc973SKuninori Morimoto "^ssiu-[0-9]+$": 2072d8fc973SKuninori Morimoto type: object 2089e10a1deSRob Herring additionalProperties: false 2099e10a1deSRob Herring 2102d8fc973SKuninori Morimoto properties: 2112d8fc973SKuninori Morimoto dmas: 2122d8fc973SKuninori Morimoto maxItems: 2 2132d8fc973SKuninori Morimoto dma-names: 2142d8fc973SKuninori Morimoto allOf: 2152d8fc973SKuninori Morimoto - items: 2162d8fc973SKuninori Morimoto enum: 2172d8fc973SKuninori Morimoto - tx 2182d8fc973SKuninori Morimoto - rx 2192d8fc973SKuninori Morimoto required: 2202d8fc973SKuninori Morimoto - dmas 2212d8fc973SKuninori Morimoto - dma-names 2222d8fc973SKuninori Morimoto additionalProperties: false 2232d8fc973SKuninori Morimoto 224910f42bfSRob Herring rcar_sound,ssi: 2252d8fc973SKuninori Morimoto description: SSI subnode. 2262d8fc973SKuninori Morimoto type: object 2272d8fc973SKuninori Morimoto patternProperties: 2282d8fc973SKuninori Morimoto "^ssi-[0-9]$": 2292d8fc973SKuninori Morimoto type: object 2309e10a1deSRob Herring additionalProperties: false 2319e10a1deSRob Herring 2322d8fc973SKuninori Morimoto properties: 2332d8fc973SKuninori Morimoto interrupts: 2342d8fc973SKuninori Morimoto maxItems: 1 2352d8fc973SKuninori Morimoto dmas: 2362d8fc973SKuninori Morimoto minItems: 2 2372d8fc973SKuninori Morimoto maxItems: 4 2382d8fc973SKuninori Morimoto dma-names: 2392d8fc973SKuninori Morimoto allOf: 2402d8fc973SKuninori Morimoto - items: 2412d8fc973SKuninori Morimoto enum: 2422d8fc973SKuninori Morimoto - tx 2432d8fc973SKuninori Morimoto - rx 2442d8fc973SKuninori Morimoto - txu # if no ssiu node 2452d8fc973SKuninori Morimoto - rxu # if no ssiu node 2462d8fc973SKuninori Morimoto 2472d8fc973SKuninori Morimoto shared-pin: 2482d8fc973SKuninori Morimoto description: shared clock pin 2492d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/flag 2502d8fc973SKuninori Morimoto pio-transfer: 2512d8fc973SKuninori Morimoto description: PIO transfer mode 2522d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/flag 2532d8fc973SKuninori Morimoto no-busif: 2542d8fc973SKuninori Morimoto description: BUSIF is not used when [mem -> SSI] via DMA case 2552d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/flag 2562d8fc973SKuninori Morimoto required: 2572d8fc973SKuninori Morimoto - interrupts 2582d8fc973SKuninori Morimoto - dmas 2592d8fc973SKuninori Morimoto - dma-names 2602d8fc973SKuninori Morimoto additionalProperties: false 2612d8fc973SKuninori Morimoto 2622d8fc973SKuninori Morimoto # For DAI base 263910f42bfSRob Herring rcar_sound,dai: 2642d8fc973SKuninori Morimoto description: DAI subnode. 2652d8fc973SKuninori Morimoto type: object 2662d8fc973SKuninori Morimoto patternProperties: 2672d8fc973SKuninori Morimoto "^dai([0-9]+)?$": 2682d8fc973SKuninori Morimoto type: object 2699e10a1deSRob Herring additionalProperties: false 2709e10a1deSRob Herring 2712d8fc973SKuninori Morimoto properties: 2722d8fc973SKuninori Morimoto playback: 2732d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 2742d8fc973SKuninori Morimoto capture: 2752d8fc973SKuninori Morimoto $ref: /schemas/types.yaml#/definitions/phandle-array 2762d8fc973SKuninori Morimoto anyOf: 2772d8fc973SKuninori Morimoto - required: 2782d8fc973SKuninori Morimoto - playback 2792d8fc973SKuninori Morimoto - required: 2802d8fc973SKuninori Morimoto - capture 2812d8fc973SKuninori Morimoto additionalProperties: false 2822d8fc973SKuninori Morimoto 2832d8fc973SKuninori Morimotorequired: 2842d8fc973SKuninori Morimoto - compatible 2852d8fc973SKuninori Morimoto - reg 2862d8fc973SKuninori Morimoto - reg-names 2872d8fc973SKuninori Morimoto - clocks 2882d8fc973SKuninori Morimoto - clock-names 2892d8fc973SKuninori Morimoto - "#sound-dai-cells" 2902d8fc973SKuninori Morimoto 2912d8fc973SKuninori MorimotoallOf: 29258ae9a2aSKrzysztof Kozlowski - $ref: dai-common.yaml# 2932d8fc973SKuninori Morimoto - if: 2942d8fc973SKuninori Morimoto properties: 2952d8fc973SKuninori Morimoto compatible: 2962d8fc973SKuninori Morimoto contains: 2972d8fc973SKuninori Morimoto const: renesas,rcar_sound-gen1 2982d8fc973SKuninori Morimoto then: 2992d8fc973SKuninori Morimoto properties: 3002d8fc973SKuninori Morimoto reg: 3012d8fc973SKuninori Morimoto maxItems: 3 3022d8fc973SKuninori Morimoto reg-names: 3032d8fc973SKuninori Morimoto maxItems: 3 3042d8fc973SKuninori Morimoto items: 3052d8fc973SKuninori Morimoto enum: 3062d8fc973SKuninori Morimoto - scu 3072d8fc973SKuninori Morimoto - ssi 3082d8fc973SKuninori Morimoto - adg 3092d8fc973SKuninori Morimoto else: 3102d8fc973SKuninori Morimoto properties: 3112d8fc973SKuninori Morimoto reg: 3122d8fc973SKuninori Morimoto maxItems: 5 3132d8fc973SKuninori Morimoto reg-names: 3142d8fc973SKuninori Morimoto maxItems: 5 3152d8fc973SKuninori Morimoto items: 3162d8fc973SKuninori Morimoto enum: 3172d8fc973SKuninori Morimoto - scu 3182d8fc973SKuninori Morimoto - adg 3192d8fc973SKuninori Morimoto - ssiu 3202d8fc973SKuninori Morimoto - ssi 3212d8fc973SKuninori Morimoto - audmapp 3222d8fc973SKuninori Morimoto 32358ae9a2aSKrzysztof KozlowskiunevaluatedProperties: false 3242d8fc973SKuninori Morimoto 3252d8fc973SKuninori Morimotoexamples: 3262d8fc973SKuninori Morimoto - | 3272d8fc973SKuninori Morimoto rcar_sound: sound@ec500000 { 3282d8fc973SKuninori Morimoto #sound-dai-cells = <1>; 3292d8fc973SKuninori Morimoto compatible = "renesas,rcar_sound-r8a7790", "renesas,rcar_sound-gen2"; 3302d8fc973SKuninori Morimoto reg = <0xec500000 0x1000>, /* SCU */ 3312d8fc973SKuninori Morimoto <0xec5a0000 0x100>, /* ADG */ 3322d8fc973SKuninori Morimoto <0xec540000 0x1000>, /* SSIU */ 3332d8fc973SKuninori Morimoto <0xec541000 0x1280>, /* SSI */ 3342d8fc973SKuninori Morimoto <0xec740000 0x200>; /* Audio DMAC peri peri*/ 3352d8fc973SKuninori Morimoto reg-names = "scu", "adg", "ssiu", "ssi", "audmapp"; 3362d8fc973SKuninori Morimoto 3372d8fc973SKuninori Morimoto clocks = <&mstp10_clks 1005>, /* SSI-ALL */ 3382d8fc973SKuninori Morimoto <&mstp10_clks 1006>, <&mstp10_clks 1007>, /* SSI9, SSI8 */ 3392d8fc973SKuninori Morimoto <&mstp10_clks 1008>, <&mstp10_clks 1009>, /* SSI7, SSI6 */ 3402d8fc973SKuninori Morimoto <&mstp10_clks 1010>, <&mstp10_clks 1011>, /* SSI5, SSI4 */ 3412d8fc973SKuninori Morimoto <&mstp10_clks 1012>, <&mstp10_clks 1013>, /* SSI3, SSI2 */ 3422d8fc973SKuninori Morimoto <&mstp10_clks 1014>, <&mstp10_clks 1015>, /* SSI1, SSI0 */ 3432d8fc973SKuninori Morimoto <&mstp10_clks 1022>, <&mstp10_clks 1023>, /* SRC9, SRC8 */ 3442d8fc973SKuninori Morimoto <&mstp10_clks 1024>, <&mstp10_clks 1025>, /* SRC7, SRC6 */ 3452d8fc973SKuninori Morimoto <&mstp10_clks 1026>, <&mstp10_clks 1027>, /* SRC5, SRC4 */ 3462d8fc973SKuninori Morimoto <&mstp10_clks 1028>, <&mstp10_clks 1029>, /* SRC3, SRC2 */ 3472d8fc973SKuninori Morimoto <&mstp10_clks 1030>, <&mstp10_clks 1031>, /* SRC1, SRC0 */ 3482d8fc973SKuninori Morimoto <&mstp10_clks 1020>, <&mstp10_clks 1021>, /* MIX1, MIX0 */ 3492d8fc973SKuninori Morimoto <&mstp10_clks 1020>, <&mstp10_clks 1021>, /* CTU1, CTU0 */ 3502d8fc973SKuninori Morimoto <&mstp10_clks 1019>, <&mstp10_clks 1018>, /* DVC0, DVC1 */ 3512d8fc973SKuninori Morimoto <&audio_clk_a>, <&audio_clk_b>, /* CLKA, CLKB */ 3522d8fc973SKuninori Morimoto <&audio_clk_c>, <&audio_clk_i>; /* CLKC, CLKI */ 3532d8fc973SKuninori Morimoto 3542d8fc973SKuninori Morimoto clock-names = "ssi-all", 3552d8fc973SKuninori Morimoto "ssi.9", "ssi.8", 3562d8fc973SKuninori Morimoto "ssi.7", "ssi.6", 3572d8fc973SKuninori Morimoto "ssi.5", "ssi.4", 3582d8fc973SKuninori Morimoto "ssi.3", "ssi.2", 3592d8fc973SKuninori Morimoto "ssi.1", "ssi.0", 3602d8fc973SKuninori Morimoto "src.9", "src.8", 3612d8fc973SKuninori Morimoto "src.7", "src.6", 3622d8fc973SKuninori Morimoto "src.5", "src.4", 3632d8fc973SKuninori Morimoto "src.3", "src.2", 3642d8fc973SKuninori Morimoto "src.1", "src.0", 3652d8fc973SKuninori Morimoto "mix.1", "mix.0", 3662d8fc973SKuninori Morimoto "ctu.1", "ctu.0", 3672d8fc973SKuninori Morimoto "dvc.0", "dvc.1", 3682d8fc973SKuninori Morimoto "clk_a", "clk_b", 3692d8fc973SKuninori Morimoto "clk_c", "clk_i"; 3702d8fc973SKuninori Morimoto 3712d8fc973SKuninori Morimoto rcar_sound,dvc { 3722d8fc973SKuninori Morimoto dvc0: dvc-0 { 3732d8fc973SKuninori Morimoto dmas = <&audma0 0xbc>; 3742d8fc973SKuninori Morimoto dma-names = "tx"; 3752d8fc973SKuninori Morimoto }; 3762d8fc973SKuninori Morimoto dvc1: dvc-1 { 3772d8fc973SKuninori Morimoto dmas = <&audma0 0xbe>; 3782d8fc973SKuninori Morimoto dma-names = "tx"; 3792d8fc973SKuninori Morimoto }; 3802d8fc973SKuninori Morimoto }; 3812d8fc973SKuninori Morimoto 3822d8fc973SKuninori Morimoto rcar_sound,mix { 3832d8fc973SKuninori Morimoto mix0: mix-0 { }; 3842d8fc973SKuninori Morimoto mix1: mix-1 { }; 3852d8fc973SKuninori Morimoto }; 3862d8fc973SKuninori Morimoto 3872d8fc973SKuninori Morimoto rcar_sound,ctu { 3882d8fc973SKuninori Morimoto ctu00: ctu-0 { }; 3892d8fc973SKuninori Morimoto ctu01: ctu-1 { }; 3902d8fc973SKuninori Morimoto ctu02: ctu-2 { }; 3912d8fc973SKuninori Morimoto ctu03: ctu-3 { }; 3922d8fc973SKuninori Morimoto ctu10: ctu-4 { }; 3932d8fc973SKuninori Morimoto ctu11: ctu-5 { }; 3942d8fc973SKuninori Morimoto ctu12: ctu-6 { }; 3952d8fc973SKuninori Morimoto ctu13: ctu-7 { }; 3962d8fc973SKuninori Morimoto }; 3972d8fc973SKuninori Morimoto 3982d8fc973SKuninori Morimoto rcar_sound,src { 3992d8fc973SKuninori Morimoto src0: src-0 { 4002d8fc973SKuninori Morimoto status = "disabled"; 4012d8fc973SKuninori Morimoto }; 4022d8fc973SKuninori Morimoto src1: src-1 { 4032d8fc973SKuninori Morimoto interrupts = <0 353 0>; 4042d8fc973SKuninori Morimoto dmas = <&audma0 0x87>, <&audma1 0x9c>; 4052d8fc973SKuninori Morimoto dma-names = "rx", "tx"; 4062d8fc973SKuninori Morimoto }; 4072d8fc973SKuninori Morimoto /* skip after src-2 */ 4082d8fc973SKuninori Morimoto }; 4092d8fc973SKuninori Morimoto 4102d8fc973SKuninori Morimoto rcar_sound,ssiu { 4112d8fc973SKuninori Morimoto ssiu00: ssiu-0 { 4122d8fc973SKuninori Morimoto dmas = <&audma0 0x15>, <&audma1 0x16>; 4132d8fc973SKuninori Morimoto dma-names = "rx", "tx"; 4142d8fc973SKuninori Morimoto }; 4152d8fc973SKuninori Morimoto ssiu01: ssiu-1 { 4162d8fc973SKuninori Morimoto dmas = <&audma0 0x35>, <&audma1 0x36>; 4172d8fc973SKuninori Morimoto dma-names = "rx", "tx"; 4182d8fc973SKuninori Morimoto }; 4192d8fc973SKuninori Morimoto /* skip after ssiu-2 */ 4202d8fc973SKuninori Morimoto }; 4212d8fc973SKuninori Morimoto 4222d8fc973SKuninori Morimoto rcar_sound,ssi { 4232d8fc973SKuninori Morimoto ssi0: ssi-0 { 4242d8fc973SKuninori Morimoto interrupts = <0 370 1>; 4252d8fc973SKuninori Morimoto dmas = <&audma0 0x01>, <&audma1 0x02>; 4262d8fc973SKuninori Morimoto dma-names = "rx", "tx"; 4272d8fc973SKuninori Morimoto }; 4282d8fc973SKuninori Morimoto ssi1: ssi-1 { 4292d8fc973SKuninori Morimoto interrupts = <0 371 1>; 4302d8fc973SKuninori Morimoto dmas = <&audma0 0x03>, <&audma1 0x04>; 4312d8fc973SKuninori Morimoto dma-names = "rx", "tx"; 4322d8fc973SKuninori Morimoto }; 4332d8fc973SKuninori Morimoto /* skip other ssi-2 */ 4342d8fc973SKuninori Morimoto }; 4352d8fc973SKuninori Morimoto 4362d8fc973SKuninori Morimoto /* DAI base */ 4372d8fc973SKuninori Morimoto rcar_sound,dai { 4382d8fc973SKuninori Morimoto dai0 { 439f08c74a3SGeert Uytterhoeven playback = <&ssi5>, <&src5>; 4402d8fc973SKuninori Morimoto capture = <&ssi6>; 4412d8fc973SKuninori Morimoto }; 4422d8fc973SKuninori Morimoto dai1 { 4432d8fc973SKuninori Morimoto playback = <&ssi3>; 4442d8fc973SKuninori Morimoto }; 4452d8fc973SKuninori Morimoto dai2 { 4462d8fc973SKuninori Morimoto capture = <&ssi4>; 4472d8fc973SKuninori Morimoto }; 4482d8fc973SKuninori Morimoto dai3 { 4492d8fc973SKuninori Morimoto playback = <&ssi7>; 4502d8fc973SKuninori Morimoto }; 4512d8fc973SKuninori Morimoto dai4 { 4522d8fc973SKuninori Morimoto capture = <&ssi8>; 4532d8fc973SKuninori Morimoto }; 4542d8fc973SKuninori Morimoto }; 4552d8fc973SKuninori Morimoto 4562d8fc973SKuninori Morimoto /* assume audio-graph */ 4572d8fc973SKuninori Morimoto port { 4582d8fc973SKuninori Morimoto rsnd_endpoint: endpoint { 4592d8fc973SKuninori Morimoto remote-endpoint = <&codec_endpoint>; 4602d8fc973SKuninori Morimoto 4612d8fc973SKuninori Morimoto dai-format = "left_j"; 4622d8fc973SKuninori Morimoto bitclock-master = <&rsnd_endpoint0>; 4632d8fc973SKuninori Morimoto frame-master = <&rsnd_endpoint0>; 4642d8fc973SKuninori Morimoto 465f08c74a3SGeert Uytterhoeven playback = <&ssi0>, <&src0>, <&dvc0>; 466f08c74a3SGeert Uytterhoeven capture = <&ssi1>, <&src1>, <&dvc1>; 4672d8fc973SKuninori Morimoto }; 4682d8fc973SKuninori Morimoto }; 4692d8fc973SKuninori Morimoto }; 4702d8fc973SKuninori Morimoto 4712d8fc973SKuninori Morimoto 4722d8fc973SKuninori Morimoto /* assume audio-graph */ 4732d8fc973SKuninori Morimoto codec { 4742d8fc973SKuninori Morimoto port { 4752d8fc973SKuninori Morimoto codec_endpoint: endpoint { 4762d8fc973SKuninori Morimoto remote-endpoint = <&rsnd_endpoint>; 4772d8fc973SKuninori Morimoto }; 4782d8fc973SKuninori Morimoto }; 4792d8fc973SKuninori Morimoto }; 480