Skip to content
This repository was archived by the owner on Nov 8, 2023. It is now read-only.

Commit 35cf1aa

Browse files
abelvesaandersson
authored andcommitted
arm64: dts: qcom: sm8550: Add UFS host controller and phy nodes
Add UFS host controller and PHY nodes. Signed-off-by: Abel Vesa <[email protected]> Signed-off-by: Bjorn Andersson <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 2f20f27 commit 35cf1aa

File tree

1 file changed

+70
-3
lines changed

1 file changed

+70
-3
lines changed

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

Lines changed: 70 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -649,9 +649,9 @@
649649
<0>,
650650
<0>,
651651
<0>,
652-
<0>,
653-
<0>,
654-
<0>,
652+
<&ufs_mem_phy 0>,
653+
<&ufs_mem_phy 1>,
654+
<&ufs_mem_phy 2>,
655655
<0>;
656656
};
657657

@@ -1571,6 +1571,73 @@
15711571
interconnect-names = "memory";
15721572
};
15731573

1574+
ufs_mem_phy: phy@1d80000 {
1575+
compatible = "qcom,sm8550-qmp-ufs-phy";
1576+
reg = <0x0 0x01d80000 0x0 0x2000>;
1577+
clocks = <&tcsr TCSR_UFS_CLKREF_EN>,
1578+
<&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
1579+
clock-names = "ref", "ref_aux";
1580+
1581+
power-domains = <&gcc UFS_MEM_PHY_GDSC>;
1582+
1583+
resets = <&ufs_mem_hc 0>;
1584+
reset-names = "ufsphy";
1585+
1586+
#clock-cells = <1>;
1587+
#phy-cells = <0>;
1588+
1589+
status = "disabled";
1590+
};
1591+
1592+
ufs_mem_hc: ufs@1d84000 {
1593+
compatible = "qcom,sm8550-ufshc", "qcom,ufshc",
1594+
"jedec,ufs-2.0";
1595+
reg = <0x0 0x01d84000 0x0 0x3000>;
1596+
interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
1597+
phys = <&ufs_mem_phy>;
1598+
phy-names = "ufsphy";
1599+
lanes-per-direction = <2>;
1600+
#reset-cells = <1>;
1601+
resets = <&gcc GCC_UFS_PHY_BCR>;
1602+
reset-names = "rst";
1603+
1604+
power-domains = <&gcc UFS_PHY_GDSC>;
1605+
required-opps = <&rpmhpd_opp_nom>;
1606+
1607+
iommus = <&apps_smmu 0x60 0x0>;
1608+
1609+
interconnects = <&aggre1_noc MASTER_UFS_MEM 0 &mc_virt SLAVE_EBI1 0>,
1610+
<&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_UFS_MEM_CFG 0>;
1611+
1612+
interconnect-names = "ufs-ddr", "cpu-ufs";
1613+
clock-names = "core_clk",
1614+
"bus_aggr_clk",
1615+
"iface_clk",
1616+
"core_clk_unipro",
1617+
"ref_clk",
1618+
"tx_lane0_sync_clk",
1619+
"rx_lane0_sync_clk",
1620+
"rx_lane1_sync_clk";
1621+
clocks = <&gcc GCC_UFS_PHY_AXI_CLK>,
1622+
<&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
1623+
<&gcc GCC_UFS_PHY_AHB_CLK>,
1624+
<&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
1625+
<&tcsr TCSR_UFS_PAD_CLKREF_EN>,
1626+
<&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
1627+
<&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
1628+
<&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
1629+
freq-table-hz =
1630+
<75000000 300000000>,
1631+
<0 0>,
1632+
<0 0>,
1633+
<75000000 300000000>,
1634+
<100000000 403000000>,
1635+
<0 0>,
1636+
<0 0>,
1637+
<0 0>;
1638+
status = "disabled";
1639+
};
1640+
15741641
tcsr_mutex: hwlock@1f40000 {
15751642
compatible = "qcom,tcsr-mutex";
15761643
reg = <0 0x01f40000 0 0x20000>;

0 commit comments

Comments
 (0)