WSL2-Linux-Kernel/sound/soc/generic/audio-graph-card2-custom-sa...

96 строки
2.7 KiB
Plaintext
Исходник Обычный вид История

// SPDX-License-Identifier: GPL-2.0
/*
* audio-graph-card2-custom-sample.dtsi
*
* Copyright (C) 2020 Renesas Electronics Corp.
* Copyright (C) 2020 Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
*
* This sample indicates how to use audio-graph-card2 and its
* custom driver. "audio-graph-card2-custom-sample" is the custome driver
* which is using audio-graph-card2.
*
* You can easily use this sample by adding below line on your DT file,
* and add new CONFIG to your .config.
*
* #include "../../../../../sound/soc/generic/audio-graph-card2-custom-sample.dtsi"
*
* CONFIG_SND_AUDIO_GRAPH_CARD2
* CONFIG_SND_AUDIO_GRAPH_CARD2_CUSTOM_SAMPLE
* CONFIG_SND_TEST_COMPONENT
*/
/ {
/*
* @ : used at links
*
* [Normal]
* cpu0 <-@-----------------> codec0
*
* [Multi-CPU/Codec]
* +-+ +-+
* cpu1 <--| |<-@--------->| |-> codec1
* cpu2 <--| | | |-> codec2
* +-+ +-+
*/
audio-graph-card2-custom-sample {
/*
* You can use audio-graph-card2 directly by using
*
* compatible = "audio-graph-card2";
*/
compatible = "audio-graph-card2-custom-sample";
links = <&cpu0 /* normal: cpu side only */
&mcpu0 /* multi: cpu side only */
>;
multi {
ports@0 {
mcpu0: port@0 { mcpu0_ep: endpoint { remote-endpoint = <&mcodec0_ep>; }; };
port@1 { mcpu1_ep: endpoint { remote-endpoint = <&cpu1_ep>; }; };
port@2 { mcpu2_ep: endpoint { remote-endpoint = <&cpu2_ep>; }; };
};
ports@1 {
port@0 { mcodec0_ep: endpoint { remote-endpoint = <&mcpu0_ep>; }; };
port@1 { mcodec1_ep: endpoint { remote-endpoint = <&codec1_ep>; }; };
port@2 { mcodec2_ep: endpoint { remote-endpoint = <&codec2_ep>; }; };
};
};
};
test_cpu {
/*
* update compatible to indicate more detail behaviour
* if you want. see test-compatible for more detail.
*
* ex)
* - compatible = "test-cpu";
* + compatible = "test-cpu-verbose";
*/
compatible = "test-cpu";
ports {
bitclock-master;
frame-master;
cpu0: port@0 { cpu0_ep: endpoint { remote-endpoint = <&codec0_ep>; }; };
port@1 { cpu1_ep: endpoint { remote-endpoint = <&mcpu1_ep>; }; };
port@2 { cpu2_ep: endpoint { remote-endpoint = <&mcpu2_ep>; }; };
};
};
test_codec {
/*
* update compatible to indicate more detail behaviour
* if you want. see test-compatible for more detail.
*
* ex)
* - compatible = "test-codec";
* + compatible = "test-codec-verbose";
*/
compatible = "test-codec";
ports {
port@0 { codec0_ep: endpoint { remote-endpoint = <&cpu0_ep>; }; };
port@1 { codec1_ep: endpoint { remote-endpoint = <&mcodec1_ep>; }; };
port@2 { codec2_ep: endpoint { remote-endpoint = <&mcodec2_ep>; }; };
};
};
};