[PATCH] patch to make ide-probe mark ide-floppy devices as removable

Kevin P. Fleming (kpfleming@cox.net)
Fri, 28 Jun 2002 10:41:38 -0700


Patch has been in wide use for months, but has not (yet) been integrated
into the kernel. Patch is against 2.4.19-pre10-ac2, which has a
different version of ide-probe.c than 2.4.19-rc1.

diff -X dontdiff -urN linux/drivers/ide/ide-probe.c
linux-probe/drivers/ide/ide-probe.c
--- linux/drivers/ide/ide-probe.c Thu Jun 6 10:00:50 2002
+++ linux-probe/drivers/ide/ide-probe.c Thu Jun 6 10:37:41 2002
@@ -130,31 +130,40 @@

goto err_misc;
}
#endif /* CONFIG_BLK_DEV_PDC4030 */
+
/*
+
* Handle drive type overrides for "unusual" devices
+
*/
switch (type) {
-
case ide_floppy:
-
if (!strstr(id->model, "CD-ROM")) {
-
if (!strstr(id->model, "oppy") &&
-
!strstr(id->model, "poyp") &&
-
!strstr(id->model, "ZIP"))
-
printk("cdrom or floppy?, assuming ");
-
if (drive->media != ide_cdrom) {
-
printk ("FLOPPY");
-
break;
-
}
-
}
+
case ide_floppy:
+
if (strstr(id->model, "CD-ROM")) {
+
type = ide_cdrom;
+
break;
+
}
+
if (!strstr(id->model, "oppy") &&
+
!strstr(id->model, "poyp") &&
+
!strstr(id->model, "ZIP"))
+
printk("cdrom or floppy?, assuming ");
+
if (drive->media == ide_cdrom)

type = ide_cdrom; /* Early cdrom models used zero */
-
case ide_cdrom:
-
drive->removable = 1;
+
break;
#ifdef CONFIG_PPC
+
case ide_cdrom:

/* kludge for Apple PowerBook internal zip */
-
if (!strstr(id->model, "CD-ROM") &&
-
strstr(id->model, "ZIP")) {
-
printk ("FLOPPY");
-
type = ide_floppy;
-
break;
-
}
+
if (!strstr(id->model, "CD-ROM") &&
+
strstr(id->model, "ZIP")) {
+
type = ide_floppy;
+
break;
+
}
#endif
+
}
+
switch (type) {
+
case ide_floppy:
+
printk ("FLOPPY");
+
drive->removable = 1;
+
break;
+
case ide_cdrom:

printk ("CD/DVD-ROM");
+
drive->removable = 1;

break;

case ide_tape:

printk ("TAPE");

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/