Hi Rob, Mark, Morimoto-san
Build error in the example mentioned earlier seems to be expected since
it requires one to one connection between remote endpoints.
Pasting the error I get:
DTC arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dtb
dtc: scripts/dtc/livetree.c:437: propval_cell: Assertion `prop->val.len
== sizeof(cell_t)' failed.
Aborted (core dumped)
make[3]: *** [scripts/Makefile.lib:419:
arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dtb] Error 134
make[2]: *** [scripts/Makefile.build:480: arch/arm64/boot/dts/nvidia]
Error 2
make[1]: *** [/home/spujar/upstream/kernel/Makefile:1476: dtbs] Error 2
make[1]: *** Waiting for unfinished jobs....
CALL scripts/checksyscalls.sh
make: *** [Makefile:234: __sub-make] Error 2
Execution failed.
Given this, how an endpoint can be shared? Is only solution is to create
dummy endpoints for CPU and connect them to each codec?
Can you please suggest how this can be addressed?
Hi Morimoto-san,
This question is regarding audio-graph-card.c driver related DT binding.
I am looking to enable following DAI link connection in device tree
for Tegra audio:
/-----> codec1 endpoint
/
CPU endpoint \
\-----> codec2 endpoint
I see that, "remote-endpoint" property can only specify single phandle
object for connection to a remote endpoint. In other words, the link
can be one-to-one. For illustration, please see below example. However
I see it leads to a build error if phandle-array is provided for
"remote-endpoint" property.
cpu_port {
cpu_ep: endpoint {
remote-endpoint = <&codec1_ep>, <&codec2_ep>;
};
};
codec1 {
codec1_ep: endpoint {
remote-endpoint = <&cpu_ep>;
};
};
codec2 {
codec2_ep: endpoint {
remote-endpoint = <&cpu_ep>;
};
};
Is there a possibility to re-use the same CPU endpoint for connecting
to multiple codec endpoints like shown in above example?