[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1757298848-15154-3-git-send-email-nobuhiro.iwamatsu.x90@mail.toshiba>
Date: Mon, 8 Sep 2025 11:34:08 +0900
From: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.x90@...l.toshiba>
To: Frank.Li@....com, robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
lpieralisi@...nel.org, kwilczynski@...nel.org, mani@...nel.org,
bhelgaas@...gle.com
Cc: linux-arm-kernel@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-pci@...r.kernel.org,
yuji2.ishikawa@...hiba.co.jp,
Nobuhiro Iwamatsu <nobuhiro.iwamatsu.x90@...l.toshiba>
Subject: [PATCH v3 2/2] PCI: dwc: visconti: Remove cpu_addr_fix() after DTS fix ranges
From: Frank Li <Frank.Li@....com>
Remove cpu_addr_fix() since it is no longer needed. The PCIe ranges
property has been corrected in the DTS, and the DesignWare common code now
handles address translation properly without requiring this workaround.
Signed-off-by: Frank Li <Frank.Li@....com>
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.x90@...l.toshiba>
---
v3:
Add pci->use_parent_dt_ranges fixes.
Update Signed-off-by address, because my company email address haschanged.
v2:
No Update.
---
drivers/pci/controller/dwc/pcie-visconti.c | 15 ++-------------
1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/drivers/pci/controller/dwc/pcie-visconti.c b/drivers/pci/controller/dwc/pcie-visconti.c
index cdeac6177143c..d8765e57147af 100644
--- a/drivers/pci/controller/dwc/pcie-visconti.c
+++ b/drivers/pci/controller/dwc/pcie-visconti.c
@@ -171,20 +171,7 @@ static void visconti_pcie_stop_link(struct dw_pcie *pci)
visconti_mpu_writel(pcie, val | MPU_MP_EN_DISABLE, PCIE_MPU_REG_MP_EN);
}
-/*
- * In this SoC specification, the CPU bus outputs the offset value from
- * 0x40000000 to the PCIe bus, so 0x40000000 is subtracted from the CPU
- * bus address. This 0x40000000 is also based on io_base from DT.
- */
-static u64 visconti_pcie_cpu_addr_fixup(struct dw_pcie *pci, u64 cpu_addr)
-{
- struct dw_pcie_rp *pp = &pci->pp;
-
- return cpu_addr & ~pp->io_base;
-}
-
static const struct dw_pcie_ops dw_pcie_ops = {
- .cpu_addr_fixup = visconti_pcie_cpu_addr_fixup,
.link_up = visconti_pcie_link_up,
.start_link = visconti_pcie_start_link,
.stop_link = visconti_pcie_stop_link,
@@ -310,6 +297,8 @@ static int visconti_pcie_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, pcie);
+ pci->use_parent_dt_ranges = true;
+
return visconti_add_pcie_port(pcie, pdev);
}
--
2.51.0
Powered by blists - more mailing lists