* [PATCH v4 3/5] arm64: dts: qcom: sdm845: add UFS controller
2018-10-24 17:27 [PATCH v4 0/5] arm64: dts: qcom: sdm845: Add UFS DT nodes Evan Green
@ 2018-10-24 17:27 ` Evan Green
2018-10-24 17:27 ` [PATCH v4 4/5] arm64: dts: qcom: sdm845: Add UFS nodes for sdm845-mtp Evan Green
2018-10-24 17:27 ` [PATCH v4 5/5] arm64: dts: qcom: sdm845: Add USB PHY lane two Evan Green
2 siblings, 0 replies; 4+ messages in thread
From: Evan Green @ 2018-10-24 17:27 UTC (permalink / raw)
To: Rob Herring, Andy Gross, Kishon Vijay Abraham I
Cc: Douglas Anderson, Stephen Boyd, Evan Green, devicetree,
linux-arm-msm, linux-kernel, Rob Herring, David Brown,
Mark Rutland, linux-soc
Add the UFS controller and PHY to SDM845.
Signed-off-by: Evan Green <evgreen@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
---
As Doug mentioned in v2, this should land after (or with) the driver fix
in this series.
Changes in v4: None
Changes in v3: None
Changes in v2:
- Renamed ufsphy to phy (Vivek)
- Removed #clock-cells (Vivek)
arch/arm64/boot/dts/qcom/sdm845.dtsi | 67 ++++++++++++++++++++++++++++++++++++
1 file changed, 67 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi
index b72bdb0a31a5..9c72edb678ec 100644
--- a/arch/arm64/boot/dts/qcom/sdm845.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi
@@ -808,6 +808,73 @@
};
};
+ ufshc1: ufshc@1d84000 {
+ compatible = "qcom,sdm845-ufshc", "qcom,ufshc",
+ "jedec,ufs-2.0";
+ reg = <0x1d84000 0x2500>;
+ interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&ufsphy1_lanes>;
+ phy-names = "ufsphy";
+ lanes-per-direction = <2>;
+ power-domains = <&gcc UFS_PHY_GDSC>;
+
+ clock-names =
+ "core_clk",
+ "bus_aggr_clk",
+ "iface_clk",
+ "core_clk_unipro",
+ "ref_clk",
+ "tx_lane0_sync_clk",
+ "rx_lane0_sync_clk",
+ "rx_lane1_sync_clk";
+ clocks =
+ <&gcc GCC_UFS_PHY_AXI_CLK>,
+ <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>,
+ <&gcc GCC_UFS_PHY_AHB_CLK>,
+ <&gcc GCC_UFS_PHY_UNIPRO_CORE_CLK>,
+ <&rpmhcc RPMH_CXO_CLK>,
+ <&gcc GCC_UFS_PHY_TX_SYMBOL_0_CLK>,
+ <&gcc GCC_UFS_PHY_RX_SYMBOL_0_CLK>,
+ <&gcc GCC_UFS_PHY_RX_SYMBOL_1_CLK>;
+ freq-table-hz =
+ <50000000 200000000>,
+ <0 0>,
+ <0 0>,
+ <37500000 150000000>,
+ <0 0>,
+ <0 0>,
+ <0 0>,
+ <0 0>;
+
+ resets = <&gcc GCC_UFS_PHY_BCR>;
+ reset-names = "rst";
+
+ status = "disabled";
+ };
+
+ ufsphy1: phy@1d87000 {
+ compatible = "qcom,sdm845-qmp-ufs-phy";
+ reg = <0x1d87000 0x18c>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ clock-names = "ref",
+ "ref_aux";
+ clocks = <&gcc GCC_UFS_MEM_CLKREF_CLK>,
+ <&gcc GCC_UFS_PHY_PHY_AUX_CLK>;
+
+ status = "disabled";
+
+ ufsphy1_lanes: lanes@1d87400 {
+ reg = <0x1d87400 0x108>,
+ <0x1d87600 0x1e0>,
+ <0x1d87c00 0x1dc>,
+ <0x1d87800 0x108>,
+ <0x1d87a00 0x1e0>;
+ #phy-cells = <0>;
+ };
+ };
+
tcsr_mutex_regs: syscon@1f40000 {
compatible = "syscon";
reg = <0x1f40000 0x40000>;
--
2.16.4
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v4 4/5] arm64: dts: qcom: sdm845: Add UFS nodes for sdm845-mtp
2018-10-24 17:27 [PATCH v4 0/5] arm64: dts: qcom: sdm845: Add UFS DT nodes Evan Green
2018-10-24 17:27 ` [PATCH v4 3/5] arm64: dts: qcom: sdm845: add UFS controller Evan Green
@ 2018-10-24 17:27 ` Evan Green
2018-10-24 17:27 ` [PATCH v4 5/5] arm64: dts: qcom: sdm845: Add USB PHY lane two Evan Green
2 siblings, 0 replies; 4+ messages in thread
From: Evan Green @ 2018-10-24 17:27 UTC (permalink / raw)
To: Rob Herring, Andy Gross, Kishon Vijay Abraham I
Cc: Douglas Anderson, Stephen Boyd, Can Guo, Evan Green, devicetree,
linux-arm-msm, linux-kernel, Rob Herring, David Brown,
Mark Rutland, linux-soc
From: Can Guo <cang@codeaurora.org>
Enable the UFS host controller and PHY on sdm845-mtp.
Signed-off-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Vivek Gautam <vivek.gautam@codeaurora.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
---
Changes in v4: None
Changes in v3: None
Changes in v2: None
arch/arm64/boot/dts/qcom/sdm845-mtp.dts | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/sdm845-mtp.dts b/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
index eedfaf8922e2..d5fddea71a85 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
+++ b/arch/arm64/boot/dts/qcom/sdm845-mtp.dts
@@ -356,6 +356,20 @@
status = "okay";
};
+&ufshc1 {
+ status = "okay";
+
+ vcc-supply = <&vreg_l20a_2p95>;
+ vcc-max-microamp = <600000>;
+};
+
+&ufsphy1 {
+ status = "okay";
+
+ vdda-phy-supply = <&vdda_ufs1_core>;
+ vdda-pll-supply = <&vdda_ufs1_1p2>;
+};
+
&usb_1 {
status = "okay";
};
--
2.16.4
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v4 5/5] arm64: dts: qcom: sdm845: Add USB PHY lane two
2018-10-24 17:27 [PATCH v4 0/5] arm64: dts: qcom: sdm845: Add UFS DT nodes Evan Green
2018-10-24 17:27 ` [PATCH v4 3/5] arm64: dts: qcom: sdm845: add UFS controller Evan Green
2018-10-24 17:27 ` [PATCH v4 4/5] arm64: dts: qcom: sdm845: Add UFS nodes for sdm845-mtp Evan Green
@ 2018-10-24 17:27 ` Evan Green
2 siblings, 0 replies; 4+ messages in thread
From: Evan Green @ 2018-10-24 17:27 UTC (permalink / raw)
To: Rob Herring, Andy Gross, Kishon Vijay Abraham I
Cc: Douglas Anderson, Stephen Boyd, Evan Green, devicetree,
linux-arm-msm, linux-kernel, Rob Herring, David Brown,
Mark Rutland, linux-soc
Add the second lane registers for the USB PHY, now that the
QMP phy bindings have been updated. This way the driver can stop
reaching beyond its register region to get at the second lane.
Signed-off-by: Evan Green <evgreen@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
---
Changes in v4: None
Changes in v3:
- Removed erroneous fixup for USB UniPro PHY, which is not dual lane (Doug)
Changes in v2: None
arch/arm64/boot/dts/qcom/sdm845.dtsi | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi
index 9c72edb678ec..ff2db36ec4fa 100644
--- a/arch/arm64/boot/dts/qcom/sdm845.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm845.dtsi
@@ -1188,10 +1188,12 @@
<&gcc GCC_USB3_PHY_PRIM_BCR>;
reset-names = "phy", "common";
- usb_1_ssphy: lane@88e9200 {
+ usb_1_ssphy: lanes@88e9200 {
reg = <0x88e9200 0x128>,
<0x88e9400 0x200>,
<0x88e9c00 0x218>,
+ <0x88e9600 0x128>,
+ <0x88e9800 0x200>,
<0x88e9a00 0x100>;
#phy-cells = <0>;
clocks = <&gcc GCC_USB3_PRIM_PHY_PIPE_CLK>;
--
2.16.4
^ permalink raw reply related [flat|nested] 4+ messages in thread