Skip to content

Commit d845f17

Browse files
committed
FROMLIST: arm64: dts: qcom: talos: Add QSPI support
The Talos (QCS615) platform includes a QSPI controller used for accessing external flash storage. Add the QSPI OPP table, TLMM pinmux entries, and the QSPI controller node to enable support for this hardware. Signed-off-by: Viken Dadhaniya <viken.dadhaniya@oss.qualcomm.com> Link: https://lore.kernel.org/all/20260324-spi-nor-v1-3-3efe59c1c119@oss.qualcomm.com/
1 parent ebd1c4e commit d845f17

1 file changed

Lines changed: 80 additions & 0 deletions

File tree

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

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -538,6 +538,25 @@
538538

539539
};
540540

541+
qspi_opp_table: opp-table-qspi {
542+
compatible = "operating-points-v2";
543+
544+
opp-60000000 {
545+
opp-hz = /bits/ 64 <60000000>;
546+
required-opps = <&rpmhpd_opp_low_svs>;
547+
};
548+
549+
opp-133250000 {
550+
opp-hz = /bits/ 64 <133250000>;
551+
required-opps = <&rpmhpd_opp_svs>;
552+
};
553+
554+
opp-266500000 {
555+
opp-hz = /bits/ 64 <266500000>;
556+
required-opps = <&rpmhpd_opp_nom>;
557+
};
558+
};
559+
541560
qup_opp_table: opp-table-qup {
542561
compatible = "operating-points-v2";
543562

@@ -1622,6 +1641,34 @@
16221641
bias-pull-up;
16231642
};
16241643

1644+
qspi_cs0: qspi-cs0-state {
1645+
pins = "gpio44";
1646+
function = "qspi";
1647+
bias-disable;
1648+
drive-strength = <6>;
1649+
};
1650+
1651+
qspi_data0123: qspi-data0123-state {
1652+
pins = "gpio45", "gpio46", "gpio47", "gpio49";
1653+
function = "qspi";
1654+
bias-pull-down;
1655+
drive-strength = <6>;
1656+
};
1657+
1658+
qspi_clk: qspi-clk-state {
1659+
pins = "gpio48";
1660+
function = "qspi";
1661+
bias-pull-down;
1662+
drive-strength = <6>;
1663+
};
1664+
1665+
qspi_cs1: qspi-cs1-state {
1666+
pins = "gpio50";
1667+
function = "qspi";
1668+
bias-pull-down;
1669+
drive-strength = <6>;
1670+
};
1671+
16251672
qup_i2c1_data_clk: qup-i2c1-data-clk-state {
16261673
pins = "gpio4", "gpio5";
16271674
function = "qup0";
@@ -3916,6 +3963,39 @@
39163963
};
39173964
};
39183965

3966+
qspi: spi@88df000 {
3967+
compatible = "qcom,qcs615-qspi",
3968+
"qcom,qspi-v1";
3969+
reg = <0x0 0x088df000 0x0 0x1000>;
3970+
3971+
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH 0>;
3972+
3973+
clocks = <&gcc GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
3974+
<&gcc GCC_QSPI_CORE_CLK>;
3975+
clock-names = "iface",
3976+
"core";
3977+
3978+
interconnects = <&gem_noc MASTER_APPSS_PROC QCOM_ICC_TAG_ALWAYS
3979+
&config_noc SLAVE_QSPI QCOM_ICC_TAG_ALWAYS>,
3980+
<&aggre1_noc MASTER_QSPI QCOM_ICC_TAG_ALWAYS
3981+
&mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>;
3982+
interconnect-names = "qspi-config",
3983+
"qspi-memory";
3984+
3985+
power-domains = <&rpmhpd RPMHPD_CX>;
3986+
operating-points-v2 = <&qspi_opp_table>;
3987+
3988+
iommus = <&apps_smmu 0x160 0x0>;
3989+
3990+
pinctrl-0 = <&qspi_clk>, <&qspi_cs0>, <&qspi_data0123>;
3991+
pinctrl-names = "default";
3992+
3993+
#address-cells = <1>;
3994+
#size-cells = <0>;
3995+
3996+
status = "disabled";
3997+
};
3998+
39193999
dc_noc: interconnect@9160000 {
39204000
reg = <0x0 0x09160000 0x0 0x3200>;
39214001
compatible = "qcom,qcs615-dc-noc";

0 commit comments

Comments
 (0)