A bunch of changes to refine i.MX PCIe driver. - Add ref clock gate for i.MX95 PCIe by #1, #2 and #9 patches. The changes of clock part is here [1]. [1] https://patchwork.kernel.org/project/linux-arm-kernel/cover/1725525535-22924-1-git-send-email-hongxing.zhu@xxxxxxx/ - #3 and #4 patches clean i.MX PCIe driver by removing useless codes. Patch #3 depends on [2]. [2] https://patchwork.kernel.org/project/linux-arm-kernel/cover/1723534943-28499-1-git-send-email-hongxing.zhu@xxxxxxx/ - Make core reset and enable_ref_clk symmetric for i.MX PCIe driver by #5 and #6 patches. - Use dwc common suspend resume method, and enable i.MX8MQ, i.MX8Q and i.MX95 PCIe PM supports by #7 and #8 patches. v3 changes: - Update EP binding refer to comments provided by Krzysztof Kozlowski. Thanks. v2 changes: - Add the reasons why one more clock is added for i.MX95 PCIe in patch #1. - Add the "Reviewed-by: Frank Li <Frank.Li@xxxxxxx>" into patch #2, #4, #5, #6, #8 and #9. [PATCH v3 1/9] dt-bindings: imx6q-pcie: Add ref clock for i.MX95 PCIe [PATCH v3 2/9] PCI: imx6: Add ref clock for i.MX95 PCIe [PATCH v3 3/9] PCI: imx6: Fetch dbi2 and iATU base addesses from DT [PATCH v3 4/9] PCI: imx6: Correct controller_id generation logic for [PATCH v3 5/9] PCI: imx6: Make core reset assertion deassertion [PATCH v3 6/9] PCI: imx6: Make *_enable_ref_clk() function symmetric [PATCH v3 7/9] PCI: imx6: Use dwc common suspend resume method [PATCH v3 8/9] PCI: imx6: Add i.MX8MQ i.MX8Q and i.MX95 PCIe PM [PATCH v3 9/9] arm64: dts: imx95: Add ref clock for i.MX95 PCIe Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-common.yaml | 4 +- Documentation/devicetree/bindings/pci/fsl,imx6q-pcie-ep.yaml | 1 + Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.yaml | 25 ++++++++++-- arch/arm64/boot/dts/freescale/imx95.dtsi | 25 ++++++++++-- drivers/pci/controller/dwc/pci-imx6.c | 166 +++++++++++++++++++++++++++------------------------------------------------- 5 files changed, 104 insertions(+), 117 deletions(-)