Commit 1bb533d6 authored by Mukesh Ojha's avatar Mukesh Ojha Committed by Bjorn Andersson
Browse files

arm64: dts: qcom: talos: Add EL2 overlay

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: default avatarKonrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: default avatarMukesh Ojha <mukesh.ojha@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260127-talos-el2-overlay-v2-3-b6a2266532c4@oss.qualcomm.com


Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 0f9e6db8
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -163,6 +163,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

+25 −0
Original line number Diff line number Diff line
// 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";
};