Fix IDE stability problems on CPC45 board.
authorwdenk <wdenk>
Sat, 22 Jan 2005 18:26:04 +0000 (18:26 +0000)
committerwdenk <wdenk>
Sat, 22 Jan 2005 18:26:04 +0000 (18:26 +0000)
CHANGELOG
common/cmd_ide.c
include/pcmcia/cirrus.h

index 6194f5c..825a1cd 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -2,6 +2,8 @@
 Changes for U-Boot 1.1.3:
 ======================================================================
 
+* Fix IDE stability problems on CPC45 board (needs 2 x EIEIO).
+
 * Code cleanup
 
 * Patch by Robin Getz, 13 Oct 2004:
index 851ba52..b8e0bef 100644 (file)
@@ -958,12 +958,16 @@ input_data(int dev, ulong *sect_buf, int words)
        dbuf = (uchar *)sect_buf;
        while (words--) {
                EIEIO;
+               EIEIO;
                *dbuf++ = *pbuf_even;
                EIEIO;
+               EIEIO;
                *dbuf++ = *pbuf_odd;
                EIEIO;
+               EIEIO;
                *dbuf++ = *pbuf_even;
                EIEIO;
+               EIEIO;
                *dbuf++ = *pbuf_odd;
        }
 #endif /* CONFIG_HMI10 */
index f53b85a..cd34dd8 100644 (file)
@@ -166,9 +166,15 @@ static int has_led = -1;
 static int has_ring = -1;
 static int dynamic_mode = 0;
 static int freq_bypass = -1;
+#ifdef CONFIG_CPC45
+static int setup_time = 2;
+static int cmd_time = 6;
+static int recov_time = 1;
+#else
 static int setup_time = -1;
 static int cmd_time = -1;
 static int recov_time = -1;
+#endif
 
 
 #endif /* _LINUX_CIRRUS_H */