[U-Boot] [PATCH] ppc4xx: Fix bug in PCI outbound map configuration for canyonlands

PCI outbound address map configuration doesn't match the PCI memory address range covered by appropriate TLB entry configuration for canyonlands causing machine check exceptions while accessing PCI memory regions. This patch provides a fix for this issue.
Kazuaki Ichinohe observed and reported this issue while testing display output with PCI ATI video card on canyonlands.
Signed-off-by: Anatolij Gustschin agust@denx.de --- cpu/ppc4xx/4xx_pci.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/cpu/ppc4xx/4xx_pci.c b/cpu/ppc4xx/4xx_pci.c index 6fd36de..99b8e2f 100644 --- a/cpu/ppc4xx/4xx_pci.c +++ b/cpu/ppc4xx/4xx_pci.c @@ -550,10 +550,12 @@ int pci_440_init (struct pci_controller *hose) out32r( PCIX0_POM0SA, 0 ); /* disable */ out32r( PCIX0_POM1SA, 0 ); /* disable */ out32r( PCIX0_POM2SA, 0 ); /* disable */ -#if defined(CONFIG_440SPE) || \ - defined(CONFIG_460EX) || defined(CONFIG_460GT) +#if defined(CONFIG_440SPE) out32r( PCIX0_POM0LAL, 0x10000000 ); out32r( PCIX0_POM0LAH, 0x0000000c ); +#elif defined(CONFIG_460EX) || defined(CONFIG_460GT) + out32r( PCIX0_POM0LAL, 0x20000000 ); + out32r( PCIX0_POM0LAH, 0x0000000c ); #else out32r( PCIX0_POM0LAL, 0x00000000 ); out32r( PCIX0_POM0LAH, 0x00000003 );

On Friday 20 March 2009, Anatolij Gustschin wrote:
PCI outbound address map configuration doesn't match the PCI memory address range covered by appropriate TLB entry configuration for canyonlands causing machine check exceptions while accessing PCI memory regions. This patch provides a fix for this issue.
Kazuaki Ichinohe observed and reported this issue while testing display output with PCI ATI video card on canyonlands.
Signed-off-by: Anatolij Gustschin agust@denx.de
Acked-by: Stefan Roese sr@denx.de
Thanks Anatolij for all your work on this. Really appreciated. I'll add this to the 4xx repo and send a pull request to Wolfgang so that this fix can go into 2009-03.
Best regards, Stefan
===================================================================== DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: +49-8142-66989-0 Fax: +49-8142-66989-80 Email: office@denx.de =====================================================================
participants (2)
-
Anatolij Gustschin
-
Stefan Roese