From: Ajay Kumar Nandam <ajay.nandam@oss.qualcomm.com>
To: Krzysztof Kozlowski <krzk@kernel.org>,
Srinivas Kandagatla <srini@kernel.org>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>, Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>
Cc: linux-sound@vger.kernel.org, linux-arm-msm@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 1/3] dt-bindings: sound: qcom,q6apm-dai: add stage-2 (SCM/VMID) access model
Date: Tue, 8 Sep 2026 22:56:56 +0530 [thread overview]
Message-ID: <5ac58cd1-2ef7-4ce9-bf97-dc120ddb9f20@oss.qualcomm.com> (raw)
In-Reply-To: <23d6166f-50f7-4d23-a700-ab738c1e872f@kernel.org>
>>>>>
>>>>> properties:
>>>>> compatible:
>>>>> @@ -20,9 +28,42 @@ properties:
>>>>> minItems: 1
>>>>> maxItems: 2
>>>>
>>>> As I said last time, different hardware, different programming
>>>> interface, different features, so a different compatible.
>>>
>>>
>>> The APM DAI block is the same packet format. The driver uses a single
>>> of_device_id entry with no match data; there is no code path dispatched
>>> by the compatible string.
>>>
>>> The iommu vs VMID distinction is a property of the memory topology,
>>> not the DAI hardware, and is already described by the mutually exclusive
>>> iommus / qcom,vmids properties. The DSP identity (ADSP vs mDSP) is
>>> carried by the GPR node's qcom,domain property and read at the send
>>> layer — the DAI node itself does not need to know which DSP it talks to.
>>
>> I am still trying to grasp it. You have a device "APM" and it accesses
>> PCM buffers or other memory in some way needing IOMMU for that.
>>
>> Now you add something which you call EXACTLY the same device, no
>> difference at all, same "APM", but this time this device operates
>> completely different, because it does not use IOMMU, but talks with
>> firmware via SCM.
>>
>> Well, I really do not see how is this still exactly the same or even
>> compatible device.
>>
>> The way device accesses its data is part of the programming model and
>> different programming models have different compatibles.
>
>
> Additionally, as explained to me in off-list channel, the qcom,vmids is
> not a hardware property at all (because hardware is the same), thus does
> not look suitable for DT.
>
I understand the concern. The qcom,vmids property describes which
Virtual machines the SoC firmware has configured to own the memory space
on a given board. similar to how iommus describes which SMMU the device
is wired to.
There is existing precedent for this in the tree:
- fastrpc (Documentation/devicetree/bindings/misc/qcom,fastrpc.yaml)
uses qcom,vmids to describe remote processor VMIDs. The driver reads
them from DT and calls qcom_scm_assign_mem(). The compatible stays
generic (qcom,fastrpc).
- rmtfs-mem
(Documentation/devicetree/bindings/reserved-memory/qcom,rmtfs-mem.yaml)
uses qcom,vmid the same way with a single generic compatible
(qcom,rmtfs-mem).
We are following the same pattern here. Happy to discuss further if you
see a difference between these cases and ours.
Thanks & Regards
Ajay Kumar Nandam
> Best regards,
> Krzysztof
next prev parent reply other threads:[~2026-09-08 17:27 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-25 18:40 [PATCH v2 0/3] ASoC: qcom: enable audio on stage-2 protected DSPs (mDSP) Ajay Kumar Nandam
2026-08-25 18:40 ` [PATCH v2 1/3] dt-bindings: sound: qcom,q6apm-dai: add stage-2 (SCM/VMID) access model Ajay Kumar Nandam
2026-08-26 22:44 ` Mark Brown
2026-09-02 6:03 ` Ajay Kumar Nandam
2026-08-27 6:03 ` Krzysztof Kozlowski
2026-09-02 6:07 ` Ajay Kumar Nandam
2026-09-03 9:39 ` Krzysztof Kozlowski
2026-09-07 7:48 ` Krzysztof Kozlowski
2026-09-08 17:26 ` Ajay Kumar Nandam [this message]
2026-08-25 18:40 ` [PATCH v2 2/3] ASoC: qcom: q6apm-dai: add VMID-based SCM assignment for mDSP buffers Ajay Kumar Nandam
2026-08-25 18:57 ` sashiko-bot
2026-08-26 22:52 ` Mark Brown
2026-09-02 6:09 ` Ajay Kumar Nandam
2026-08-25 18:40 ` [PATCH v2 3/3] ASoC: qcom: qdsp6: generalize GPR service domain Ajay Kumar Nandam
2026-08-25 18:54 ` sashiko-bot
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=5ac58cd1-2ef7-4ce9-bf97-dc120ddb9f20@oss.qualcomm.com \
--to=ajay.nandam@oss.qualcomm.com \
--cc=broonie@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=krzk+dt@kernel.org \
--cc=krzk@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=robh@kernel.org \
--cc=srini@kernel.org \
--cc=tiwai@suse.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.