Skip to content

Commit d272675

Browse files
mukeshojha-linuxandersson
authored andcommitted
arm64: dts: qcom: lemans; Add EL2 overlay
All the Lemans 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 Lemans 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> Link: https://lore.kernel.org/r/20260105-kvmrprocv10-v10-14-022e96815380@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent 0404b98 commit d272675

2 files changed

Lines changed: 45 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/Makefile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,10 @@ lemans-evk-camera-dtbs := lemans-evk.dtb lemans-evk-camera.dtbo
3939

4040
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-camera-csi1-imx577.dtb
4141
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-camera.dtb
42+
43+
lemans-evk-el2-dtbs := lemans-evk.dtb lemans-el2.dtbo
44+
45+
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-el2.dtb
4246
dtb-$(CONFIG_ARCH_QCOM) += milos-fairphone-fp6.dtb
4347
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk.dtb
4448
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
@@ -146,6 +150,12 @@ dtb-$(CONFIG_ARCH_QCOM) += qcs8300-ride.dtb
146150
dtb-$(CONFIG_ARCH_QCOM) += qcs8550-aim300-aiot.dtb
147151
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride.dtb
148152
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride-r3.dtb
153+
154+
qcs9100-ride-el2-dtbs := qcs9100-ride.dtb lemans-el2.dtbo
155+
qcs9100-ride-r3-el2-dtbs := qcs9100-ride-r3.dtb lemans-el2.dtbo
156+
157+
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride-el2.dtb
158+
dtb-$(CONFIG_ARCH_QCOM) += qcs9100-ride-r3-el2.dtb
149159
dtb-$(CONFIG_ARCH_QCOM) += qdu1000-idp.dtb
150160
dtb-$(CONFIG_ARCH_QCOM) += qrb2210-arduino-imola.dtb
151161
dtb-$(CONFIG_ARCH_QCOM) += qrb2210-rb1.dtb
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// SPDX-License-Identifier: BSD-3-Clause
2+
/*
3+
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4+
*/
5+
6+
/*
7+
* Lemans specific modifications required to boot in EL2.
8+
*/
9+
10+
/dts-v1/;
11+
/plugin/;
12+
13+
&iris {
14+
status = "disabled";
15+
};
16+
17+
&remoteproc_adsp {
18+
iommus = <&apps_smmu 0x3000 0x0>;
19+
};
20+
21+
&remoteproc_cdsp0 {
22+
iommus = <&apps_smmu 0x21c0 0x0400>;
23+
};
24+
25+
&remoteproc_cdsp1 {
26+
iommus = <&apps_smmu 0x29c0 0x0400>;
27+
};
28+
29+
&remoteproc_gpdsp0 {
30+
iommus = <&apps_smmu 0x38a0 0x0>;
31+
};
32+
33+
&remoteproc_gpdsp1 {
34+
iommus = <&apps_smmu 0x38c0 0x0>;
35+
};

0 commit comments

Comments
 (0)