Re: [PATCH v2 2/3] arm64: dts: qcom: lemans: enable audio ML offload memory and SMMU mappings
From: Krzysztof Kozlowski
Date: Mon Jul 20 2026 - 02:19:58 EST
On Fri, Jul 17, 2026 at 03:28:24PM +0530, Pratyush Meduri wrote:
> The audio ML (machine-learning) offload use case requires a contiguous,
> physically addressable buffer shared with the audio DSP/SPF, and issues
> DMA transactions through additional SMMU stream IDs that are not
> covered by the existing ADSP mapping.
>
> Add a dedicated reusable shared-dma-pool CMA region (16 MiB, 4 MiB
> aligned) and wire it to the q6apm DAIs node via memory-region. A
> dedicated pool guarantees the alignment and contiguity the DSP expects
> and isolates these allocations from the default CMA region.
>
> Under the EL2 (Gunyah/hypervisor) configuration the SMMU is fully
> enforcing, so the ML transactions are otherwise blocked and faulted:
>
> arm-smmu 15000000.iommu: Blocked unknown Stream ID 0x3060
> arm-smmu 15000000.iommu: Blocked unknown Stream ID 0x3062
>
> Add the ML-related stream IDs (0x3060 mask 0x9, 0x3062 mask 0x1) to the
> remoteproc_adsp iommus property in the EL2 overlay so these buffers are
> translated by the SMMU instead of being rejected.
>
> Signed-off-by: Pratyush Meduri <pratyush.meduri@xxxxxxxxxxxxxxxx>
> ---
> arch/arm64/boot/dts/qcom/lemans-el2.dtso | 4 +++-
> arch/arm64/boot/dts/qcom/lemans.dtsi | 9 +++++++++
> 2 files changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/lemans-el2.dtso b/arch/arm64/boot/dts/qcom/lemans-el2.dtso
> index 621ad930cf54..5b477346ef90 100644
> --- a/arch/arm64/boot/dts/qcom/lemans-el2.dtso
> +++ b/arch/arm64/boot/dts/qcom/lemans-el2.dtso
> @@ -19,7 +19,9 @@ &iris {
> };
>
> &remoteproc_adsp {
> - iommus = <&apps_smmu 0x3000 0x0>;
> + iommus = <&apps_smmu 0x3000 0x0>,
> + <&apps_smmu 0x3060 0x9>,
> + <&apps_smmu 0x3062 0x1>;
> };
>
> &remoteproc_cdsp0 {
> diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qcom/lemans.dtsi
> index 3b0539e27b51..060565113784 100644
> --- a/arch/arm64/boot/dts/qcom/lemans.dtsi
> +++ b/arch/arm64/boot/dts/qcom/lemans.dtsi
> @@ -624,6 +624,14 @@ reserved-memory {
> #size-cells = <2>;
> ranges;
>
> + audio_cma_mem: qcom,audio-ml {
NAK. You ignore feedback and keep sending us downstream junk
directly.
DO NOT SEND downstream code. EVER.
Best regards,
Krzysztof