All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] powerpc/pci: Fix IMMRBAR address
@ 2014-01-16  8:14 Minghuan Lian
  2014-01-17 17:06 ` Kumar Gala
  0 siblings, 1 reply; 2+ messages in thread
From: Minghuan Lian @ 2014-01-16  8:14 UTC (permalink / raw
  To: linuxppc-dev; +Cc: Scott Wood, Minghuan Lian, Zang Roy-R61911

For PEXCSRBAR, bit 3-0 indicate prefetchable and address type.
So when getting base address, these bits should be masked,
otherwise we may get incorrect base address.

Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
---
 arch/powerpc/sysdev/fsl_pci.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/powerpc/sysdev/fsl_pci.c b/arch/powerpc/sysdev/fsl_pci.c
index 4dfd61d..44eae39 100644
--- a/arch/powerpc/sysdev/fsl_pci.c
+++ b/arch/powerpc/sysdev/fsl_pci.c
@@ -868,6 +868,14 @@ u64 fsl_pci_immrbar_base(struct pci_controller *hose)
 
 		pci_bus_read_config_dword(hose->bus,
 			PCI_DEVFN(0, 0), PCI_BASE_ADDRESS_0, &base);
+
+		/*
+		 * For PEXCSRBAR, bit 3-0 indicate prefetchable and
+		 * address type. So when getting base address, these
+		 * bits should be masked
+		 */
+		base &= 0xfffffff0;
+
 		return base;
 	}
 #endif
-- 
1.8.1.2

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] powerpc/pci: Fix IMMRBAR address
  2014-01-16  8:14 [PATCH] powerpc/pci: Fix IMMRBAR address Minghuan Lian
@ 2014-01-17 17:06 ` Kumar Gala
  0 siblings, 0 replies; 2+ messages in thread
From: Kumar Gala @ 2014-01-17 17:06 UTC (permalink / raw
  To: Minghuan Lian; +Cc: Scott Wood, linuxppc-dev, Zang Roy-R61911


On Jan 16, 2014, at 2:14 AM, Minghuan Lian <Minghuan.Lian@freescale.com> =
wrote:

> For PEXCSRBAR, bit 3-0 indicate prefetchable and address type.
> So when getting base address, these bits should be masked,
> otherwise we may get incorrect base address.
>=20
> Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com>
> ---
> arch/powerpc/sysdev/fsl_pci.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>=20
> diff --git a/arch/powerpc/sysdev/fsl_pci.c =
b/arch/powerpc/sysdev/fsl_pci.c
> index 4dfd61d..44eae39 100644
> --- a/arch/powerpc/sysdev/fsl_pci.c
> +++ b/arch/powerpc/sysdev/fsl_pci.c
> @@ -868,6 +868,14 @@ u64 fsl_pci_immrbar_base(struct pci_controller =
*hose)
>=20
> 		pci_bus_read_config_dword(hose->bus,
> 			PCI_DEVFN(0, 0), PCI_BASE_ADDRESS_0, &base);
> +
> +		/*
> +		 * For PEXCSRBAR, bit 3-0 indicate prefetchable and
> +		 * address type. So when getting base address, these
> +		 * bits should be masked
> +		 */
> +		base &=3D 0xfffffff0;
> +

base & PCI_BASE_ADDRESS_MEM_MASK

> 		return base;
> 	}
> #endif
> --=20
> 1.8.1.2
>=20
>=20
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev@lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/linuxppc-dev

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2014-01-17 17:06 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-16  8:14 [PATCH] powerpc/pci: Fix IMMRBAR address Minghuan Lian
2014-01-17 17:06 ` Kumar Gala

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.