* [PATCH v3 1/4] arm64: dts: qcom: x1e80100: Add SPMI support
2024-02-22 14:19 [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Abel Vesa
@ 2024-02-22 14:19 ` Abel Vesa
2024-02-22 14:19 ` [PATCH v3 2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi Abel Vesa
` (3 subsequent siblings)
4 siblings, 0 replies; 7+ messages in thread
From: Abel Vesa @ 2024-02-22 14:19 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Herring
Cc: linux-arm-msm, devicetree, linux-kernel, Abel Vesa
The X1E80100 platform implements the v7 SPMI arbiter, which means it
implements two separate buses. The difference, when compared to existing
platforms that also implement v7 SPMI arbiter, is that this is the first
platform that actually has boards with secondary bus populated with some
PMICs. This is why it needs to have 2 separate buses as child nodes of
the arbiter.
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
arch/arm64/boot/dts/qcom/x1e80100.dtsi | 42 ++++++++++++++++++++++++++++++++++
1 file changed, 42 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/x1e80100.dtsi b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
index 8e517f76189e..1665bd1eaad6 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100.dtsi
+++ b/arch/arm64/boot/dts/qcom/x1e80100.dtsi
@@ -4221,6 +4221,48 @@ aoss_qmp: power-management@c300000 {
#clock-cells = <0>;
};
+ spmi: arbiter@c400000 {
+ compatible = "qcom,x1e80100-spmi-pmic-arb";
+ reg = <0 0x0c400000 0 0x3000>,
+ <0 0x0c500000 0 0x400000>,
+ <0 0x0c440000 0 0x80000>;
+ reg-names = "core", "chnls", "obsrvr";
+
+ qcom,ee = <0>;
+ qcom,channel = <0>;
+
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ spmi_bus0: spmi@c42d000 {
+ reg = <0 0x0c42d000 0 0x4000>,
+ <0 0x0c4c0000 0 0x10000>;
+ reg-names = "cnfg", "intr";
+
+ interrupt-names = "periph_irq";
+ interrupts-extended = <&pdc 1 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <4>;
+
+ #address-cells = <2>;
+ #size-cells = <0>;
+ };
+
+ spmi_bus1: spmi@c432000 {
+ reg = <0 0x0c432000 0 0x4000>,
+ <0 0x0c4d0000 0 0x10000>;
+ reg-names = "cnfg", "intr";
+
+ interrupt-names = "periph_irq";
+ interrupts-extended = <&pdc 3 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <4>;
+
+ #address-cells = <2>;
+ #size-cells = <0>;
+ };
+ };
tlmm: pinctrl@f100000 {
compatible = "qcom,x1e80100-tlmm";
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH v3 2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi
2024-02-22 14:19 [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Abel Vesa
2024-02-22 14:19 ` [PATCH v3 1/4] arm64: dts: qcom: x1e80100: Add SPMI support Abel Vesa
@ 2024-02-22 14:19 ` Abel Vesa
2024-02-22 14:20 ` Konrad Dybcio
2024-02-22 14:19 ` [PATCH v3 3/4] arm64: dts: qcom: x1e80100-crd: Add repeater nodes Abel Vesa
` (2 subsequent siblings)
4 siblings, 1 reply; 7+ messages in thread
From: Abel Vesa @ 2024-02-22 14:19 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Herring
Cc: linux-arm-msm, devicetree, linux-kernel, Abel Vesa
Add dedicated file for x1e80100 PMICs, add the all 3 smb2360 PMIC nodes
with the eUSB2 repeater nodes.
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi | 51 ++++++++++++++++++++++++++++
1 file changed, 51 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi b/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi
new file mode 100644
index 000000000000..04301f772fbd
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi
@@ -0,0 +1,51 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2024, Linaro Limited
+ */
+
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/spmi/spmi.h>
+
+/ {
+};
+
+&spmi_bus1 {
+ smb2360_0: pmic@7 {
+ compatible = "qcom,smb2360", "qcom,spmi-pmic";
+ reg = <0x7 SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ smb2360_0_eusb2_repeater: phy@fd00 {
+ compatible = "qcom,smb2360-eusb2-repeater";
+ reg = <0xfd00>;
+ #phy-cells = <0>;
+ };
+ };
+
+ smb2360_1: pmic@a {
+ compatible = "qcom,smb2360", "qcom,spmi-pmic";
+ reg = <0xa SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ smb2360_1_eusb2_repeater: phy@fd00 {
+ compatible = "qcom,smb2360-eusb2-repeater";
+ reg = <0xfd00>;
+ #phy-cells = <0>;
+ };
+ };
+
+ smb2360_2: pmic@b {
+ compatible = "qcom,smb2360", "qcom,spmi-pmic";
+ reg = <0xb SPMI_USID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ smb2360_2_eusb2_repeater: phy@fd00 {
+ compatible = "qcom,smb2360-eusb2-repeater";
+ reg = <0xfd00>;
+ #phy-cells = <0>;
+ };
+ };
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v3 2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi
2024-02-22 14:19 ` [PATCH v3 2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi Abel Vesa
@ 2024-02-22 14:20 ` Konrad Dybcio
0 siblings, 0 replies; 7+ messages in thread
From: Konrad Dybcio @ 2024-02-22 14:20 UTC (permalink / raw)
To: Abel Vesa, Andy Gross, Bjorn Andersson, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Herring
Cc: linux-arm-msm, devicetree, linux-kernel
On 2/22/24 15:19, Abel Vesa wrote:
> Add dedicated file for x1e80100 PMICs, add the all 3 smb2360 PMIC nodes
> with the eUSB2 repeater nodes.
>
> Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
> ---
> arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi | 51 ++++++++++++++++++++++++++++
> 1 file changed, 51 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi b/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi
> new file mode 100644
> index 000000000000..04301f772fbd
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/x1e80100-pmics.dtsi
> @@ -0,0 +1,51 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) 2024, Linaro Limited
> + */
> +
> +#include <dt-bindings/interrupt-controller/irq.h>
> +#include <dt-bindings/spmi/spmi.h>
> +
> +/ {
> +};
This seems redundant
But otherwise lgtm
Konrad
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v3 3/4] arm64: dts: qcom: x1e80100-crd: Add repeater nodes
2024-02-22 14:19 [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Abel Vesa
2024-02-22 14:19 ` [PATCH v3 1/4] arm64: dts: qcom: x1e80100: Add SPMI support Abel Vesa
2024-02-22 14:19 ` [PATCH v3 2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi Abel Vesa
@ 2024-02-22 14:19 ` Abel Vesa
2024-02-22 14:19 ` [PATCH v3 4/4] arm64: dts: qcom: x1e80100-qcp: " Abel Vesa
2024-03-19 2:48 ` [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Bjorn Andersson
4 siblings, 0 replies; 7+ messages in thread
From: Abel Vesa @ 2024-02-22 14:19 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Herring
Cc: linux-arm-msm, devicetree, linux-kernel, Abel Vesa
Include the PMIC dedicated file and add regulators to each one of
those 3 eUSB2 repeaters. Tie up the repeaters to their corresponding
USB HS PHY.
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
arch/arm64/boot/dts/qcom/x1e80100-crd.dts | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/x1e80100-crd.dts b/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
index 6a0a54532e5f..41078889969d 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
+++ b/arch/arm64/boot/dts/qcom/x1e80100-crd.dts
@@ -9,6 +9,7 @@
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "x1e80100.dtsi"
+#include "x1e80100-pmics.dtsi"
/ {
model = "Qualcomm Technologies, Inc. X1E80100 CRD";
@@ -680,6 +681,21 @@ &remoteproc_cdsp {
status = "okay";
};
+&smb2360_0_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l2b_3p0>;
+};
+
+&smb2360_1_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l14b_3p0>;
+};
+
+&smb2360_2_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l8b_3p0>;
+};
+
&swr0 {
status = "okay";
@@ -817,6 +833,8 @@ &usb_1_ss0_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_0_eusb2_repeater>;
+
status = "okay";
};
@@ -837,6 +855,8 @@ &usb_1_ss1_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_1_eusb2_repeater>;
+
status = "okay";
};
@@ -857,6 +877,8 @@ &usb_1_ss2_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_2_eusb2_repeater>;
+
status = "okay";
};
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH v3 4/4] arm64: dts: qcom: x1e80100-qcp: Add repeater nodes
2024-02-22 14:19 [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Abel Vesa
` (2 preceding siblings ...)
2024-02-22 14:19 ` [PATCH v3 3/4] arm64: dts: qcom: x1e80100-crd: Add repeater nodes Abel Vesa
@ 2024-02-22 14:19 ` Abel Vesa
2024-03-19 2:48 ` [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Bjorn Andersson
4 siblings, 0 replies; 7+ messages in thread
From: Abel Vesa @ 2024-02-22 14:19 UTC (permalink / raw)
To: Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Herring
Cc: linux-arm-msm, devicetree, linux-kernel, Abel Vesa
Include the PMIC dedicated file and add regulators to each one of
those 3 eUSB2 repeaters. Tie up the repeaters to their corresponding
USB HS PHY.
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Abel Vesa <abel.vesa@linaro.org>
---
arch/arm64/boot/dts/qcom/x1e80100-qcp.dts | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/x1e80100-qcp.dts b/arch/arm64/boot/dts/qcom/x1e80100-qcp.dts
index e76d29053d79..35580ac3430d 100644
--- a/arch/arm64/boot/dts/qcom/x1e80100-qcp.dts
+++ b/arch/arm64/boot/dts/qcom/x1e80100-qcp.dts
@@ -9,6 +9,7 @@
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "x1e80100.dtsi"
+#include "x1e80100-pmics.dtsi"
/ {
model = "Qualcomm Technologies, Inc. X1E80100 QCP";
@@ -491,6 +492,21 @@ &remoteproc_cdsp {
status = "okay";
};
+&smb2360_0_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l2b_3p0>;
+};
+
+&smb2360_1_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l14b_3p0>;
+};
+
+&smb2360_2_eusb2_repeater {
+ vdd18-supply = <&vreg_l3d_1p8>;
+ vdd3-supply = <&vreg_l8b_3p0>;
+};
+
&tlmm {
gpio-reserved-ranges = <33 3>, /* Unused */
<44 4>, /* SPI (TPM) */
@@ -513,6 +529,8 @@ &usb_1_ss0_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_0_eusb2_repeater>;
+
status = "okay";
};
@@ -533,6 +551,8 @@ &usb_1_ss1_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_1_eusb2_repeater>;
+
status = "okay";
};
@@ -553,6 +573,8 @@ &usb_1_ss2_hsphy {
vdd-supply = <&vreg_l2e_0p8>;
vdda12-supply = <&vreg_l3e_1p2>;
+ phys = <&smb2360_2_eusb2_repeater>;
+
status = "okay";
};
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread* Re: [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters
2024-02-22 14:19 [PATCH v3 0/4] arm64: dts: qcom: x1e80100: Add support for eUSB2 repeaters Abel Vesa
` (3 preceding siblings ...)
2024-02-22 14:19 ` [PATCH v3 4/4] arm64: dts: qcom: x1e80100-qcp: " Abel Vesa
@ 2024-03-19 2:48 ` Bjorn Andersson
4 siblings, 0 replies; 7+ messages in thread
From: Bjorn Andersson @ 2024-03-19 2:48 UTC (permalink / raw)
To: Andy Gross, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Rob Herring, Abel Vesa
Cc: linux-arm-msm, devicetree, linux-kernel
On Thu, 22 Feb 2024 16:19:18 +0200, Abel Vesa wrote:
> The X1E80100 platform comes with a v7 SPMI arbiter, which means it
> implements two separate buses. The boards using this platform come with
> 3 instances of SMB2360 PMIC which implement a eUSB2 repeater.
>
> This patchset relies on the support added by this patchset:
> https://lore.kernel.org/all/20240222-spmi-multi-master-support-v6-0-bc34ea9561da@linaro.org/
>
> [...]
Applied, thanks!
[1/4] arm64: dts: qcom: x1e80100: Add SPMI support
commit: 53fdae5e086b699a66c6927395fa66c0116ec7ac
[2/4] arm64: dts: qcom: x1e80100: Add dedicated pmic dtsi
commit: 3298d47894b0f30a42a4f93c36dae4838f638dba
[3/4] arm64: dts: qcom: x1e80100-crd: Add repeater nodes
commit: 3930056f30d374967746876e01e8dca10fbc7ff9
[4/4] arm64: dts: qcom: x1e80100-qcp: Add repeater nodes
commit: 04124220d8ce77409a5fa8cdea75dc2be999c932
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 7+ messages in thread