Linux Tegra architecture development
 help / color / mirror / Atom feed
From: Sameer Pujar <spujar@nvidia.com>
To: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Thierry Reding <thierry.reding@gmail.com>,
	Mark Brown <broonie@kernel.org>,
	alsa-devel@alsa-project.org, devicetree@vger.kernel.org,
	robh+dt@kernel.org, Jon Hunter <jonathanh@nvidia.com>,
	linux-tegra@vger.kernel.org
Subject: Re: Query on audio-graph-card DT binding
Date: Wed, 10 Jan 2024 10:31:19 +0530	[thread overview]
Message-ID: <cde6d5d5-b6ab-4c64-93f8-78d721a492bb@nvidia.com> (raw)
In-Reply-To: <87il42gkua.wl-kuninori.morimoto.gx@renesas.com>



On 10-01-2024 04:45, Kuninori Morimoto wrote:
>>>>                 /-----> codec1 endpoint
>>>>                /
>>>> CPU endpoint \
>>>>                 \-----> codec2 endpoint
>>> It sounds "Single CPU - Mult Codec" connection, and if my understanding
>>> was correct, current ASoC is not supporting it so far.
>> Yes, this is a typical TDM use case.
>> __soc_pcm_hw_params() call in soc-pcm.c loops over all CODECs for a
>> given rtd. So is there something else you are referring to which makes
>> ASoC core doesn't support it?
> Oops sorry, I was confused. asymmetry Multi CPU/Codec is supported on
> ASoC / Card2 on for-6.8 branch.
>> Also the binding properties of "audio-graph-card2" seem to be different
>> from "audio-graph-card". I am looking at a simpler extension of existing
>> bindings for Tegra audio without having to re-write the whole bindings.
>> If "remote-endpoint" can take phandle array it would be simpler from DT
>> point of view.
> Yes, "card2" and "card" are similar but different.
> I'm not DT-man, but I think remote-endpoint phandle array is not allowed ?

Yes, it is not allowed and there is DTC error. Exploring if there is an 
extension possible to allow phandle array.

> If my understanding was correct, you need to use multi endpoint in such
> case instead of phandle array.
>
> CPU
>          port {
>                  cpu_endpoint0: endpoint@0 { remote-endpoint = <&codec1_endpoint>; };
>                  cpu_endpoint1: endpoint@1 { remote-endpoint = <&codec2_endpoint>; };
>          };
>
> Codec1
>          port {
>                  codec1_endpoint: endpoint { remote-endpoint = <&cpu_endpoint0>; };
>          };
>
> Codec2
>          port {
>                  codec2_endpoint: endpoint { remote-endpoint = <&cpu_endpoint1>; };
>          };
>

This is a workaround. Note that CPU endpoint@1 doesn't exist and a dummy 
endpoint needs to be created. Like I mentioned in previous replies, the 
number of dummy endpoints that need to be created depends on how many 
CODECs user want to connect and it doesn't look scalable.

  reply	other threads:[~2024-01-10  5:01 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-26 16:28 Query on audio-graph-card DT binding Sameer Pujar
2024-01-03  7:02 ` ASoC: dt-bindings: " Sameer Pujar
2024-01-04 17:07 ` Thierry Reding
2024-01-04 17:22   ` Mark Brown
2024-01-05  4:54     ` Sameer Pujar
2024-01-05  8:11       ` Thierry Reding
2024-01-05 11:19         ` Sameer Pujar
2024-01-09  2:17           ` Kuninori Morimoto
2024-01-09 11:49             ` Sameer Pujar
2024-01-09 23:15               ` Kuninori Morimoto
2024-01-10  5:01                 ` Sameer Pujar [this message]
2024-01-11  0:44                   ` Kuninori Morimoto
2024-01-11  4:28                     ` Sameer Pujar
2024-01-11  4:56                       ` Kuninori Morimoto
2024-01-11  5:09                         ` Sameer Pujar
2024-01-11  5:32                           ` Kuninori Morimoto
2024-01-11  6:49                             ` Sameer Pujar
2024-01-11 22:59                               ` Kuninori Morimoto
2024-01-12  8:09                                 ` Sameer Pujar
2024-01-15  1:43                                   ` Kuninori Morimoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cde6d5d5-b6ab-4c64-93f8-78d721a492bb@nvidia.com \
    --to=spujar@nvidia.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=jonathanh@nvidia.com \
    --cc=kuninori.morimoto.gx@renesas.com \
    --cc=linux-tegra@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=thierry.reding@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox