> -----Original Message----- > From: Frank Li <frank.li@xxxxxxx> > Sent: 2024年9月25日 5:54 > To: Rob Herring <robh@xxxxxxxxxx>; Saravana Kannan > <saravanak@xxxxxxxxxx>; Jingoo Han <jingoohan1@xxxxxxxxx>; Manivannan > Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>; Lorenzo Pieralisi > <lpieralisi@xxxxxxxxxx>; Krzysztof Wilczyński <kw@xxxxxxxxx>; Bjorn Helgaas > <bhelgaas@xxxxxxxxxx>; Hongxing Zhu <hongxing.zhu@xxxxxxx>; Lucas > Stach <l.stach@xxxxxxxxxxxxxx>; Shawn Guo <shawnguo@xxxxxxxxxx>; Sascha > Hauer <s.hauer@xxxxxxxxxxxxxx>; Pengutronix Kernel Team > <kernel@xxxxxxxxxxxxxx>; Fabio Estevam <festevam@xxxxxxxxx> > Cc: devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; > linux-pci@xxxxxxxxxxxxxxx; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx; > imx@xxxxxxxxxxxxxxx; Frank Li <frank.li@xxxxxxx> > Subject: [PATCH 3/3] PCI: imx6: Remove cpu_addr_fixup() > > Remove cpu_addr_fixup() because dwc common driver already handle address > translate. handle/s/handles translate/s/translation Reviewed-by: Richard Zhu <hongxing.zhu@xxxxxxx> Best Regards Richard Zhu > > Signed-off-by: Frank Li <Frank.Li@xxxxxxx> > --- > drivers/pci/controller/dwc/pci-imx6.c | 21 +-------------------- > 1 file changed, 1 insertion(+), 20 deletions(-) > > diff --git a/drivers/pci/controller/dwc/pci-imx6.c > b/drivers/pci/controller/dwc/pci-imx6.c > index 1e58c24137e7f..76174b3a0388c 100644 > --- a/drivers/pci/controller/dwc/pci-imx6.c > +++ b/drivers/pci/controller/dwc/pci-imx6.c > @@ -82,7 +82,6 @@ enum imx_pcie_variants { > #define IMX_PCIE_FLAG_HAS_PHY_RESET BIT(5) > #define IMX_PCIE_FLAG_HAS_SERDES BIT(6) > #define IMX_PCIE_FLAG_SUPPORT_64BIT BIT(7) > -#define IMX_PCIE_FLAG_CPU_ADDR_FIXUP BIT(8) > > #define imx_check_flag(pci, val) (pci->drvdata->flags & val) > > @@ -1015,22 +1014,6 @@ static void imx_pcie_host_exit(struct dw_pcie_rp > *pp) > regulator_disable(imx_pcie->vpcie); > } > > -static u64 imx_pcie_cpu_addr_fixup(struct dw_pcie *pcie, u64 cpu_addr) -{ > - struct imx_pcie *imx_pcie = to_imx_pcie(pcie); > - struct dw_pcie_rp *pp = &pcie->pp; > - struct resource_entry *entry; > - > - if (!(imx_pcie->drvdata->flags & IMX_PCIE_FLAG_CPU_ADDR_FIXUP)) > - return cpu_addr; > - > - entry = resource_list_first_type(&pp->bridge->windows, > IORESOURCE_MEM); > - if (!entry) > - return cpu_addr; > - > - return cpu_addr - entry->offset; > -} > - > static const struct dw_pcie_host_ops imx_pcie_host_ops = { > .init = imx_pcie_host_init, > .deinit = imx_pcie_host_exit, > @@ -1039,7 +1022,6 @@ static const struct dw_pcie_host_ops > imx_pcie_host_ops = { static const struct dw_pcie_ops dw_pcie_ops = { > .start_link = imx_pcie_start_link, > .stop_link = imx_pcie_stop_link, > - .cpu_addr_fixup = imx_pcie_cpu_addr_fixup, > }; > > static void imx_pcie_ep_init(struct dw_pcie_ep *ep) @@ -1598,8 +1580,7 > @@ static const struct imx_pcie_drvdata drvdata[] = { > }, > [IMX8Q] = { > .variant = IMX8Q, > - .flags = IMX_PCIE_FLAG_HAS_PHYDRV | > - IMX_PCIE_FLAG_CPU_ADDR_FIXUP, > + .flags = IMX_PCIE_FLAG_HAS_PHYDRV, > .clk_names = imx8q_clks, > .clks_cnt = ARRAY_SIZE(imx8q_clks), > }, > > -- > 2.34.1