Floppy disk working constantly
Hi,
I am testing the 2.6.0-test6 and I noticed that my floppy driver is working constantly.
More details:
I have compiled the floppy driver as a module:CONFIG_BLK_DEV_FD=m
I noticed that the floppy drive was constantly on and when a disk was in it was acting as it was reading (but no request to do so was sent).
Then I noticed that the module was not loaded, so I did a "modprobe floppy" and instantly the floppy driver shot down and act normally...
I guess that this problem has been already reported, but I didn't manage to find it in the mailing-list archive, so I am submitting it in doubt.
Here is my lspci:
00:00.0 Host bridge: Intel Corp. 82845 845 (Brookdale) Chipset Host Bridge (rev 04)
00:01.0 PCI bridge: Intel Corp. 82845 845 (Brookdale) Chipset AGP Bridge (rev 04)
00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB PCI Bridge (rev 05) 00:1f.0 ISA bridge: Intel Corp. 82801BA ISA Bridge (LPC) (rev 05) 00:1f.1 IDE interface: Intel Corp. 82801BA IDE U100 (rev 05) 00:1f.2 USB Controller: Intel Corp. 82801BA/BAM USB (Hub #1) (rev 05) 00:1f.3 SMBus: Intel Corp. 82801BA/BAM SMBus (rev 05) 00:1f.4 USB Controller: Intel Corp. 82801BA/BAM USB (Hub #2) (rev 05) 01:00.0 VGA compatible controller: ATI Technologies Inc Radeon RV200 QW [Radeon 7500]
02:03.0 Multimedia audio controller: C-Media Electronics Inc CM8738 (rev
10)
02:04.0 USB Controller: NEC Corporation USB (rev 41)
02:04.1 USB Controller: NEC Corporation USB (rev 41)
02:04.2 USB Controller: NEC Corporation USB 2.0 (rev 02) 02:0c.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] (rev 0c)
If any more informations (or patches to test) are needed, feel free to ask.
Regards
Signature · 6 lines
Emmanuel Fleury Computer Science Department, | Office: B1-201 Aalborg University, | Phone: +45 96 35 72 23 Fredriks Bajersvej 7E, | Fax: +45 98 15 98 89 9220 Aalborg East, Denmark | Email: [email protected]
Quoted 10 lines · Emmanuel Fleury
Hi,
I am testing the 2.6.0-test6 and I noticed that my floppy driver is working constantly.
More details:
I have compiled the floppy driver as a module:
CONFIG_BLK_DEV_FD=m
Quoted 9 lines
I noticed that the floppy drive was constantly on and when a disk was in it was acting as it was reading (but no request to do so was sent).
Then I noticed that the module was not loaded, so I did a "modprobe floppy" and instantly the floppy driver shot down and act normally...
I guess that this problem has been already reported, but I didn't manage to find it in the mailing-list archive, so I am submitting it in doubt.
[SNIPPED...]
What are you using as a boot loader? This may be a problem with the boot loader not turning off the floppy drive motor before it transfers control to Linux. With no built-in floppy driver, the motor would never turn off. With quick boot hard-disks, the floppy motor may still be ON from the initial BIOS access.
Just for kicks, change the order of boot devices in your BIOS so that the floppy is never accessed during boot. This should verify the problem.
Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.
Quoted 2 lines · Richard B. Johnson
What are you using as a boot loader?
LILO.
Quoted 9 lines
This may be a problem with
the boot loader not turning off the floppy drive motor before it transfers control to Linux. With no built-in floppy driver, the motor would never turn off. With quick boot hard-disks, the floppy motor may still be ON from the initial BIOS access.Just for kicks, change the order of boot devices in your BIOS so that the floppy is never accessed during boot. This should verify the problem.
That's it !
I try several time with and without the [boot floppy] option enabled in the BIOS. Each time the [boot floppy] option was on, I got the floppy driver to spin on endlessly.
Regards
Signature · 4 lines
Emmanuel There's never enough time to do all the nothing you want. -- Calvin & Hobbes (Bill Waterson)
Re: Floppy disk working constantly [PATCH]
In reply to Emmanuel FleuryHi,
Richard B. Johnson did this patch for 2.4.22. And, I applied it and tested it on both 2.4.22 and 2.6.0-test6. It seems to work.
Please apply this patch to both 2.4.22 and 2.6.0-test6.
-----------------
arch/i386/boot/setup.S Fri Oct 3 11:50:43 2003 renamed from arch/i386/boot/setup.S.orig Fri Aug 2 20:39:42 2002 +2 -0
@@ -59,6 +59,8 @@ #define SIG1 0xAA55 #define SIG2 0x5A5A +FDC_MOTOR = 0x3f2 +FDC_MOTON = 0x10 INITSEG = DEF_INITSEG # 0x9000, we move boot here, out of the
way
SYSSEG = DEF_SYSSEG # 0x1000, system loaded at 0x10000
(65536).
SETUPSEG = DEF_SETUPSEG # 0x9020, this is the current
segment
@@ -776,6 +778,12 @@
movb $0xFB, %al # mask all irq's but
irq2 which
outb %al, $0x21 # is cascaded
+
+ movl $FDC_MOTOR, %edx # FDC motor control
+ inb %dx, %al # Get what's there
+ andb $~FDC_MOTON, %al # Reset motor bit
+ outb %al, %dx # Turn OFF motor+
# Well, that certainly wasn't fun :-(. Hopefully it works, and we don't
# need no steenking BIOS anyway (except for the initial loading :-). ------------
Regards
Signature · 7 lines
Emmanuel `Right,' said Ford, `I'm going to have a look.' He glanced round at the others. `Is no one going to say, "No you can't possibly, let me go instead"?' They all shook their heads. `Oh well.' -- Ford attempting to be heroic (Douglas Adams)