diff mbox series

[v2,20/38] pci: mpc85xx: Support controller register physical address beyond 32-bit

Message ID 1613663886-83811-21-git-send-email-bmeng.cn@gmail.com
State Superseded
Delegated to: Priyanka Jain
Headers show
Series ppc: qemu: Convert qemu-ppce500 to driver model and enable additional driver support | expand

Commit Message

Bin Meng Feb. 18, 2021, 3:57 p.m. UTC
devfdt_get_addr_index() returns fdt_addr_t which might be a 64-bit
physical address. Use map_physmem() to return the virtual address
that can be used by a 32-bit machine.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
---

(no changes since v1)

 drivers/pci/pci_mpc85xx.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Heiko Schocher Feb. 21, 2021, 7:06 a.m. UTC | #1
Hello Bin,

On 18.02.21 16:57, Bin Meng wrote:
> devfdt_get_addr_index() returns fdt_addr_t which might be a 64-bit
> physical address. Use map_physmem() to return the virtual address
> that can be used by a 32-bit machine.
> 
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> ---
> 
> (no changes since v1)
> 
>  drivers/pci/pci_mpc85xx.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)


Reviewed-by: Heiko Schocher <hs@denx.de>

bye,
Heiko
Priyanka Jain Feb. 22, 2021, 9:07 a.m. UTC | #2
>-----Original Message-----
>From: Bin Meng <bmeng.cn@gmail.com>
>Sent: Thursday, February 18, 2021 9:28 PM
>To: Simon Glass <sjg@chromium.org>; Alexander Graf <agraf@csgraf.de>;
>Priyanka Jain <priyanka.jain@nxp.com>
>Cc: U-Boot Mailing List <u-boot@lists.denx.de>; Tom Rini
><trini@konsulko.com>; Heiko Schocher <hs@denx.de>
>Subject: [PATCH v2 20/38] pci: mpc85xx: Support controller register physical
>address beyond 32-bit
>
>devfdt_get_addr_index() returns fdt_addr_t which might be a 64-bit physical
>address. Use map_physmem() to return the virtual address that can be used
>by a 32-bit machine.
>
>Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
>---
>
>(no changes since v1)
>
> drivers/pci/pci_mpc85xx.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>

Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
diff mbox series

Patch

diff --git a/drivers/pci/pci_mpc85xx.c b/drivers/pci/pci_mpc85xx.c
index 7387a1e..f0d469a 100644
--- a/drivers/pci/pci_mpc85xx.c
+++ b/drivers/pci/pci_mpc85xx.c
@@ -134,9 +134,8 @@  static int mpc85xx_pci_of_to_plat(struct udevice *dev)
 	addr = devfdt_get_addr_index(dev, 0);
 	if (addr == FDT_ADDR_T_NONE)
 		return -EINVAL;
-	priv->cfg_addr = (void __iomem *)addr;
-	addr += 4;
-	priv->cfg_data = (void __iomem *)addr;
+	priv->cfg_addr = (void __iomem *)map_physmem(addr, 0, MAP_NOCACHE);
+	priv->cfg_data = (void __iomem *)((ulong)priv->cfg_addr + 4);
 
 	return 0;
 }