summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@pollux.(none)>2005-12-16 15:14:18 +0100
committerWolfgang Denk <wd@pollux.(none)>2005-12-16 15:14:18 +0100
commita9e642e2f8c944b9c0ffb5564fda262f6d3da0a3 (patch)
treec3897528ded16e2959a10d1d0554c02e917cb889
parente43232dee85d17dff4fad7fc8ff2bc5f6b9c7a76 (diff)
MPC5200: Set PCI retry counter to 0 = infinite retry;
The default of 255 is too short for slow devices. Patch by Martin Nykodym, 12 Dec 2005
-rw-r--r--CHANGELOG4
-rw-r--r--cpu/mpc5xxx/pci_mpc5200.c6
2 files changed, 9 insertions, 1 deletions
diff --git a/CHANGELOG b/CHANGELOG
index ac3be077d1..16b7c550af 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,10 @@
Changes for U-Boot 1.1.4:
======================================================================
+* MPC5200: Set PCI retry counter to 0 = infinite retry;
+ The default of 255 is too short for slow devices.
+ Patch by Martin Nykodym, 12 Dec 2005
+
* Change port configuration for O2DNT (CODEC1 on PSC1).
* Fix register for PCI async mode on PPC440EP
diff --git a/cpu/mpc5xxx/pci_mpc5200.c b/cpu/mpc5xxx/pci_mpc5200.c
index 2cfa11ce27..1d903459e0 100644
--- a/cpu/mpc5xxx/pci_mpc5200.c
+++ b/cpu/mpc5xxx/pci_mpc5200.c
@@ -145,7 +145,11 @@ void pci_mpc5xxx_init (struct pci_controller *hose)
/* Disable interrupts from PCI controller */
*(vu_long *)MPC5XXX_PCI_GSCR &= ~(7 << 12);
- *(vu_long *)MPC5XXX_PCI_ICR &= ~(7 << 24);
+ *(vu_long *)MPC5XXX_PCI_ICR &= ~(7 << 24);
+
+ /* Set PCI retry counter to 0 = infinite retry. */
+ /* The default of 255 is too short for slow devices. */
+ *(vu_long *)MPC5XXX_PCI_ICR &= 0xFFFFFF00;
/* Disable initiator windows */
*(vu_long *)MPC5XXX_PCI_IWCR = 0;