summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1994-11-29 15:46:20 +0000
committerjkh <jkh@FreeBSD.org>1994-11-29 15:46:20 +0000
commitb360c63549f36ae42b45946e378dc4b07eec3b25 (patch)
treef36f5c5b190ca98e9f8de186079fc2ef9372108d
parenta41d3aa1190512c05ef7c4d4f9671f1d0e4a9fac (diff)
downloadFreeBSD-src-b360c63549f36ae42b45946e378dc4b07eec3b25.zip
FreeBSD-src-b360c63549f36ae42b45946e378dc4b07eec3b25.tar.gz
Experimental change to floppy driver to NOT probe the floppy tape if
flags & 0x1. Somebody should build a kernel with this and see if the floppy-tape damaged people can turn it off properly with userconfig. I can't reproduce the original problem here.
-rw-r--r--sys/dev/fdc/fdc.c9
-rw-r--r--sys/i386/isa/fd.c9
-rw-r--r--sys/isa/fd.c9
3 files changed, 21 insertions, 6 deletions
diff --git a/sys/dev/fdc/fdc.c b/sys/dev/fdc/fdc.c
index 045d02e..39f14df 100644
--- a/sys/dev/fdc/fdc.c
+++ b/sys/dev/fdc/fdc.c
@@ -40,7 +40,7 @@
* SUCH DAMAGE.
*
* from: @(#)fd.c 7.4 (Berkeley) 5/25/91
- * $Id: fd.c,v 1.42 1994/11/08 06:34:04 ache Exp $
+ * $Id: fd.c,v 1.43 1994/11/18 10:18:36 phk Exp $
*
*/
@@ -50,6 +50,9 @@
#endif
#include "fd.h"
+/* Flags */
+#define FT_DONT_PROBE 0x1
+
#if NFDC > 0
#include <sys/param.h>
@@ -431,7 +434,9 @@ fdattach(dev)
#if NFT > 0
/* If BIOS says no floppy, or > 2nd device */
/* Probe for and attach a floppy tape. */
- if (ftattach(dev, fdup))
+ if (dev->id_flags & FT_DONT_PROBE)
+ printf(" [fd%d: floppy tape not probed]", fdu);
+ else if (ftattach(dev, fdup))
continue;
if (fdsu < DRVS_PER_CTLR)
fd->type = NO_TYPE;
diff --git a/sys/i386/isa/fd.c b/sys/i386/isa/fd.c
index 045d02e..39f14df 100644
--- a/sys/i386/isa/fd.c
+++ b/sys/i386/isa/fd.c
@@ -40,7 +40,7 @@
* SUCH DAMAGE.
*
* from: @(#)fd.c 7.4 (Berkeley) 5/25/91
- * $Id: fd.c,v 1.42 1994/11/08 06:34:04 ache Exp $
+ * $Id: fd.c,v 1.43 1994/11/18 10:18:36 phk Exp $
*
*/
@@ -50,6 +50,9 @@
#endif
#include "fd.h"
+/* Flags */
+#define FT_DONT_PROBE 0x1
+
#if NFDC > 0
#include <sys/param.h>
@@ -431,7 +434,9 @@ fdattach(dev)
#if NFT > 0
/* If BIOS says no floppy, or > 2nd device */
/* Probe for and attach a floppy tape. */
- if (ftattach(dev, fdup))
+ if (dev->id_flags & FT_DONT_PROBE)
+ printf(" [fd%d: floppy tape not probed]", fdu);
+ else if (ftattach(dev, fdup))
continue;
if (fdsu < DRVS_PER_CTLR)
fd->type = NO_TYPE;
diff --git a/sys/isa/fd.c b/sys/isa/fd.c
index 045d02e..39f14df 100644
--- a/sys/isa/fd.c
+++ b/sys/isa/fd.c
@@ -40,7 +40,7 @@
* SUCH DAMAGE.
*
* from: @(#)fd.c 7.4 (Berkeley) 5/25/91
- * $Id: fd.c,v 1.42 1994/11/08 06:34:04 ache Exp $
+ * $Id: fd.c,v 1.43 1994/11/18 10:18:36 phk Exp $
*
*/
@@ -50,6 +50,9 @@
#endif
#include "fd.h"
+/* Flags */
+#define FT_DONT_PROBE 0x1
+
#if NFDC > 0
#include <sys/param.h>
@@ -431,7 +434,9 @@ fdattach(dev)
#if NFT > 0
/* If BIOS says no floppy, or > 2nd device */
/* Probe for and attach a floppy tape. */
- if (ftattach(dev, fdup))
+ if (dev->id_flags & FT_DONT_PROBE)
+ printf(" [fd%d: floppy tape not probed]", fdu);
+ else if (ftattach(dev, fdup))
continue;
if (fdsu < DRVS_PER_CTLR)
fd->type = NO_TYPE;
OpenPOWER on IntegriCloud