* [PATCH v2 1/3] arm64: dts: qcom: lemans: disable zap-shader for EL2 configuration
2026-01-27 11:43 [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Mukesh Ojha
@ 2026-01-27 11:43 ` Mukesh Ojha
2026-01-28 12:18 ` Konrad Dybcio
2026-01-27 11:43 ` [PATCH v2 2/3] arm64: dts: qcom: monaco: Add EL2 overlay Mukesh Ojha
` (3 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Mukesh Ojha @ 2026-01-27 11:43 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Mukesh Ojha
We don't need to use zap shader in EL2 as Linux can zap the gpu on
it's own. Lets disable zap-shader for Lemans EL2 configuration.
Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/lemans-el2.dtso | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/lemans-el2.dtso b/arch/arm64/boot/dts/qcom/lemans-el2.dtso
index ed615dce6c78..621ad930cf54 100644
--- a/arch/arm64/boot/dts/qcom/lemans-el2.dtso
+++ b/arch/arm64/boot/dts/qcom/lemans-el2.dtso
@@ -10,6 +10,10 @@
/dts-v1/;
/plugin/;
+&gpu_zap_shader {
+ status = "disabled";
+};
+
&iris {
status = "disabled";
};
--
2.50.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* [PATCH v2 2/3] arm64: dts: qcom: monaco: Add EL2 overlay
2026-01-27 11:43 [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Mukesh Ojha
2026-01-27 11:43 ` [PATCH v2 1/3] arm64: dts: qcom: lemans: disable zap-shader for EL2 configuration Mukesh Ojha
@ 2026-01-27 11:43 ` Mukesh Ojha
2026-01-28 12:19 ` Konrad Dybcio
2026-01-27 11:43 ` [PATCH v2 3/3] arm64: dts: qcom: talos: " Mukesh Ojha
` (2 subsequent siblings)
4 siblings, 1 reply; 9+ messages in thread
From: Mukesh Ojha @ 2026-01-27 11:43 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Mukesh Ojha
All the Monaco IOT variants boards are using Gunyah hypervisor which
means that, so far, Linux-based OS could only boot in EL1 on those
devices. However, it is possible for us to boot Linux at EL2 on these
devices [1].
When running under Gunyah, the remote processor firmware IOMMU streams
are controlled by Gunyah. However, without Gunyah, the IOMMU is managed
by the consumer of this DeviceTree. Therefore, describe the firmware
streams for each remote processor.
Add a EL2-specific DT overlay and apply it to Monaco IOT variant
devices to create -el2.dtb for each of them alongside "normal" dtb.
[1]
https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-4/boot-developer-touchpoints.html#uefi
Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/Makefile | 8 ++++++++
arch/arm64/boot/dts/qcom/monaco-el2.dtso | 29 +++++++++++++++++++++++++++++
2 files changed, 37 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index f80b5d9cf1e8..cbf7d89e432c 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -45,6 +45,10 @@ lemans-evk-el2-dtbs := lemans-evk.dtb lemans-el2.dtbo
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-el2.dtb
dtb-$(CONFIG_ARCH_QCOM) += milos-fairphone-fp6.dtb
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk.dtb
+
+monaco-evk-el2-dtbs := monaco-evk.dtb monaco-el2.dtbo
+
+dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-el2.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
@@ -147,6 +151,10 @@ dtb-$(CONFIG_ARCH_QCOM) += qcs6490-rb3gen2-industrial-mezzanine.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-rb3gen2-vision-mezzanine.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-thundercomm-rubikpi3.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs8300-ride.dtb
+
+qcs8300-ride-el2-dtbs := qcs8300-ride.dtb monaco-el2.dtbo
+
+dtb-$(CONFIG_ARCH_QCOM) += qcs8300-ride-el2.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs8550-aim300-aiot.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride-r3.dtb
diff --git a/arch/arm64/boot/dts/qcom/monaco-el2.dtso b/arch/arm64/boot/dts/qcom/monaco-el2.dtso
new file mode 100644
index 000000000000..a7e3270f8609
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/monaco-el2.dtso
@@ -0,0 +1,29 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ *
+ * Monaco specific modifications required to boot in EL2.
+ */
+
+/dts-v1/;
+/plugin/;
+
+&gpu_zap_shader {
+ status = "disabled";
+};
+
+&iris {
+ status = "disabled";
+};
+
+&remoteproc_adsp {
+ iommus = <&apps_smmu 0x2000 0x0>;
+};
+
+&remoteproc_cdsp {
+ iommus = <&apps_smmu 0x19c0 0x0400>;
+};
+
+&remoteproc_gpdsp {
+ iommus = <&apps_smmu 0x28a0 0x0>;
+};
--
2.50.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH v2 2/3] arm64: dts: qcom: monaco: Add EL2 overlay
2026-01-27 11:43 ` [PATCH v2 2/3] arm64: dts: qcom: monaco: Add EL2 overlay Mukesh Ojha
@ 2026-01-28 12:19 ` Konrad Dybcio
0 siblings, 0 replies; 9+ messages in thread
From: Konrad Dybcio @ 2026-01-28 12:19 UTC (permalink / raw)
To: Mukesh Ojha, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel
On 1/27/26 12:43 PM, Mukesh Ojha wrote:
> All the Monaco IOT variants boards are using Gunyah hypervisor which
> means that, so far, Linux-based OS could only boot in EL1 on those
> devices. However, it is possible for us to boot Linux at EL2 on these
> devices [1].
>
> When running under Gunyah, the remote processor firmware IOMMU streams
> are controlled by Gunyah. However, without Gunyah, the IOMMU is managed
> by the consumer of this DeviceTree. Therefore, describe the firmware
> streams for each remote processor.
>
> Add a EL2-specific DT overlay and apply it to Monaco IOT variant
> devices to create -el2.dtb for each of them alongside "normal" dtb.
>
> [1]
> https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-4/boot-developer-touchpoints.html#uefi
>
> Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH v2 3/3] arm64: dts: qcom: talos: Add EL2 overlay
2026-01-27 11:43 [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Mukesh Ojha
2026-01-27 11:43 ` [PATCH v2 1/3] arm64: dts: qcom: lemans: disable zap-shader for EL2 configuration Mukesh Ojha
2026-01-27 11:43 ` [PATCH v2 2/3] arm64: dts: qcom: monaco: Add EL2 overlay Mukesh Ojha
@ 2026-01-27 11:43 ` Mukesh Ojha
2026-03-10 2:45 ` [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Bjorn Andersson
2026-04-05 19:40 ` (subset) " Bjorn Andersson
4 siblings, 0 replies; 9+ messages in thread
From: Mukesh Ojha @ 2026-01-27 11:43 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Konrad Dybcio,
Mukesh Ojha
All the existing variants Talos boards are using Gunyah hypervisor
which means that, so far, Linux-based OS could only boot in EL1 on
those devices. However, it is possible for us to boot Linux at EL2
on these devices [1].
When running under Gunyah, the remote processor firmware IOMMU streams
are controlled by Gunyah. However, without Gunyah, the IOMMU is managed
by the consumer of this DeviceTree. Therefore, describe the firmware
streams for each remote processor.
Add a EL2-specific DT overlay and apply it to Talos IOT variant
devices to create -el2.dtb for each of them alongside "normal" dtb.
[1]
https://docs.qualcomm.com/bundle/publicresource/topics/80-70020-4/boot-developer-touchpoints.html#uefi
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/Makefile | 4 ++++
arch/arm64/boot/dts/qcom/talos-el2.dtso | 25 +++++++++++++++++++++++++
2 files changed, 29 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index cbf7d89e432c..48ecbea17a4e 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -141,6 +141,10 @@ dtb-$(CONFIG_ARCH_QCOM) += qcm6490-shift-otter.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-1000.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs404-evb-4000.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs615-ride.dtb
+
+qcs615-ride-el2-dtbs := qcs615-ride.dtb talos-el2.dtbo
+
+dtb-$(CONFIG_ARCH_QCOM) += qcs615-ride-el2.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-radxa-dragon-q6a.dtb
dtb-$(CONFIG_ARCH_QCOM) += qcs6490-rb3gen2.dtb
diff --git a/arch/arm64/boot/dts/qcom/talos-el2.dtso b/arch/arm64/boot/dts/qcom/talos-el2.dtso
new file mode 100644
index 000000000000..f6818c058d72
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/talos-el2.dtso
@@ -0,0 +1,25 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+
+ * Talos specific modifications required to boot in EL2.
+ */
+
+/dts-v1/;
+/plugin/;
+
+&gpu_zap_shader {
+ status = "disabled";
+};
+
+&remoteproc_adsp {
+ iommus = <&apps_smmu 0x1720 0x0>;
+};
+
+&remoteproc_cdsp {
+ iommus = <&apps_smmu 0x1080 0x0>;
+};
+
+&venus {
+ status = "disabled";
+};
--
2.50.1
^ permalink raw reply related [flat|nested] 9+ messages in thread* Re: [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support
2026-01-27 11:43 [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Mukesh Ojha
` (2 preceding siblings ...)
2026-01-27 11:43 ` [PATCH v2 3/3] arm64: dts: qcom: talos: " Mukesh Ojha
@ 2026-03-10 2:45 ` Bjorn Andersson
2026-03-24 6:46 ` Mukesh Ojha
2026-04-05 19:40 ` (subset) " Bjorn Andersson
4 siblings, 1 reply; 9+ messages in thread
From: Bjorn Andersson @ 2026-03-10 2:45 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Mukesh Ojha
Cc: linux-arm-msm, devicetree, linux-kernel, Konrad Dybcio
On Tue, 27 Jan 2026 17:13:47 +0530, Mukesh Ojha wrote:
> We have recently added initial EL2 overlay support for Lemans and there
> it was not disabling zap-shader as GPU changes were not available. Lets
> disables the zap-shader there. And in the similar lines add support for
> Monaco and Talos SoC variants as well which support EL2 configuration.
>
> Talos GPU changes are not merged so its overlay file has dependency
> on https://lore.kernel.org/lkml/20260121-qcs615-spin-2-v7-0-52419b263e92@oss.qualcomm.com/#t
>
> [...]
Applied, thanks!
[1/3] arm64: dts: qcom: lemans: disable zap-shader for EL2 configuration
commit: b3e0db9d8ec0fbb7367313d888b1bc3cc32cdffc
[2/3] arm64: dts: qcom: monaco: Add EL2 overlay
commit: a3e3203d04e6d25bbd2ee678d82b833af53461a8
[3/3] arm64: dts: qcom: talos: Add EL2 overlay
(no commit info)
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 9+ messages in thread* Re: [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support
2026-03-10 2:45 ` [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Bjorn Andersson
@ 2026-03-24 6:46 ` Mukesh Ojha
0 siblings, 0 replies; 9+ messages in thread
From: Mukesh Ojha @ 2026-03-24 6:46 UTC (permalink / raw)
To: Bjorn Andersson
Cc: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
linux-arm-msm, devicetree, linux-kernel, Konrad Dybcio
On Mon, Mar 09, 2026 at 09:45:41PM -0500, Bjorn Andersson wrote:
>
> On Tue, 27 Jan 2026 17:13:47 +0530, Mukesh Ojha wrote:
> > We have recently added initial EL2 overlay support for Lemans and there
> > it was not disabling zap-shader as GPU changes were not available. Lets
> > disables the zap-shader there. And in the similar lines add support for
> > Monaco and Talos SoC variants as well which support EL2 configuration.
> >
> > Talos GPU changes are not merged so its overlay file has dependency
> > on https://lore.kernel.org/lkml/20260121-qcs615-spin-2-v7-0-52419b263e92@oss.qualcomm.com/#t
> >
> > [...]
>
> Applied, thanks!
>
> [1/3] arm64: dts: qcom: lemans: disable zap-shader for EL2 configuration
> commit: b3e0db9d8ec0fbb7367313d888b1bc3cc32cdffc
> [2/3] arm64: dts: qcom: monaco: Add EL2 overlay
> commit: a3e3203d04e6d25bbd2ee678d82b833af53461a8
> [3/3] arm64: dts: qcom: talos: Add EL2 overlay
> (no commit info)
Looks like Talos one did not get picked, will you picking below for 7.1 ?
https://lore.kernel.org/lkml/20260121-qcs615-spin-2-v7-0-52419b263e92@oss.qualcomm.com/#t
-Mukesh
>
> Best regards,
> --
> Bjorn Andersson <andersson@kernel.org>
--
-Mukesh Ojha
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: (subset) [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support
2026-01-27 11:43 [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Mukesh Ojha
` (3 preceding siblings ...)
2026-03-10 2:45 ` [PATCH v2 0/3] arm64: dts: qcom: Add EL2 overlay support Bjorn Andersson
@ 2026-04-05 19:40 ` Bjorn Andersson
4 siblings, 0 replies; 9+ messages in thread
From: Bjorn Andersson @ 2026-04-05 19:40 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Mukesh Ojha
Cc: linux-arm-msm, devicetree, linux-kernel, Konrad Dybcio
On Tue, 27 Jan 2026 17:13:47 +0530, Mukesh Ojha wrote:
> We have recently added initial EL2 overlay support for Lemans and there
> it was not disabling zap-shader as GPU changes were not available. Lets
> disables the zap-shader there. And in the similar lines add support for
> Monaco and Talos SoC variants as well which support EL2 configuration.
>
> Talos GPU changes are not merged so its overlay file has dependency
> on https://lore.kernel.org/lkml/20260121-qcs615-spin-2-v7-0-52419b263e92@oss.qualcomm.com/#t
>
> [...]
Applied, thanks!
[3/3] arm64: dts: qcom: talos: Add EL2 overlay
commit: 1bb533d644a2c56a3314351721445ea43fac9ff1
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 9+ messages in thread