Re: [PATCH v2 0/3] PCI: qcom: Move PERST# GPIO & phy retrieval from controller to PCIe bridge node
From: Dmitry Baryshkov
Date: Mon Apr 14 2025 - 04:03:26 EST
On Mon, Apr 14, 2025 at 11:09:11AM +0530, Krishna Chaitanya Chundru wrote:
> There are many places we agreed to move the wake and perst gpio's
> and phy etc to the pcie root port node instead of bridge node[1].
Which problem are you trying to solve?
>
> So move the phy, phy-names, wake-gpio's in the root port.
Is there a reason why you've selected only these properties? Is there a
plan to
> There is already reset-gpio defined for PERST# in pci-bus-common.yaml,
> start using that property instead of perst-gpio.
>
> For backward compatibility, not removing any existing properties in the
> bridge node.
'don't remove', rather than 'not removing'.
> There are some other properties like num-lanes, max-link-speed which
> needs to be moved to the root port nodes, but in this series we are
> excluding them for now as this requires more changes in dwc layer and
> can complicate the things.
>
> The main intention of this series is to move wake# to the root port node.
> After this series we wil come up with a patch which regiters for wake IRQ
> from the pcieport driver. The wake IRQ is needed for the endpoint to wakeup
> the host from D3cold.
This should have been in the beginning of the series. In the next run
please include the functional change to prove that this is enough and
that you won't have to restrucutre DT bindings again.
Please include the note about merging order. You have to mention
explicitly that DT bits must go after the driver changes. Ask
maintainers to provide the immutable branch with the PCIe changes.
>
> [1] https://lore.kernel.org/linux-pci/20241211192014.GA3302752@bhelgaas/
>
> Signed-off-by: Krishna Chaitanya Chundru <krishna.chundru@xxxxxxxxxxxxxxxx>
> ---
> Changes in v2:
> - Remove phy-names property and change the driver, dtsi accordingly (Rob)
> - Link to v1: https://lore.kernel.org/r/20250322-perst-v1-0-e5e4da74a204@xxxxxxxxxxxxxxxx
>
> ---
> Krishna Chaitanya Chundru (3):
> dt-bindings: PCI: qcom: Move phy, wake & reset gpio's to root port
> arm64: qcom: sc7280: Move phy, perst to root port node
> PCI: qcom: Add support for multi-root port
This order of patches suggests that one can merge DT bits before the
driver changes and that it will still work. Is that the case?
>
> .../devicetree/bindings/pci/qcom,pcie-common.yaml | 18 +++
> .../devicetree/bindings/pci/qcom,pcie-sc7280.yaml | 17 ++-
> arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 5 +-
> arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi | 5 +-
> arch/arm64/boot/dts/qcom/sc7280-idp.dtsi | 5 +-
> arch/arm64/boot/dts/qcom/sc7280.dtsi | 6 +-
> drivers/pci/controller/dwc/pcie-qcom.c | 149 +++++++++++++++++----
> 7 files changed, 168 insertions(+), 37 deletions(-)
> ---
> base-commit: 8ffd015db85fea3e15a77027fda6c02ced4d2444
> change-id: 20250101-perst-cb885b5a6129
>
> Best regards,
> --
> Krishna Chaitanya Chundru <krishna.chundru@xxxxxxxxxxxxxxxx>
>
--
With best wishes
Dmitry