// SPDX-License-Identifier: GPL-2.0 /* * Device Tree for ULCB + Audio Graph Card (MIX) * * Copyright (C) 2022 Renesas Electronics Corp. */ /* * Note: * The HDMI output is ignored due to the limited number of subdevices * * (A) CPU0 (2ch) <-----> (2ch) (X) ak4613 (MIX-0) * (B) CPU1 (2ch) --/ (MIX-1) * * (A) aplay -D plughw:0,0 xxx.wav * (B) aplay -D plughw:0,1 xxx.wav * * (A) arecord -D plughw:0,0 xxx.wav */ / { sound_card: sound { compatible = "audio-graph-scu-card"; label = "snd-ulcb-mix"; routing = "ak4613 Playback", "DAI0 Playback", "ak4613 Playback", "DAI1 Playback", "DAI0 Capture", "ak4613 Capture"; dais = <&snd_ulcb1 /* (A) CPU0 */ &snd_ulcb2 /* (B) CPU1 */ >; }; }; &ak4613 { port { #address-cells = <1>; #size-cells = <0>; /* * (X) ak4613 */ prefix = "ak4613"; convert-rate = <48000>; /* (A) CPU0 <-> (X) ak4613 */ ak4613_ep1: endpoint@0 { reg = <0>; remote-endpoint = <&rsnd_for_ak4613_1>; }; /* (B) CPU1 -> (X) ak4613 */ ak4613_ep2: endpoint@1 { reg = <1>; remote-endpoint = <&rsnd_for_ak4613_2>; }; }; }; &rcar_sound { #address-cells = <1>; #size-cells = <0>; ports@0 { #address-cells = <1>; #size-cells = <0>; reg = <0>; /* * (A) CPU0 */ snd_ulcb1: port@0 { reg = <0>; rsnd_for_ak4613_1: endpoint { remote-endpoint = <&ak4613_ep1>; bitclock-master; frame-master; playback = <&src1 &ctu02 &mix0 &dvc0 &ssi0>; capture = <&ssi1 &src0 &dvc1>; }; }; /* * (B) CPU1 */ snd_ulcb2: port@1 { reg = <1>; rsnd_for_ak4613_2: endpoint { remote-endpoint = <&ak4613_ep2>; bitclock-master; frame-master; playback = <&src2 &ctu03 &mix0 &dvc0 &ssi0>; }; }; }; };