All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Anurag Pateriya" <anurag.pateriya@oss.qualcomm.com>
Cc: devicetree@vger.kernel.org, robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH] arm64: dts: qcom: nord: Add EL2 overlay for remoteproc SMMU mappings
Date: Fri, 13 Nov 2026 13:07:05 +0000	[thread overview]
Message-ID: <sashiko-outbox-212822@kernel.org> (raw)
In-Reply-To: <20261113-nord_soccp_el2_dt_change-v1-1-2a7aa55d97dd@oss.qualcomm.com>

Thank you for your contribution! Sashiko AI review found 3 potential
issues to consider:
- [High] arm64: dts: qcom: unresolved remoteproc_soccp target in
  nord-embedded-el2.dtso
- [High] arm64: dts: qcom: remoteproc_adsp iommus conflicts with
  early_boot attach
- [Medium] arm64: dts: qcom: remoteproc_soccp iommus exceeds PAS binding
  maxItems
--

commit 7c3911549648c2c9a04bb237b67646f8107b1680
Author: Anurag Pateriya <anurag.pateriya@oss.qualcomm.com>

arm64: dts: qcom: nord: Add EL2 overlay for remoteproc SMMU mappings

This commit adds the nord-embedded-el2.dtso overlay to define IOMMU
streams for the ADSP, CDSP, and SoCCP remoteprocs when booting Nord
boards at EL2, and builds -el2.dtb variants for nord-ride-embedded and
nord-rrd.

> diff --git a/arch/arm64/boot/dts/qcom/nord-embedded-el2.dtso b/arch/arm64/boot/dts/qcom/nord-embedded-el2.dtso
> new file mode 100644
> index 0000000000000..50c5057f6683a
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/nord-embedded-el2.dtso
> @@ -0,0 +1,32 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +&remoteproc_adsp {
> +	iommus = <&apps_smmu_0 0x09e0 0x0>;
> +};

[Severity: High]
Does adding iommus to remoteproc_adsp break ADSP bringup when booting at
EL2?

In drivers/remoteproc/qcom_q6v5_pas.c, nord_adsp_resource sets
.early_boot = true, so qcom_pas_probe() sets pas->rproc->state to
RPROC_DETACHED and rproc_boot() calls rproc_attach() instead of
rproc_fw_boot().  Because rproc->has_iommu is now true, rproc_attach() ->
rproc_enable_iommu() attaches an empty IOMMU paging domain to stream
0x09e0, while qcom_pas_attach() never calls qcom_pas_map_carveout(),
causing immediate SMMU translation faults if the bootloader started ADSP.
If ADSP was not pre-started, qcom_pas_attach() resets state to
RPROC_OFFLINE and returns -EINVAL, and rproc_boot() exits without falling
back to rproc_fw_boot().

> +
> +&remoteproc_cdsp0 {
> +	iommus = <&apps_smmu_2 0x0360 0x0>;
> +};
> +
> +&remoteproc_cdsp1 {
> +	iommus = <&apps_smmu_2 0x0760 0x0>;
> +};
> +
> +&remoteproc_cdsp2 {
> +	iommus = <&apps_smmu_2 0x0b60 0x0>;
> +};
> +
> +&remoteproc_cdsp3 {
> +	iommus = <&apps_smmu_2 0x0f60 0x0>;
> +};
> +
> +&remoteproc_soccp {
> +	iommus = <&apps_smmu_0 0x1960 0x5>,
> +		 <&apps_smmu_0 0x1966 0x0>;
> +};

[Severity: High]
Does targeting &remoteproc_soccp break the dtbs build when
CONFIG_ARCH_QCOM is enabled?

Neither nord.dtsi, nord-embedded.dtsi, nord-ride-embedded.dts, nor
nord-rrd.dts defines a remoteproc_soccp label yet.  When Makefile builds
nord-ride-embedded-el2.dtb and nord-rrd-el2.dtb, fdtoverlay fails in
overlay_fixup_phandle() with -FDT_ERR_NOTFOUND because remoteproc_soccp
is missing from /__symbols__ in the base DTBs.

[Severity: Medium]
Does specifying two iommus entries on remoteproc_soccp violate the PAS
Devicetree binding and driver expectations?

Documentation/devicetree/bindings/remoteproc/qcom,pas-common.yaml
restricts iommus to maxItems: 1, which causes dtbs_check to fail.  In
addition, qcom_q6v5_pas has no Nord SoCCP match entry yet, and
qcom_pas_map_carveout() maps carveouts with IOMMU_READ | IOMMU_WRITE
without the IOMMU_PRIV flag needed for the privileged SoCCP stream.

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261113-nord_soccp_el2_dt_change-v1-1-2a7aa55d97dd@oss.qualcomm.com?part=1

      reply	other threads:[~2026-11-13 13:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-13 12:54 [PATCH] arm64: dts: qcom: nord: Add EL2 overlay for remoteproc SMMU mappings Anurag Pateriya
2026-11-13 13:07 ` sashiko-bot [this message]

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=sashiko-outbox-212822@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=anurag.pateriya@oss.qualcomm.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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.