Fixed 8mp EP mode problem. imx6 actaully for all imx chips (imx6*, imx7*, imx8*, imx9*). To avoid confuse, rename all imx6_* to imx_*, IMX6_* to IMX_*. pci-imx6.c to pci-imx.c to avoid confuse. Using callback to reduce switch case for core reset and refclk. Add imx95 iommux and its stream id information. Base on linux-pci/controller/imx To: Richard Zhu <hongxing.zhu@xxxxxxx> To: Lucas Stach <l.stach@xxxxxxxxxxxxxx> To: Lorenzo Pieralisi <lpieralisi@xxxxxxxxxx> To: Krzysztof Wilczyński <kw@xxxxxxxxx> To: Rob Herring <robh@xxxxxxxxxx> To: Bjorn Helgaas <bhelgaas@xxxxxxxxxx> To: Shawn Guo <shawnguo@xxxxxxxxxx> To: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> To: Pengutronix Kernel Team <kernel@xxxxxxxxxxxxxx> To: Fabio Estevam <festevam@xxxxxxxxx> To: NXP Linux Team <linux-imx@xxxxxxx> To: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> To: Liam Girdwood <lgirdwood@xxxxxxxxx> To: Mark Brown <broonie@xxxxxxxxxx> To: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx> To: Conor Dooley <conor+dt@xxxxxxxxxx> Cc: linux-pci@xxxxxxxxxxxxxxx Cc: imx@xxxxxxxxxxxxxxx Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: bpf@xxxxxxxxxxxxxxx Cc: devicetree@xxxxxxxxxxxxxxx Signed-off-by: Frank Li <Frank.Li@xxxxxxx> Changes in v3: - Add an EP fixed patch PCI: imx6: Fix PCIe link down when i.MX8MM and i.MX8MP PCIe is EP mode PCI: imx6: Fix i.MX8MP PCIe EP can not trigger MSI - Add 8qxp rc support dt-bing yaml pass binding check make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j8 dt_binding_check DT_SCHEMA_FILES=fsl,imx6q-pcie.yaml LINT Documentation/devicetree/bindings DTEX Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dts CHKDT Documentation/devicetree/bindings/processed-schema.json SCHEMA Documentation/devicetree/bindings/processed-schema.json DTC_CHK Documentation/devicetree/bindings/pci/fsl,imx6q-pcie.example.dtb - Link to v2: https://lore.kernel.org/r/20240304-pci2_upstream-v2-0-ad07c5eb6d67@xxxxxxx Changes in v2: - remove file to 'pcie-imx.c' - keep CONFIG unchange. - Link to v1: https://lore.kernel.org/r/20240227-pci2_upstream-v1-0-b952f8333606@xxxxxxx --- Frank Li (7): PCI: imx6: Rename imx6_* with imx_* PCI: imx6: Rename pci-imx6.c to pcie-imx.c MAINTAINERS: pci: imx: update imx6* to imx* since rename driver file PCI: imx: Simplify switch-case logic by involve set_ref_clk callback PCI: imx: Simplify switch-case logic by involve core_reset callback PCI: imx: Config look up table(LUT) to support MSI ITS and IOMMU for i.MX95 PCI: imx: Consolidate redundant if-checks Richard Zhu (4): PCI: imx6: Fix PCIe link down when i.MX8MM and i.MX8MP PCIe is EP mode PCI: imx6: Fix i.MX8MP PCIe EP can not trigger MSI dt-bindings: imx6q-pcie: Add i.MX8Q pcie compatible string PCI: imx6: Add i.MX8Q PCIe support .../bindings/pci/fsl,imx6q-pcie-common.yaml | 5 + .../devicetree/bindings/pci/fsl,imx6q-pcie.yaml | 18 + MAINTAINERS | 4 +- drivers/pci/controller/dwc/Makefile | 2 +- .../pci/controller/dwc/{pci-imx6.c => pcie-imx.c} | 1173 ++++++++++++-------- 5 files changed, 727 insertions(+), 475 deletions(-) --- base-commit: 2e45e73eebd43365cb585c49b3a671dcfae6b5b5 change-id: 20240227-pci2_upstream-0cdd19a15163 Best regards, --- Frank Li <Frank.Li@xxxxxxx>