Skip to content

Commit 56cf5ad

Browse files
superna9999andersson
authored andcommitted
arm64: dts: qcom: sm8650: add iris DT node
Add DT entries for the sm8650 iris decoder. Since the firmware is required to be signed, only enable on Qualcomm development boards where the firmware is available. Reviewed-by: Dmitry Baryshkov <[email protected]> Reviewed-by: Konrad Dybcio <[email protected]> Signed-off-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/20250613-topic-sm8x50-upstream-iris-8650-dt-v4-1-35ea7952f2d2@linaro.org Signed-off-by: Bjorn Andersson <[email protected]>
1 parent 79b896e commit 56cf5ad

File tree

4 files changed

+105
-0
lines changed

4 files changed

+105
-0
lines changed

arch/arm64/boot/dts/qcom/sm8650-hdk.dts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -894,6 +894,10 @@
894894
status = "okay";
895895
};
896896

897+
&iris {
898+
status = "okay";
899+
};
900+
897901
&gpu {
898902
status = "okay";
899903

arch/arm64/boot/dts/qcom/sm8650-mtp.dts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -585,6 +585,10 @@
585585
};
586586
};
587587

588+
&iris {
589+
status = "okay";
590+
};
591+
588592
&lpass_tlmm {
589593
spkr_1_sd_n_active: spkr-1-sd-n-active-state {
590594
pins = "gpio21";

arch/arm64/boot/dts/qcom/sm8650-qrd.dts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -824,6 +824,10 @@
824824
status = "okay";
825825
};
826826

827+
&iris {
828+
status = "okay";
829+
};
830+
827831
&gpu {
828832
status = "okay";
829833

arch/arm64/boot/dts/qcom/sm8650.dtsi

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4962,6 +4962,99 @@
49624962
};
49634963
};
49644964

4965+
iris: video-codec@aa00000 {
4966+
compatible = "qcom,sm8650-iris";
4967+
reg = <0 0x0aa00000 0 0xf0000>;
4968+
4969+
interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH 0>;
4970+
4971+
power-domains = <&videocc VIDEO_CC_MVS0C_GDSC>,
4972+
<&videocc VIDEO_CC_MVS0_GDSC>,
4973+
<&rpmhpd RPMHPD_MXC>,
4974+
<&rpmhpd RPMHPD_MMCX>;
4975+
power-domain-names = "venus",
4976+
"vcodec0",
4977+
"mxc",
4978+
"mmcx";
4979+
4980+
operating-points-v2 = <&iris_opp_table>;
4981+
4982+
clocks = <&gcc GCC_VIDEO_AXI0_CLK>,
4983+
<&videocc VIDEO_CC_MVS0C_CLK>,
4984+
<&videocc VIDEO_CC_MVS0_CLK>;
4985+
clock-names = "iface",
4986+
"core",
4987+
"vcodec0_core";
4988+
4989+
interconnects = <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ACTIVE_ONLY
4990+
&config_noc SLAVE_VENUS_CFG QCOM_ICC_TAG_ACTIVE_ONLY>,
4991+
<&mmss_noc MASTER_VIDEO QCOM_ICC_TAG_ALWAYS
4992+
&mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
4993+
interconnect-names = "cpu-cfg",
4994+
"video-mem";
4995+
4996+
memory-region = <&video_mem>;
4997+
4998+
resets = <&gcc GCC_VIDEO_AXI0_CLK_ARES>,
4999+
<&videocc VIDEO_CC_XO_CLK_ARES>,
5000+
<&videocc VIDEO_CC_MVS0C_CLK_ARES>;
5001+
reset-names = "bus",
5002+
"xo",
5003+
"core";
5004+
5005+
iommus = <&apps_smmu 0x1940 0>,
5006+
<&apps_smmu 0x1947 0>;
5007+
5008+
dma-coherent;
5009+
5010+
/*
5011+
* IRIS firmware is signed by vendors, only
5012+
* enable in boards where the proper signed firmware
5013+
* is available.
5014+
*/
5015+
status = "disabled";
5016+
5017+
iris_opp_table: opp-table {
5018+
compatible = "operating-points-v2";
5019+
5020+
opp-196000000 {
5021+
opp-hz = /bits/ 64 <196000000>;
5022+
required-opps = <&rpmhpd_opp_low_svs_d1>,
5023+
<&rpmhpd_opp_low_svs_d1>;
5024+
};
5025+
5026+
opp-300000000 {
5027+
opp-hz = /bits/ 64 <300000000>;
5028+
required-opps = <&rpmhpd_opp_low_svs>,
5029+
<&rpmhpd_opp_low_svs>;
5030+
};
5031+
5032+
opp-380000000 {
5033+
opp-hz = /bits/ 64 <380000000>;
5034+
required-opps = <&rpmhpd_opp_svs>,
5035+
<&rpmhpd_opp_svs>;
5036+
};
5037+
5038+
opp-435000000 {
5039+
opp-hz = /bits/ 64 <435000000>;
5040+
required-opps = <&rpmhpd_opp_svs_l1>,
5041+
<&rpmhpd_opp_svs_l1>;
5042+
};
5043+
5044+
opp-480000000 {
5045+
opp-hz = /bits/ 64 <480000000>;
5046+
required-opps = <&rpmhpd_opp_nom>,
5047+
<&rpmhpd_opp_nom>;
5048+
};
5049+
5050+
opp-533333334 {
5051+
opp-hz = /bits/ 64 <533333334>;
5052+
required-opps = <&rpmhpd_opp_turbo>,
5053+
<&rpmhpd_opp_turbo>;
5054+
};
5055+
};
5056+
};
5057+
49655058
videocc: clock-controller@aaf0000 {
49665059
compatible = "qcom,sm8650-videocc";
49675060
reg = <0 0x0aaf0000 0 0x10000>;

0 commit comments

Comments
 (0)