arm64: dts: qcom: sc7280: Move video-firmware to chrome-common
authorLuca Weiss <luca.weiss@fairphone.com>
Fri, 1 Dec 2023 09:33:19 +0000 (10:33 +0100)
committerBjorn Andersson <andersson@kernel.org>
Mon, 22 Jan 2024 16:59:21 +0000 (10:59 -0600)
If the video-firmware node is present, the venus driver assumes we're on
a system that doesn't use TZ for starting venus, like on ChromeOS
devices.

Move the video-firmware node to chrome-common.dtsi so we can use venus
on a non-ChromeOS devices. We also need to move the secure SID 0x2184
for iommu since (on some boards) we cannot touch that.

At the same time also disable the venus node by default in the dtsi,
like it's done on other SoCs.

Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Luca Weiss <luca.weiss@fairphone.com>
Reviewed-by: Vikash Garodia <quic_vgarodia@quicinc.com>
Link: https://lore.kernel.org/r/20231201-sc7280-venus-pas-v3-2-bc132dc5fc30@fairphone.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sc7280-chrome-common.dtsi
arch/arm64/boot/dts/qcom/sc7280.dtsi

index c4d00a81da394e54650ae87adb136545cdd38cdf..bb365d5848af7d5c316496ce29ce8ad773647555 100644 (file)
        dma-coherent;
 };
 
+&venus {
+       iommus = <&apps_smmu 0x2180 0x20>,
+                <&apps_smmu 0x2184 0x20>;
+
+       status = "okay";
+
+       video-firmware {
+               iommus = <&apps_smmu 0x21a2 0x0>;
+       };
+};
+
 &watchdog {
        status = "okay";
 };
index 5c545a2d5237b8321fd29d967b5159c8235a69e6..a95e8eb62a11baeeb85bfbf9c58a3743c7b73b49 100644 (file)
                                        <&mmss_noc MASTER_VIDEO_P0 0 &mc_virt SLAVE_EBI1 0>;
                        interconnect-names = "cpu-cfg", "video-mem";
 
-                       iommus = <&apps_smmu 0x2180 0x20>,
-                                <&apps_smmu 0x2184 0x20>;
+                       iommus = <&apps_smmu 0x2180 0x20>;
                        memory-region = <&video_mem>;
 
+                       status = "disabled";
+
                        video-decoder {
                                compatible = "venus-decoder";
                        };
                                compatible = "venus-encoder";
                        };
 
-                       video-firmware {
-                               iommus = <&apps_smmu 0x21a2 0x0>;
-                       };
-
                        venus_opp_table: opp-table {
                                compatible = "operating-points-v2";