<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">
From: Alan Cox &lt;alan@redhat.com&gt;

This is a revised version of the IDE probe undecoded slave detection patch.
 It replaces the one in the -mm tree.  It contains just the probe code so
none of the other IDE stuff thats pending Bartlomiej deciding which little
bits to merge first, and stands alone.

Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
---

 25-akpm/drivers/ide/ide-probe.c |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff -puN drivers/ide/ide-probe.c~ide-probe drivers/ide/ide-probe.c
--- 25/drivers/ide/ide-probe.c~ide-probe	2004-09-06 16:50:38.386151472 -0700
+++ 25-akpm/drivers/ide/ide-probe.c	2004-09-06 16:50:38.390150864 -0700
@@ -746,13 +746,16 @@ static void probe_hwif(ide_hwif_t *hwif)
 		drive-&gt;dn = (hwif-&gt;channel ? 2 : 0) + unit;
 		(void) probe_for_drive(drive);
 		if (drive-&gt;present &amp;&amp; hwif-&gt;present &amp;&amp; unit == 1) {
-			if (strcmp(hwif-&gt;drives[0].id-&gt;model, drive-&gt;id-&gt;model) == 0 &amp;&amp;
-			    /* Don't do this for noprobe or non ATA */
-			    strcmp(drive-&gt;id-&gt;model, "UNKNOWN") &amp;&amp;
-			    /* And beware of confused Maxtor drives that go "M0000000000"
+			if(strcmp(hwif-&gt;drives[0].id-&gt;model, drive-&gt;id-&gt;model) == 0 &amp;&amp;
+			   /* Don't do this for noprobe or non ATA */
+			   strcmp(drive-&gt;id-&gt;model, "UNKNOWN") &amp;&amp;
+			   /* ITE haven't got this figured out either (see the quirk code too) */
+			   !strstr(drive-&gt;id-&gt;model, "Integrated Technology Express") &amp;&amp;
+			   /* And beware of confused Maxtor drives that go "M0000000000"
 			      "The SN# is garbage in the ID block..." [Eric] */
-			    strncmp(drive-&gt;id-&gt;serial_no, "M0000000000000000000", 20) &amp;&amp;
-			    strncmp(hwif-&gt;drives[0].id-&gt;serial_no, drive-&gt;id-&gt;serial_no, 20) == 0) {
+			   strncmp(drive-&gt;id-&gt;serial_no, "M0000000000000000000", 20) &amp;&amp;
+			   strncmp(hwif-&gt;drives[0].id-&gt;serial_no, drive-&gt;id-&gt;serial_no, 20) == 0)
+			{
 				printk(KERN_WARNING "ide-probe: ignoring undecoded slave\n");
 				drive-&gt;present = 0;
 			}
_
</pre></body></html>