* [PATCH 0/4] Add PCIe support for IPQ5424
@ 2024-12-13 13:49 Manikanta Mylavarapu
2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu
` (4 more replies)
0 siblings, 5 replies; 18+ messages in thread
From: Manikanta Mylavarapu @ 2024-12-13 13:49 UTC (permalink / raw)
To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt,
conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm,
linux-pci, devicetree, linux-kernel, linux-phy
Cc: quic_srichara, quic_varada
This series adds support for enabling the PCIe host devices (PCIe0,
PCIe1, PCIe2, PCIe3) found on IPQ5424 platform. The PCIe0 & PCIe1
are 1-lane Gen3 host and PCIe2 & PCIe3 are 2-lane Gen3 host.
Depends On:
https://lore.kernel.org/linux-arm-msm/20241205064037.1960323-1-quic_mmanikan@quicinc.com/
https://lore.kernel.org/linux-arm-msm/20241213105808.674620-1-quic_varada@quicinc.com/
Manikanta Mylavarapu (4):
dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller
dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe
PHYs
arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes
arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers
.../devicetree/bindings/pci/qcom,pcie.yaml | 4 +
.../phy/qcom,ipq8074-qmp-pcie-phy.yaml | 21 +-
arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 43 ++
arch/arm64/boot/dts/qcom/ipq5424.dtsi | 482 +++++++++++++++++-
4 files changed, 539 insertions(+), 11 deletions(-)
base-commit: 3e42dc9229c5950e84b1ed705f94ed75ed208228
prerequisite-patch-id: 8ca651806ea679db4420e18aaa9f43aea27a519d
prerequisite-patch-id: 3c4107e3b3a47df73db7ae672b55fa5d995c1f30
prerequisite-patch-id: 56470ae6a75766d02d7db8f04c03a028de0c901a
prerequisite-patch-id: abf79dda8233d882c345774ca693e48dafaeadaa
--
2.34.1
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply [flat|nested] 18+ messages in thread* [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu @ 2024-12-13 13:49 ` Manikanta Mylavarapu 2024-12-17 7:26 ` Krzysztof Kozlowski 2025-01-15 11:38 ` Krzysztof Wilczyński 2024-12-13 13:49 ` [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs Manikanta Mylavarapu ` (3 subsequent siblings) 4 siblings, 2 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-13 13:49 UTC (permalink / raw) To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada Document the PCIe controller on the IPQ5424 platform using the IPQ9574 bindings as a fallback, since the PCIe on the IPQ5424 is similar to IPQ9574. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- Documentation/devicetree/bindings/pci/qcom,pcie.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml index bd87f6b49d68..7235d6554cfb 100644 --- a/Documentation/devicetree/bindings/pci/qcom,pcie.yaml +++ b/Documentation/devicetree/bindings/pci/qcom,pcie.yaml @@ -31,6 +31,10 @@ properties: - qcom,pcie-qcs404 - qcom,pcie-sdm845 - qcom,pcie-sdx55 + - items: + - enum: + - qcom,pcie-ipq5424 + - const: qcom,pcie-ipq9574 - items: - const: qcom,pcie-msm8998 - const: qcom,pcie-msm8996 -- 2.34.1 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller 2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu @ 2024-12-17 7:26 ` Krzysztof Kozlowski 2025-01-15 11:38 ` Krzysztof Wilczyński 1 sibling, 0 replies; 18+ messages in thread From: Krzysztof Kozlowski @ 2024-12-17 7:26 UTC (permalink / raw) To: Manikanta Mylavarapu Cc: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, quic_srichara, quic_varada On Fri, Dec 13, 2024 at 07:19:47PM +0530, Manikanta Mylavarapu wrote: > Document the PCIe controller on the IPQ5424 platform using the > IPQ9574 bindings as a fallback, since the PCIe on the IPQ5424 > is similar to IPQ9574. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- > Documentation/devicetree/bindings/pci/qcom,pcie.yaml | 4 ++++ > 1 file changed, 4 insertions(+) Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller 2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu 2024-12-17 7:26 ` Krzysztof Kozlowski @ 2025-01-15 11:38 ` Krzysztof Wilczyński 1 sibling, 0 replies; 18+ messages in thread From: Krzysztof Wilczyński @ 2025-01-15 11:38 UTC (permalink / raw) To: Manikanta Mylavarapu Cc: bhelgaas, lpieralisi, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, quic_srichara, quic_varada Hello, > Document the PCIe controller on the IPQ5424 platform using the > IPQ9574 bindings as a fallback, since the PCIe on the IPQ5424 > is similar to IPQ9574. Applied to dt-bindings for v6.14, thank you! Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu 2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu @ 2024-12-13 13:49 ` Manikanta Mylavarapu 2024-12-17 7:27 ` Krzysztof Kozlowski 2024-12-13 13:49 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes Manikanta Mylavarapu ` (2 subsequent siblings) 4 siblings, 1 reply; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-13 13:49 UTC (permalink / raw) To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada Document the PCIe phy on the IPQ5424 platform using the IPQ9574 bindings as a fallback, since the PCIe phy on the IPQ5424 is similar to IPQ9574. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- .../phy/qcom,ipq8074-qmp-pcie-phy.yaml | 21 +++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/Documentation/devicetree/bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml b/Documentation/devicetree/bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml index 58ce2d91d28c..f60804687412 100644 --- a/Documentation/devicetree/bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml +++ b/Documentation/devicetree/bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml @@ -15,12 +15,21 @@ description: properties: compatible: - enum: - - qcom,ipq6018-qmp-pcie-phy - - qcom,ipq8074-qmp-gen3-pcie-phy - - qcom,ipq8074-qmp-pcie-phy - - qcom,ipq9574-qmp-gen3x1-pcie-phy - - qcom,ipq9574-qmp-gen3x2-pcie-phy + oneOf: + - enum: + - qcom,ipq6018-qmp-pcie-phy + - qcom,ipq8074-qmp-gen3-pcie-phy + - qcom,ipq8074-qmp-pcie-phy + - qcom,ipq9574-qmp-gen3x1-pcie-phy + - qcom,ipq9574-qmp-gen3x2-pcie-phy + - items: + - enum: + - qcom,ipq5424-qmp-gen3x1-pcie-phy + - const: qcom,ipq9574-qmp-gen3x1-pcie-phy + - items: + - enum: + - qcom,ipq5424-qmp-gen3x2-pcie-phy + - const: qcom,ipq9574-qmp-gen3x2-pcie-phy reg: items: -- 2.34.1 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs 2024-12-13 13:49 ` [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs Manikanta Mylavarapu @ 2024-12-17 7:27 ` Krzysztof Kozlowski 0 siblings, 0 replies; 18+ messages in thread From: Krzysztof Kozlowski @ 2024-12-17 7:27 UTC (permalink / raw) To: Manikanta Mylavarapu Cc: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, quic_srichara, quic_varada On Fri, Dec 13, 2024 at 07:19:48PM +0530, Manikanta Mylavarapu wrote: > Document the PCIe phy on the IPQ5424 platform using the > IPQ9574 bindings as a fallback, since the PCIe phy on the > IPQ5424 is similar to IPQ9574. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- > .../phy/qcom,ipq8074-qmp-pcie-phy.yaml | 21 +++++++++++++------ > 1 file changed, 15 insertions(+), 6 deletions(-) Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu 2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu 2024-12-13 13:49 ` [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs Manikanta Mylavarapu @ 2024-12-13 13:49 ` Manikanta Mylavarapu 2024-12-13 15:06 ` Konrad Dybcio 2024-12-13 13:49 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers Manikanta Mylavarapu 2024-12-24 15:25 ` (subset) [PATCH 0/4] Add PCIe support for IPQ5424 Vinod Koul 4 siblings, 1 reply; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-13 13:49 UTC (permalink / raw) To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- arch/arm64/boot/dts/qcom/ipq5424.dtsi | 482 +++++++++++++++++++++++++- 1 file changed, 477 insertions(+), 5 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qcom/ipq5424.dtsi index 5e219f900412..ade512bcb180 100644 --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi @@ -9,6 +9,7 @@ #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/clock/qcom,ipq5424-gcc.h> #include <dt-bindings/reset/qcom,ipq5424-gcc.h> +#include <dt-bindings/interconnect/qcom,ipq5424.h> #include <dt-bindings/gpio/gpio.h> / { @@ -143,7 +144,99 @@ soc@0 { compatible = "simple-bus"; #address-cells = <2>; #size-cells = <2>; - ranges = <0 0 0 0 0x10 0>; + ranges = <0 0 0 0 0x0 0xffffffff>; + + pcie0_phy: phy@84000 { + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; + reg = <0 0x00084000 0 0x2000>; + clocks = <&gcc GCC_PCIE0_AUX_CLK>, + <&gcc GCC_PCIE0_AHB_CLK>, + <&gcc GCC_PCIE0_PIPE_CLK>; + clock-names = "aux", "cfg_ahb", "pipe"; + + assigned-clocks = <&gcc GCC_PCIE0_AUX_CLK>; + assigned-clock-rates = <20000000>; + + resets = <&gcc GCC_PCIE0_PHY_BCR>, + <&gcc GCC_PCIE0PHY_PHY_BCR>; + reset-names = "phy", "common"; + + #clock-cells = <0>; + clock-output-names = "gcc_pcie0_pipe_clk_src"; + + #phy-cells = <0>; + status = "disabled"; + }; + + pcie1_phy: phy@8c000 { + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; + reg = <0 0x0008c000 0 0x2000>; + clocks = <&gcc GCC_PCIE1_AUX_CLK>, + <&gcc GCC_PCIE1_AHB_CLK>, + <&gcc GCC_PCIE1_PIPE_CLK>; + clock-names = "aux", "cfg_ahb", "pipe"; + + assigned-clocks = <&gcc GCC_PCIE1_AUX_CLK>; + assigned-clock-rates = <20000000>; + + resets = <&gcc GCC_PCIE1_PHY_BCR>, + <&gcc GCC_PCIE1PHY_PHY_BCR>; + reset-names = "phy", "common"; + + #clock-cells = <0>; + clock-output-names = "gcc_pcie1_pipe_clk_src"; + + #phy-cells = <0>; + status = "disabled"; + }; + + pcie2_phy: phy@f4000 { + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; + reg = <0 0x000f4000 0 0x2000>; + clocks = <&gcc GCC_PCIE2_AUX_CLK>, + <&gcc GCC_PCIE2_AHB_CLK>, + <&gcc GCC_PCIE2_PIPE_CLK>; + clock-names = "aux", "cfg_ahb", "pipe"; + + assigned-clocks = <&gcc GCC_PCIE2_AUX_CLK>; + assigned-clock-rates = <20000000>; + + resets = <&gcc GCC_PCIE2_PHY_BCR>, + <&gcc GCC_PCIE2PHY_PHY_BCR>; + reset-names = "phy", "common"; + + #clock-cells = <0>; + clock-output-names = "gcc_pcie2_pipe_clk_src"; + + #phy-cells = <0>; + status = "disabled"; + }; + + pcie3_phy: phy@fc000 { + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; + reg = <0 0x000fc000 0 0x2000>; + clocks = <&gcc GCC_PCIE3_AUX_CLK>, + <&gcc GCC_PCIE3_AHB_CLK>, + <&gcc GCC_PCIE3_PIPE_CLK>; + clock-names = "aux", "cfg_ahb", "pipe"; + + assigned-clocks = <&gcc GCC_PCIE3_AUX_CLK>; + assigned-clock-rates = <20000000>; + + resets = <&gcc GCC_PCIE3_PHY_BCR>, + <&gcc GCC_PCIE3PHY_PHY_BCR>; + reset-names = "phy", "common"; + + #clock-cells = <0>; + clock-output-names = "gcc_pcie3_pipe_clk_src"; + + #phy-cells = <0>; + status = "disabled"; + }; tlmm: pinctrl@1000000 { compatible = "qcom,ipq5424-tlmm"; @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { reg = <0 0x01800000 0 0x40000>; clocks = <&xo_board>, <&sleep_clk>, + <&pcie0_phy>, + <&pcie1_phy>, <0>, - <0>, - <0>, - <0>, - <0>; + <&pcie2_phy>, + <&pcie3_phy>; #clock-cells = <1>; #reset-cells = <1>; #interconnect-cells = <1>; @@ -292,6 +385,385 @@ frame@f42d000 { }; }; + pcie3: pcie@40000000 { + compatible = "qcom,pcie-ipq5424", + "qcom,pcie-ipq9574"; + reg = <0 0x40000000 0 0xf1d>, + <0 0x40000f20 0 0xa8>, + <0 0x40001000 0 0x1000>, + <0 0x000f8000 0 0x3000>, + <0 0x40100000 0 0x1000>; + reg-names = "dbi", "elbi", "atu", "parf", "config"; + device_type = "pci"; + linux,pci-domain = <3>; + bus-range = <0x00 0xff>; + num-lanes = <2>; + #address-cells = <3>; + #size-cells = <2>; + + ranges = <0x01000000 0x0 0x00000000 0x0 0x40200000 0x0 0x00100000>, + <0x02000000 0x0 0x40300000 0x0 0x40300000 0x0 0x0fd00000>; + interrupts = <GIC_SPI 470 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 471 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 472 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 473 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 474 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 475 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 476 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 477 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "msi0", + "msi1", + "msi2", + "msi3", + "msi4", + "msi5", + "msi6", + "msi7"; + + #interrupt-cells = <1>; + interrupt-map-mask = <0 0 0 0x7>; + interrupt-map = <0 0 0 1 &intc 0 479 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 2 &intc 0 480 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 3 &intc 0 481 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 4 &intc 0 482 IRQ_TYPE_LEVEL_HIGH>; + + clocks = <&gcc GCC_PCIE3_AXI_M_CLK>, + <&gcc GCC_PCIE3_AXI_S_CLK>, + <&gcc GCC_PCIE3_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE3_RCHNG_CLK>, + <&gcc GCC_PCIE3_AHB_CLK>, + <&gcc GCC_PCIE3_AUX_CLK>; + clock-names = "axi_m", + "axi_s", + "axi_bridge", + "rchng", + "ahb", + "aux"; + + assigned-clocks = <&gcc GCC_PCIE3_AHB_CLK>, + <&gcc GCC_PCIE3_AUX_CLK>, + <&gcc GCC_PCIE3_AXI_M_CLK>, + <&gcc GCC_PCIE3_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE3_AXI_S_CLK>, + <&gcc GCC_PCIE3_RCHNG_CLK>; + assigned-clock-rates = <100000000>, + <20000000>, + <266666666>, + <240000000>, + <240000000>, + <100000000>; + + resets = <&gcc GCC_PCIE3_PIPE_ARES>, + <&gcc GCC_PCIE3_CORE_STICKY_RESET>, + <&gcc GCC_PCIE3_AXI_S_STICKY_RESET>, + <&gcc GCC_PCIE3_AXI_S_ARES>, + <&gcc GCC_PCIE3_AXI_M_STICKY_RESET>, + <&gcc GCC_PCIE3_AXI_M_ARES>, + <&gcc GCC_PCIE3_AUX_ARES>, + <&gcc GCC_PCIE3_AHB_ARES>; + reset-names = "pipe", + "sticky", + "axi_s_sticky", + "axi_s", + "axi_m_sticky", + "axi_m", + "aux", + "ahb"; + + msi-map = <0x0 &intc 0x0 0x1000>; + + phys = <&pcie3_phy>; + phy-names = "pciephy"; + interconnects = <&gcc MASTER_ANOC_PCIE3 &gcc SLAVE_ANOC_PCIE3>, + <&gcc MASTER_CNOC_PCIE3 &gcc SLAVE_CNOC_PCIE3>; + interconnect-names = "pcie-mem", "cpu-pcie"; + status = "disabled"; + }; + + pcie2: pcie@50000000 { + compatible = "qcom,pcie-ipq5424", + "qcom,pcie-ipq9574"; + reg = <0 0x50000000 0 0xf1d>, + <0 0x50000f20 0 0xa8>, + <0 0x50001000 0 0x1000>, + <0 0x000f0000 0 0x3000>, + <0 0x50100000 0 0x1000>; + reg-names = "dbi", "elbi", "atu", "parf", "config"; + device_type = "pci"; + linux,pci-domain = <2>; + bus-range = <0x00 0xff>; + num-lanes = <2>; + #address-cells = <3>; + #size-cells = <2>; + + ranges = <0x01000000 0x0 0x00000000 0x0 0x50200000 0x0 0x00100000>, + <0x02000000 0x0 0x50300000 0x0 0x50300000 0x0 0x0fd00000>; + interrupts = <GIC_SPI 455 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 456 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 457 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 459 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 460 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 461 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 462 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "msi0", + "msi1", + "msi2", + "msi3", + "msi4", + "msi5", + "msi6", + "msi7"; + + #interrupt-cells = <1>; + interrupt-map-mask = <0 0 0 0x7>; + interrupt-map = <0 0 0 1 &intc 0 464 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 2 &intc 0 465 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 3 &intc 0 466 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 4 &intc 0 467 IRQ_TYPE_LEVEL_HIGH>; + + clocks = <&gcc GCC_PCIE2_AXI_M_CLK>, + <&gcc GCC_PCIE2_AXI_S_CLK>, + <&gcc GCC_PCIE2_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE2_RCHNG_CLK>, + <&gcc GCC_PCIE2_AHB_CLK>, + <&gcc GCC_PCIE2_AUX_CLK>; + clock-names = "axi_m", + "axi_s", + "axi_bridge", + "rchng", + "ahb", + "aux"; + + assigned-clocks = <&gcc GCC_PCIE2_AHB_CLK>, + <&gcc GCC_PCIE2_AUX_CLK>, + <&gcc GCC_PCIE2_AXI_M_CLK>, + <&gcc GCC_PCIE2_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE2_AXI_S_CLK>, + <&gcc GCC_PCIE2_RCHNG_CLK>; + assigned-clock-rates = <100000000>, + <20000000>, + <266666666>, + <240000000>, + <240000000>, + <100000000>; + + resets = <&gcc GCC_PCIE2_PIPE_ARES>, + <&gcc GCC_PCIE2_CORE_STICKY_RESET>, + <&gcc GCC_PCIE2_AXI_S_STICKY_RESET>, + <&gcc GCC_PCIE2_AXI_S_ARES>, + <&gcc GCC_PCIE2_AXI_M_STICKY_RESET>, + <&gcc GCC_PCIE2_AXI_M_ARES>, + <&gcc GCC_PCIE2_AUX_ARES>, + <&gcc GCC_PCIE2_AHB_ARES>; + reset-names = "pipe", + "sticky", + "axi_s_sticky", + "axi_s", + "axi_m_sticky", + "axi_m", + "aux", + "ahb"; + + msi-map = <0x0 &intc 0x0 0x1000>; + + phys = <&pcie2_phy>; + phy-names = "pciephy"; + interconnects = <&gcc MASTER_ANOC_PCIE2 &gcc SLAVE_ANOC_PCIE2>, + <&gcc MASTER_CNOC_PCIE2 &gcc SLAVE_CNOC_PCIE2>; + interconnect-names = "pcie-mem", "cpu-pcie"; + status = "disabled"; + }; + + pcie1: pcie@60000000 { + compatible = "qcom,pcie-ipq5424", + "qcom,pcie-ipq9574"; + reg = <0 0x60000000 0 0xf1d>, + <0 0x60000f20 0 0xa8>, + <0 0x60001000 0 0x1000>, + <0 0x00088000 0 0x3000>, + <0 0x60100000 0 0x1000>; + reg-names = "dbi", "elbi", "atu", "parf", "config"; + device_type = "pci"; + linux,pci-domain = <1>; + bus-range = <0x00 0xff>; + num-lanes = <1>; + #address-cells = <3>; + #size-cells = <2>; + + ranges = <0x01000000 0x0 0x00000000 0x0 0x60200000 0x0 0x00100000>, + <0x02000000 0x0 0x60300000 0x0 0x60300000 0x0 0x0fd00000>; + interrupts = <GIC_SPI 440 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 441 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 442 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 443 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 444 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 447 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "msi0", + "msi1", + "msi2", + "msi3", + "msi4", + "msi5", + "msi6", + "msi7"; + + #interrupt-cells = <1>; + interrupt-map-mask = <0 0 0 0x7>; + interrupt-map = <0 0 0 1 &intc 0 449 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 2 &intc 0 450 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 3 &intc 0 451 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 4 &intc 0 452 IRQ_TYPE_LEVEL_HIGH>; + + clocks = <&gcc GCC_PCIE1_AXI_M_CLK>, + <&gcc GCC_PCIE1_AXI_S_CLK>, + <&gcc GCC_PCIE1_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE1_RCHNG_CLK>, + <&gcc GCC_PCIE1_AHB_CLK>, + <&gcc GCC_PCIE1_AUX_CLK>; + clock-names = "axi_m", + "axi_s", + "axi_bridge", + "rchng", + "ahb", + "aux"; + + assigned-clocks = <&gcc GCC_PCIE1_AHB_CLK>, + <&gcc GCC_PCIE1_AUX_CLK>, + <&gcc GCC_PCIE1_AXI_M_CLK>, + <&gcc GCC_PCIE1_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE1_AXI_S_CLK>, + <&gcc GCC_PCIE1_RCHNG_CLK>; + assigned-clock-rates = <100000000>, + <20000000>, + <240000000>, + <240000000>, + <240000000>, + <100000000>; + + resets = <&gcc GCC_PCIE1_PIPE_ARES>, + <&gcc GCC_PCIE1_CORE_STICKY_RESET>, + <&gcc GCC_PCIE1_AXI_S_STICKY_RESET>, + <&gcc GCC_PCIE1_AXI_S_ARES>, + <&gcc GCC_PCIE1_AXI_M_STICKY_RESET>, + <&gcc GCC_PCIE1_AXI_M_ARES>, + <&gcc GCC_PCIE1_AUX_ARES>, + <&gcc GCC_PCIE1_AHB_ARES>; + reset-names = "pipe", + "sticky", + "axi_s_sticky", + "axi_s", + "axi_m_sticky", + "axi_m", + "aux", + "ahb"; + + msi-map = <0x0 &intc 0x0 0x1000>; + + phys = <&pcie1_phy>; + phy-names = "pciephy"; + interconnects = <&gcc MASTER_ANOC_PCIE1 &gcc SLAVE_ANOC_PCIE1>, + <&gcc MASTER_CNOC_PCIE1 &gcc SLAVE_CNOC_PCIE1>; + interconnect-names = "pcie-mem", "cpu-pcie"; + status = "disabled"; + }; + + pcie0: pcie@70000000 { + compatible = "qcom,pcie-ipq5424", + "qcom,pcie-ipq9574"; + reg = <0 0x70000000 0 0xf1d>, + <0 0x70000f20 0 0xa8>, + <0 0x70001000 0 0x1000>, + <0 0x00080000 0 0x3000>, + <0 0x70100000 0 0x1000>; + reg-names = "dbi", "elbi", "atu", "parf", "config"; + device_type = "pci"; + linux,pci-domain = <0>; + bus-range = <0x00 0xff>; + num-lanes = <1>; + #address-cells = <3>; + #size-cells = <2>; + + ranges = <0x01000000 0x0 0x00000000 0x0 0x70200000 0x0 0x00100000>, + <0x02000000 0x0 0x70300000 0x0 0x70300000 0x0 0x0fd00000>; + interrupts = <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 427 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 428 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 429 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 432 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "msi0", + "msi1", + "msi2", + "msi3", + "msi4", + "msi5", + "msi6", + "msi7"; + + #interrupt-cells = <1>; + interrupt-map-mask = <0 0 0 0x7>; + interrupt-map = <0 0 0 1 &intc 0 434 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 2 &intc 0 435 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 3 &intc 0 436 IRQ_TYPE_LEVEL_HIGH>, + <0 0 0 4 &intc 0 437 IRQ_TYPE_LEVEL_HIGH>; + + clocks = <&gcc GCC_PCIE0_AXI_M_CLK>, + <&gcc GCC_PCIE0_AXI_S_CLK>, + <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE0_RCHNG_CLK>, + <&gcc GCC_PCIE0_AHB_CLK>, + <&gcc GCC_PCIE0_AUX_CLK>; + clock-names = "axi_m", + "axi_s", + "axi_bridge", + "rchng", + "ahb", + "aux"; + + assigned-clocks = <&gcc GCC_PCIE0_AHB_CLK>, + <&gcc GCC_PCIE0_AUX_CLK>, + <&gcc GCC_PCIE0_AXI_M_CLK>, + <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>, + <&gcc GCC_PCIE0_AXI_S_CLK>, + <&gcc GCC_PCIE0_RCHNG_CLK>; + assigned-clock-rates = <100000000>, + <20000000>, + <240000000>, + <240000000>, + <240000000>, + <100000000>; + + resets = <&gcc GCC_PCIE0_PIPE_ARES>, + <&gcc GCC_PCIE0_CORE_STICKY_RESET>, + <&gcc GCC_PCIE0_AXI_S_STICKY_RESET>, + <&gcc GCC_PCIE0_AXI_S_ARES>, + <&gcc GCC_PCIE0_AXI_M_STICKY_RESET>, + <&gcc GCC_PCIE0_AXI_M_ARES>, + <&gcc GCC_PCIE0_AUX_ARES>, + <&gcc GCC_PCIE0_AHB_ARES>; + reset-names = "pipe", + "sticky", + "axi_s_sticky", + "axi_s", + "axi_m_sticky", + "axi_m", + "aux", + "ahb"; + + msi-map = <0x0 &intc 0x0 0x1000>; + + phys = <&pcie0_phy>; + phy-names = "pciephy"; + interconnects = <&gcc MASTER_ANOC_PCIE0 &gcc SLAVE_ANOC_PCIE0>, + <&gcc MASTER_CNOC_PCIE0 &gcc SLAVE_CNOC_PCIE0>; + interconnect-names = "pcie-mem", "cpu-pcie"; + status = "disabled"; + }; }; timer { -- 2.34.1 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-13 13:49 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes Manikanta Mylavarapu @ 2024-12-13 15:06 ` Konrad Dybcio 2024-12-20 6:09 ` Manikanta Mylavarapu 2024-12-20 6:42 ` Manikanta Mylavarapu 0 siblings, 2 replies; 18+ messages in thread From: Konrad Dybcio @ 2024-12-13 15:06 UTC (permalink / raw) To: Manikanta Mylavarapu, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: > Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices > found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 > host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- > arch/arm64/boot/dts/qcom/ipq5424.dtsi | 482 +++++++++++++++++++++++++- > 1 file changed, 477 insertions(+), 5 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qcom/ipq5424.dtsi > index 5e219f900412..ade512bcb180 100644 > --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi > +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi > @@ -9,6 +9,7 @@ > #include <dt-bindings/interrupt-controller/arm-gic.h> > #include <dt-bindings/clock/qcom,ipq5424-gcc.h> > #include <dt-bindings/reset/qcom,ipq5424-gcc.h> > +#include <dt-bindings/interconnect/qcom,ipq5424.h> > #include <dt-bindings/gpio/gpio.h> > > / { > @@ -143,7 +144,99 @@ soc@0 { > compatible = "simple-bus"; > #address-cells = <2>; > #size-cells = <2>; > - ranges = <0 0 0 0 0x10 0>; > + ranges = <0 0 0 0 0x0 0xffffffff>; This must be a separate change, with a clear explanation > + > + pcie0_phy: phy@84000 { > + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", > + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; > + reg = <0 0x00084000 0 0x2000>; > + clocks = <&gcc GCC_PCIE0_AUX_CLK>, > + <&gcc GCC_PCIE0_AHB_CLK>, > + <&gcc GCC_PCIE0_PIPE_CLK>; > + clock-names = "aux", "cfg_ahb", "pipe"; > + > + assigned-clocks = <&gcc GCC_PCIE0_AUX_CLK>; > + assigned-clock-rates = <20000000>; > + > + resets = <&gcc GCC_PCIE0_PHY_BCR>, > + <&gcc GCC_PCIE0PHY_PHY_BCR>; > + reset-names = "phy", "common"; > + > + #clock-cells = <0>; > + clock-output-names = "gcc_pcie0_pipe_clk_src"; > + > + #phy-cells = <0>; > + status = "disabled"; > + }; > + > + pcie1_phy: phy@8c000 { > + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", > + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; > + reg = <0 0x0008c000 0 0x2000>; > + clocks = <&gcc GCC_PCIE1_AUX_CLK>, > + <&gcc GCC_PCIE1_AHB_CLK>, > + <&gcc GCC_PCIE1_PIPE_CLK>; > + clock-names = "aux", "cfg_ahb", "pipe"; > + > + assigned-clocks = <&gcc GCC_PCIE1_AUX_CLK>; > + assigned-clock-rates = <20000000>; > + > + resets = <&gcc GCC_PCIE1_PHY_BCR>, > + <&gcc GCC_PCIE1PHY_PHY_BCR>; > + reset-names = "phy", "common"; > + > + #clock-cells = <0>; > + clock-output-names = "gcc_pcie1_pipe_clk_src"; > + > + #phy-cells = <0>; > + status = "disabled"; > + }; > + > + pcie2_phy: phy@f4000 { > + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", > + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; > + reg = <0 0x000f4000 0 0x2000>; > + clocks = <&gcc GCC_PCIE2_AUX_CLK>, > + <&gcc GCC_PCIE2_AHB_CLK>, > + <&gcc GCC_PCIE2_PIPE_CLK>; > + clock-names = "aux", "cfg_ahb", "pipe"; > + > + assigned-clocks = <&gcc GCC_PCIE2_AUX_CLK>; > + assigned-clock-rates = <20000000>; > + > + resets = <&gcc GCC_PCIE2_PHY_BCR>, > + <&gcc GCC_PCIE2PHY_PHY_BCR>; > + reset-names = "phy", "common"; > + > + #clock-cells = <0>; > + clock-output-names = "gcc_pcie2_pipe_clk_src"; > + > + #phy-cells = <0>; > + status = "disabled"; > + }; > + > + pcie3_phy: phy@fc000 { > + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", > + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; > + reg = <0 0x000fc000 0 0x2000>; > + clocks = <&gcc GCC_PCIE3_AUX_CLK>, > + <&gcc GCC_PCIE3_AHB_CLK>, > + <&gcc GCC_PCIE3_PIPE_CLK>; > + clock-names = "aux", "cfg_ahb", "pipe"; > + > + assigned-clocks = <&gcc GCC_PCIE3_AUX_CLK>; > + assigned-clock-rates = <20000000>; > + > + resets = <&gcc GCC_PCIE3_PHY_BCR>, > + <&gcc GCC_PCIE3PHY_PHY_BCR>; > + reset-names = "phy", "common"; > + > + #clock-cells = <0>; > + clock-output-names = "gcc_pcie3_pipe_clk_src"; > + > + #phy-cells = <0>; > + status = "disabled"; > + }; > > tlmm: pinctrl@1000000 { > compatible = "qcom,ipq5424-tlmm"; > @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { > reg = <0 0x01800000 0 0x40000>; > clocks = <&xo_board>, > <&sleep_clk>, > + <&pcie0_phy>, > + <&pcie1_phy>, > <0>, This leftover zero needs to be removed too, currently the wrong clocks are used as parents > - <0>, > - <0>, > - <0>, > - <0>; > + <&pcie2_phy>, > + <&pcie3_phy>; > #clock-cells = <1>; > #reset-cells = <1>; > #interconnect-cells = <1>; > @@ -292,6 +385,385 @@ frame@f42d000 { > }; > }; > > + pcie3: pcie@40000000 { > + compatible = "qcom,pcie-ipq5424", > + "qcom,pcie-ipq9574"; > + reg = <0 0x40000000 0 0xf1d>, > + <0 0x40000f20 0 0xa8>, > + <0 0x40001000 0 0x1000>, > + <0 0x000f8000 0 0x3000>, > + <0 0x40100000 0 0x1000>; > + reg-names = "dbi", "elbi", "atu", "parf", "config"; Please make this a vertical list, in all nodes [...] > + phys = <&pcie3_phy>; > + phy-names = "pciephy"; > + interconnects = <&gcc MASTER_ANOC_PCIE3 &gcc SLAVE_ANOC_PCIE3>, > + <&gcc MASTER_CNOC_PCIE3 &gcc SLAVE_CNOC_PCIE3>; > + interconnect-names = "pcie-mem", "cpu-pcie"; > + status = "disabled"; And add a newline above status Konrad -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-13 15:06 ` Konrad Dybcio @ 2024-12-20 6:09 ` Manikanta Mylavarapu 2024-12-20 6:42 ` Manikanta Mylavarapu 1 sibling, 0 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-20 6:09 UTC (permalink / raw) To: Konrad Dybcio, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 12/13/2024 8:36 PM, Konrad Dybcio wrote: > On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: >> Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices >> found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 >> host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. >> >> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >> --- >> arch/arm64/boot/dts/qcom/ipq5424.dtsi | 482 +++++++++++++++++++++++++- >> 1 file changed, 477 insertions(+), 5 deletions(-) >> >> diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> index 5e219f900412..ade512bcb180 100644 >> --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> @@ -9,6 +9,7 @@ >> #include <dt-bindings/interrupt-controller/arm-gic.h> >> #include <dt-bindings/clock/qcom,ipq5424-gcc.h> >> #include <dt-bindings/reset/qcom,ipq5424-gcc.h> >> +#include <dt-bindings/interconnect/qcom,ipq5424.h> >> #include <dt-bindings/gpio/gpio.h> >> >> / { >> @@ -143,7 +144,99 @@ soc@0 { >> compatible = "simple-bus"; >> #address-cells = <2>; >> #size-cells = <2>; >> - ranges = <0 0 0 0 0x10 0>; >> + ranges = <0 0 0 0 0x0 0xffffffff>; > > This must be a separate change, with a clear explanation > Thank you for reviewing the patch. Okay, sure. >> + >> + pcie0_phy: phy@84000 { >> + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; >> + reg = <0 0x00084000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE0_AUX_CLK>, >> + <&gcc GCC_PCIE0_AHB_CLK>, >> + <&gcc GCC_PCIE0_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE0_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE0_PHY_BCR>, >> + <&gcc GCC_PCIE0PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie0_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie1_phy: phy@8c000 { >> + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; >> + reg = <0 0x0008c000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE1_AUX_CLK>, >> + <&gcc GCC_PCIE1_AHB_CLK>, >> + <&gcc GCC_PCIE1_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE1_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE1_PHY_BCR>, >> + <&gcc GCC_PCIE1PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie1_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie2_phy: phy@f4000 { >> + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; >> + reg = <0 0x000f4000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE2_AUX_CLK>, >> + <&gcc GCC_PCIE2_AHB_CLK>, >> + <&gcc GCC_PCIE2_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE2_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE2_PHY_BCR>, >> + <&gcc GCC_PCIE2PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie2_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie3_phy: phy@fc000 { >> + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; >> + reg = <0 0x000fc000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE3_AUX_CLK>, >> + <&gcc GCC_PCIE3_AHB_CLK>, >> + <&gcc GCC_PCIE3_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE3_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE3_PHY_BCR>, >> + <&gcc GCC_PCIE3PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie3_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> >> tlmm: pinctrl@1000000 { >> compatible = "qcom,ipq5424-tlmm"; >> @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { >> reg = <0 0x01800000 0 0x40000>; >> clocks = <&xo_board>, >> <&sleep_clk>, >> + <&pcie0_phy>, >> + <&pcie1_phy>, >> <0>, > > This leftover zero needs to be removed too, currently the wrong > clocks are used as parents > >> - <0>, >> - <0>, >> - <0>, >> - <0>; >> + <&pcie2_phy>, >> + <&pcie3_phy>; >> #clock-cells = <1>; >> #reset-cells = <1>; >> #interconnect-cells = <1>; >> @@ -292,6 +385,385 @@ frame@f42d000 { >> }; >> }; >> >> + pcie3: pcie@40000000 { >> + compatible = "qcom,pcie-ipq5424", >> + "qcom,pcie-ipq9574"; >> + reg = <0 0x40000000 0 0xf1d>, >> + <0 0x40000f20 0 0xa8>, >> + <0 0x40001000 0 0x1000>, >> + <0 0x000f8000 0 0x3000>, >> + <0 0x40100000 0 0x1000>; >> + reg-names = "dbi", "elbi", "atu", "parf", "config"; > > Please make this a vertical list, in all nodes > Okay, sure. > [...] > >> + phys = <&pcie3_phy>; >> + phy-names = "pciephy"; >> + interconnects = <&gcc MASTER_ANOC_PCIE3 &gcc SLAVE_ANOC_PCIE3>, >> + <&gcc MASTER_CNOC_PCIE3 &gcc SLAVE_CNOC_PCIE3>; >> + interconnect-names = "pcie-mem", "cpu-pcie"; >> + status = "disabled"; > > And add a newline above status Okay, sure. Thanks & Regards, Manikanta. -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-13 15:06 ` Konrad Dybcio 2024-12-20 6:09 ` Manikanta Mylavarapu @ 2024-12-20 6:42 ` Manikanta Mylavarapu 2024-12-20 9:48 ` Konrad Dybcio 1 sibling, 1 reply; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-20 6:42 UTC (permalink / raw) To: Konrad Dybcio, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 12/13/2024 8:36 PM, Konrad Dybcio wrote: > On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: >> Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices >> found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 >> host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. >> >> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >> --- >> arch/arm64/boot/dts/qcom/ipq5424.dtsi | 482 +++++++++++++++++++++++++- >> 1 file changed, 477 insertions(+), 5 deletions(-) >> >> diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> index 5e219f900412..ade512bcb180 100644 >> --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi >> @@ -9,6 +9,7 @@ >> #include <dt-bindings/interrupt-controller/arm-gic.h> >> #include <dt-bindings/clock/qcom,ipq5424-gcc.h> >> #include <dt-bindings/reset/qcom,ipq5424-gcc.h> >> +#include <dt-bindings/interconnect/qcom,ipq5424.h> >> #include <dt-bindings/gpio/gpio.h> >> >> / { >> @@ -143,7 +144,99 @@ soc@0 { >> compatible = "simple-bus"; >> #address-cells = <2>; >> #size-cells = <2>; >> - ranges = <0 0 0 0 0x10 0>; >> + ranges = <0 0 0 0 0x0 0xffffffff>; > > This must be a separate change, with a clear explanation > >> + >> + pcie0_phy: phy@84000 { >> + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; >> + reg = <0 0x00084000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE0_AUX_CLK>, >> + <&gcc GCC_PCIE0_AHB_CLK>, >> + <&gcc GCC_PCIE0_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE0_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE0_PHY_BCR>, >> + <&gcc GCC_PCIE0PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie0_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie1_phy: phy@8c000 { >> + compatible = "qcom,ipq5424-qmp-gen3x1-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x1-pcie-phy"; >> + reg = <0 0x0008c000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE1_AUX_CLK>, >> + <&gcc GCC_PCIE1_AHB_CLK>, >> + <&gcc GCC_PCIE1_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE1_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE1_PHY_BCR>, >> + <&gcc GCC_PCIE1PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie1_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie2_phy: phy@f4000 { >> + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; >> + reg = <0 0x000f4000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE2_AUX_CLK>, >> + <&gcc GCC_PCIE2_AHB_CLK>, >> + <&gcc GCC_PCIE2_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE2_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE2_PHY_BCR>, >> + <&gcc GCC_PCIE2PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie2_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> + >> + pcie3_phy: phy@fc000 { >> + compatible = "qcom,ipq5424-qmp-gen3x2-pcie-phy", >> + "qcom,ipq9574-qmp-gen3x2-pcie-phy"; >> + reg = <0 0x000fc000 0 0x2000>; >> + clocks = <&gcc GCC_PCIE3_AUX_CLK>, >> + <&gcc GCC_PCIE3_AHB_CLK>, >> + <&gcc GCC_PCIE3_PIPE_CLK>; >> + clock-names = "aux", "cfg_ahb", "pipe"; >> + >> + assigned-clocks = <&gcc GCC_PCIE3_AUX_CLK>; >> + assigned-clock-rates = <20000000>; >> + >> + resets = <&gcc GCC_PCIE3_PHY_BCR>, >> + <&gcc GCC_PCIE3PHY_PHY_BCR>; >> + reset-names = "phy", "common"; >> + >> + #clock-cells = <0>; >> + clock-output-names = "gcc_pcie3_pipe_clk_src"; >> + >> + #phy-cells = <0>; >> + status = "disabled"; >> + }; >> >> tlmm: pinctrl@1000000 { >> compatible = "qcom,ipq5424-tlmm"; >> @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { >> reg = <0 0x01800000 0 0x40000>; >> clocks = <&xo_board>, >> <&sleep_clk>, >> + <&pcie0_phy>, >> + <&pcie1_phy>, >> <0>, > > This leftover zero needs to be removed too, currently the wrong > clocks are used as parents > Hi Konrad, The '<0>' entry is for "USB PCIE wrapper pipe clock source". And, will update the pcie entries as follows <&pcie0_phy GCC_PCIE0_PIPE_CLK> <&pcie1_phy GCC_PCIE1_PIPE_CLK> <&pcie2_phy GCC_PCIE2_PIPE_CLK> <&pcie3_phy GCC_PCIE3_PIPE_CLK> Please correct me if i am wrong. Thanks & Regards, Manikanta. >> - <0>, >> - <0>, >> - <0>, >> - <0>; >> + <&pcie2_phy>, >> + <&pcie3_phy>; >> #clock-cells = <1>; >> #reset-cells = <1>; >> #interconnect-cells = <1>; >> @@ -292,6 +385,385 @@ frame@f42d000 { >> }; >> }; >> -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-20 6:42 ` Manikanta Mylavarapu @ 2024-12-20 9:48 ` Konrad Dybcio 2024-12-20 11:28 ` Manikanta Mylavarapu 0 siblings, 1 reply; 18+ messages in thread From: Konrad Dybcio @ 2024-12-20 9:48 UTC (permalink / raw) To: Manikanta Mylavarapu, Konrad Dybcio, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 20.12.2024 7:42 AM, Manikanta Mylavarapu wrote: > > > On 12/13/2024 8:36 PM, Konrad Dybcio wrote: >> On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: >>> Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices >>> found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 >>> host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. >>> >>> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >>> --- [...] >>> tlmm: pinctrl@1000000 { >>> compatible = "qcom,ipq5424-tlmm"; >>> @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { >>> reg = <0 0x01800000 0 0x40000>; >>> clocks = <&xo_board>, >>> <&sleep_clk>, >>> + <&pcie0_phy>, >>> + <&pcie1_phy>, >>> <0>, >> >> This leftover zero needs to be removed too, currently the wrong >> clocks are used as parents >> > > Hi Konrad, > > The '<0>' entry is for "USB PCIE wrapper pipe clock source". > And, will update the pcie entries as follows > <&pcie0_phy GCC_PCIE0_PIPE_CLK> > <&pcie1_phy GCC_PCIE1_PIPE_CLK> > <&pcie2_phy GCC_PCIE2_PIPE_CLK> > <&pcie3_phy GCC_PCIE3_PIPE_CLK> > > Please correct me if i am wrong. The order of these is fixed by the first enum in drivers/clk/qcom/gcc-ipq5424.c. The <0> entry must be at the end of the clocks list for it to do what you want it to. Konrad -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes 2024-12-20 9:48 ` Konrad Dybcio @ 2024-12-20 11:28 ` Manikanta Mylavarapu 0 siblings, 0 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-20 11:28 UTC (permalink / raw) To: Konrad Dybcio, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 12/20/2024 3:18 PM, Konrad Dybcio wrote: > On 20.12.2024 7:42 AM, Manikanta Mylavarapu wrote: >> >> >> On 12/13/2024 8:36 PM, Konrad Dybcio wrote: >>> On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: >>>> Add PCIe0, PCIe1, PCIe2, PCIe3 (and corresponding PHY) devices >>>> found on IPQ5424 platform. The PCIe0 & PCIe1 are 1-lane Gen3 >>>> host whereas PCIe2 & PCIe3 are 2-lane Gen3 host. >>>> >>>> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >>>> --- > > [...] > >>>> tlmm: pinctrl@1000000 { >>>> compatible = "qcom,ipq5424-tlmm"; >>>> @@ -168,11 +261,11 @@ gcc: clock-controller@1800000 { >>>> reg = <0 0x01800000 0 0x40000>; >>>> clocks = <&xo_board>, >>>> <&sleep_clk>, >>>> + <&pcie0_phy>, >>>> + <&pcie1_phy>, >>>> <0>, >>> >>> This leftover zero needs to be removed too, currently the wrong >>> clocks are used as parents >>> >> >> Hi Konrad, >> >> The '<0>' entry is for "USB PCIE wrapper pipe clock source". >> And, will update the pcie entries as follows >> <&pcie0_phy GCC_PCIE0_PIPE_CLK> >> <&pcie1_phy GCC_PCIE1_PIPE_CLK> >> <&pcie2_phy GCC_PCIE2_PIPE_CLK> >> <&pcie3_phy GCC_PCIE3_PIPE_CLK> >> >> Please correct me if i am wrong. > > The order of these is fixed by the first enum in > drivers/clk/qcom/gcc-ipq5424.c. The <0> entry must be at the end of > the clocks list for it to do what you want it to. > I understand your point. I will move the <0> entry to the end and incorporate this change in the next version. Thanks & Regards, Manikanta. -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu ` (2 preceding siblings ...) 2024-12-13 13:49 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes Manikanta Mylavarapu @ 2024-12-13 13:49 ` Manikanta Mylavarapu 2024-12-13 15:07 ` Konrad Dybcio 2025-01-03 6:52 ` Varadarajan Narayanan 2024-12-24 15:25 ` (subset) [PATCH 0/4] Add PCIe support for IPQ5424 Vinod Koul 4 siblings, 2 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2024-12-13 13:49 UTC (permalink / raw) To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada Enable the PCIe controller and PHY nodes corresponding to RDP466. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 43 +++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts index d4d31026a026..8857b64df1be 100644 --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts @@ -45,6 +45,26 @@ data-pins { bias-pull-up; }; }; + + pcie2_default_state: pcie2-default-state { + perst-n-pins { + pins = "gpio31"; + function = "gpio"; + drive-strength = <8>; + bias-pull-up; + output-low; + }; + }; + + pcie3_default_state: pcie3-default-state { + perst-n-pins { + pins = "gpio34"; + function = "gpio"; + drive-strength = <8>; + bias-pull-up; + output-low; + }; + }; }; &uart1 { @@ -57,3 +77,26 @@ &xo_board { clock-frequency = <24000000>; }; +&pcie2_phy { + status = "okay"; +}; + +&pcie2 { + pinctrl-0 = <&pcie2_default_state>; + pinctrl-names = "default"; + + perst-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; + status = "okay"; +}; + +&pcie3_phy { + status = "okay"; +}; + +&pcie3 { + pinctrl-0 = <&pcie3_default_state>; + pinctrl-names = "default"; + + perst-gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; + status = "okay"; +}; -- 2.34.1 -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers 2024-12-13 13:49 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers Manikanta Mylavarapu @ 2024-12-13 15:07 ` Konrad Dybcio 2025-01-02 6:08 ` Manikanta Mylavarapu 2025-01-03 6:52 ` Varadarajan Narayanan 1 sibling, 1 reply; 18+ messages in thread From: Konrad Dybcio @ 2024-12-13 15:07 UTC (permalink / raw) To: Manikanta Mylavarapu, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: > Enable the PCIe controller and PHY nodes corresponding to RDP466. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- > arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 43 +++++++++++++++++++++ > 1 file changed, 43 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > index d4d31026a026..8857b64df1be 100644 > --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > @@ -45,6 +45,26 @@ data-pins { > bias-pull-up; > }; > }; > + > + pcie2_default_state: pcie2-default-state { > + perst-n-pins { > + pins = "gpio31"; > + function = "gpio"; > + drive-strength = <8>; > + bias-pull-up; > + output-low; > + }; > + }; Drop the inner wrapper, in both definitions /\ \/ Konrad > + > + pcie3_default_state: pcie3-default-state { > + perst-n-pins { > + pins = "gpio34"; > + function = "gpio"; > + drive-strength = <8>; > + bias-pull-up; > + output-low; > + }; > + }; > }; > > &uart1 { > @@ -57,3 +77,26 @@ &xo_board { > clock-frequency = <24000000>; > }; > > +&pcie2_phy { > + status = "okay"; > +}; > + > +&pcie2 { > + pinctrl-0 = <&pcie2_default_state>; > + pinctrl-names = "default"; > + > + perst-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; > + status = "okay"; > +}; > + > +&pcie3_phy { > + status = "okay"; > +}; > + > +&pcie3 { > + pinctrl-0 = <&pcie3_default_state>; > + pinctrl-names = "default"; > + > + perst-gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; > + status = "okay"; > +}; -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers 2024-12-13 15:07 ` Konrad Dybcio @ 2025-01-02 6:08 ` Manikanta Mylavarapu 0 siblings, 0 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2025-01-02 6:08 UTC (permalink / raw) To: Konrad Dybcio, bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy Cc: quic_srichara, quic_varada On 12/13/2024 8:37 PM, Konrad Dybcio wrote: > On 13.12.2024 2:49 PM, Manikanta Mylavarapu wrote: >> Enable the PCIe controller and PHY nodes corresponding to RDP466. >> >> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >> --- > > >> arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 43 +++++++++++++++++++++ >> 1 file changed, 43 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> index d4d31026a026..8857b64df1be 100644 >> --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> @@ -45,6 +45,26 @@ data-pins { >> bias-pull-up; >> }; >> }; >> + >> + pcie2_default_state: pcie2-default-state { >> + perst-n-pins { >> + pins = "gpio31"; >> + function = "gpio"; >> + drive-strength = <8>; >> + bias-pull-up; >> + output-low; >> + }; >> + }; > > Drop the inner wrapper, in both definitions /\ \/ > > Konrad > Okay, sure. Thanks & Regards, Manikanta. -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers 2024-12-13 13:49 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers Manikanta Mylavarapu 2024-12-13 15:07 ` Konrad Dybcio @ 2025-01-03 6:52 ` Varadarajan Narayanan 2025-01-15 6:10 ` Manikanta Mylavarapu 1 sibling, 1 reply; 18+ messages in thread From: Varadarajan Narayanan @ 2025-01-03 6:52 UTC (permalink / raw) To: Manikanta Mylavarapu Cc: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, quic_srichara On Fri, Dec 13, 2024 at 07:19:50PM +0530, Manikanta Mylavarapu wrote: [ . . . ] > +&pcie2_phy { > + status = "okay"; > +}; > + > +&pcie2 { > + pinctrl-0 = <&pcie2_default_state>; > + pinctrl-names = "default"; > + > + perst-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; > + status = "okay"; > +}; pcie2 should come before pcie2_phy > + > +&pcie3_phy { > + status = "okay"; > +}; > + > +&pcie3 { > + pinctrl-0 = <&pcie3_default_state>; > + pinctrl-names = "default"; > + > + perst-gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; > + status = "okay"; > +}; same here. -Varada -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers 2025-01-03 6:52 ` Varadarajan Narayanan @ 2025-01-15 6:10 ` Manikanta Mylavarapu 0 siblings, 0 replies; 18+ messages in thread From: Manikanta Mylavarapu @ 2025-01-15 6:10 UTC (permalink / raw) To: Varadarajan Narayanan Cc: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, vkoul, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, quic_srichara On 1/3/2025 12:22 PM, Varadarajan Narayanan wrote: > On Fri, Dec 13, 2024 at 07:19:50PM +0530, Manikanta Mylavarapu wrote: > > [ . . . ] > >> +&pcie2_phy { >> + status = "okay"; >> +}; >> + >> +&pcie2 { >> + pinctrl-0 = <&pcie2_default_state>; >> + pinctrl-names = "default"; >> + >> + perst-gpios = <&tlmm 31 GPIO_ACTIVE_LOW>; >> + status = "okay"; >> +}; > > pcie2 should come before pcie2_phy > Okay, i will update in the next version. >> + >> +&pcie3_phy { >> + status = "okay"; >> +}; >> + >> +&pcie3 { >> + pinctrl-0 = <&pcie3_default_state>; >> + pinctrl-names = "default"; >> + >> + perst-gpios = <&tlmm 34 GPIO_ACTIVE_LOW>; >> + status = "okay"; >> +}; > > same here. Okay, i will update in the next version. Thanks & Regards, Manikanta. -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: (subset) [PATCH 0/4] Add PCIe support for IPQ5424 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu ` (3 preceding siblings ...) 2024-12-13 13:49 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers Manikanta Mylavarapu @ 2024-12-24 15:25 ` Vinod Koul 4 siblings, 0 replies; 18+ messages in thread From: Vinod Koul @ 2024-12-24 15:25 UTC (permalink / raw) To: bhelgaas, lpieralisi, kw, manivannan.sadhasivam, robh, krzk+dt, conor+dt, kishon, andersson, konradybcio, linux-arm-msm, linux-pci, devicetree, linux-kernel, linux-phy, Manikanta Mylavarapu Cc: quic_srichara, quic_varada On Fri, 13 Dec 2024 19:19:46 +0530, Manikanta Mylavarapu wrote: > This series adds support for enabling the PCIe host devices (PCIe0, > PCIe1, PCIe2, PCIe3) found on IPQ5424 platform. The PCIe0 & PCIe1 > are 1-lane Gen3 host and PCIe2 & PCIe3 are 2-lane Gen3 host. > > Depends On: > https://lore.kernel.org/linux-arm-msm/20241205064037.1960323-1-quic_mmanikan@quicinc.com/ > https://lore.kernel.org/linux-arm-msm/20241213105808.674620-1-quic_varada@quicinc.com/ > > [...] Applied, thanks! [2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs commit: 879ae4f226d82a2f0e452f14542efdbccf249286 Best regards, -- ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2025-01-15 11:42 UTC | newest] Thread overview: 18+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-12-13 13:49 [PATCH 0/4] Add PCIe support for IPQ5424 Manikanta Mylavarapu 2024-12-13 13:49 ` [PATCH 1/4] dt-bindings: PCI: qcom: Document the IPQ5424 PCIe controller Manikanta Mylavarapu 2024-12-17 7:26 ` Krzysztof Kozlowski 2025-01-15 11:38 ` Krzysztof Wilczyński 2024-12-13 13:49 ` [PATCH 2/4] dt-bindings: phy: qcom,ipq8074-qmp-pcie: Document the IPQ5424 QMP PCIe PHYs Manikanta Mylavarapu 2024-12-17 7:27 ` Krzysztof Kozlowski 2024-12-13 13:49 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: Add PCIe PHYs and controller nodes Manikanta Mylavarapu 2024-12-13 15:06 ` Konrad Dybcio 2024-12-20 6:09 ` Manikanta Mylavarapu 2024-12-20 6:42 ` Manikanta Mylavarapu 2024-12-20 9:48 ` Konrad Dybcio 2024-12-20 11:28 ` Manikanta Mylavarapu 2024-12-13 13:49 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: Enable PCIe PHYs and controllers Manikanta Mylavarapu 2024-12-13 15:07 ` Konrad Dybcio 2025-01-02 6:08 ` Manikanta Mylavarapu 2025-01-03 6:52 ` Varadarajan Narayanan 2025-01-15 6:10 ` Manikanta Mylavarapu 2024-12-24 15:25 ` (subset) [PATCH 0/4] Add PCIe support for IPQ5424 Vinod Koul
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox