Skip to content

Commit 5cb3aa9

Browse files
Richard Zhukwilczynski
authored andcommitted
PCI: imx6: Fix i.MX8MP PCIe EP's occasional failure to trigger MSI
Correct occasional MSI triggering failures in i.MX8MP PCIe EP by applying the correct hardware outbound alignment requirement. The i.MX platform has a restriction about outbound address translation. The pci-epc-mem uses page_size to manage it. Set the correct page_size for i.MX platform to meet the hardware requirement, which is the same as inbound address alignment. Thus, align it with epc_features::align. Fixes: 1bd0d43 ("PCI: imx6: Clean up addr_space retrieval code") Link: https://lore.kernel.org/linux-pci/[email protected] Signed-off-by: Richard Zhu <[email protected]> Signed-off-by: Frank Li <[email protected]> [kwilczynski: commit log] Signed-off-by: Krzysztof Wilczyński <[email protected]> Reviewed-by: Manivannan Sadhasivam <[email protected]> Acked-by: Jason Liu <[email protected]> Cc: <[email protected]> # 6.9+
1 parent 5214ff2 commit 5cb3aa9

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

drivers/pci/controller/dwc/pci-imx6.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1113,6 +1113,8 @@ static int imx6_add_pcie_ep(struct imx6_pcie *imx6_pcie,
11131113
if (imx6_check_flag(imx6_pcie, IMX6_PCIE_FLAG_SUPPORT_64BIT))
11141114
dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64));
11151115

1116+
ep->page_size = imx6_pcie->drvdata->epc_features->align;
1117+
11161118
ret = dw_pcie_ep_init(ep);
11171119
if (ret) {
11181120
dev_err(dev, "failed to initialize endpoint\n");

0 commit comments

Comments
 (0)