Bug 57253 - Floppy not working with ASUS P4T-E motherboard
Floppy not working with ASUS P4T-E motherboard
Status: CLOSED DUPLICATE of bug 60887
Product: Red Hat Linux
Classification: Retired
Component: kernel (Show other bugs)
7.2
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: Arjan van de Ven
Brock Organ
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2001-12-07 17:14 EST by Per Thomas Jahr
Modified: 2007-04-18 12:38 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2002-08-23 23:35:06 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Per Thomas Jahr 2001-12-07 17:14:04 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.2.1) Gecko/20010901

Description of problem:
he floppy is not working with the default installation. During boot I get
this message: 

Floppy drive(s): fd0 is 1.44M
floppy0: no floppy controllers found


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1.reboot

	

Actual Results:  From /var/log/messages 

Floppy drive(s): fd0 is 1.44M
floppy0: no floppy controllers found

Expected Results:  Floppy OK ??

Additional info:

I can use the floppy from Windows so the floppy disc controller should be OK. 

mount result:
# mount -t msdos /dev/fd0 /mnt/floppy/
mount: /dev/fd0 is not a valid block device

From dmesg:
....
ide1 at 0x170-0x177,0x376 on irq 15
hda: 120103200 sectors (61493 MB) w/1916KiB Cache, CHS=7476/255/63
Partition check:
 hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 >
Floppy drive(s): fd0 is 1.44M
floppy0: no floppy controllers found
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
....

My hardware: ASUS P4T-E motherboard (revision 1004), sokcet 478, Intel 850
chipset, Pentium 4.
Other hardware: Matrox G450-eTV (marvel), IBM HDD, 512 MB

I've also tried the 2.4.16 kernel with the same result. The bug is also
posted to the comp.os.linux.hardware newsgroup(6. dec).
Comment 1 Jean Berthomieu 2001-12-13 05:32:33 EST
This info may be of some help:
--- begin of quote ---
From: Mikael Pettersson (mikpe@csd.uu.se)
Date: Sat Oct 27 2001 - 09:10:59 EST 

The patch below fixes an incompatibility in arch/i386/boot/bootsect.S, 
which kills Linux' floppy driver on some recent motherboards (e.g. my 
new ASUS P4T-E Pentium4/I850/S478 mb). 


After reading the kernel image, bootsect.S calls kill_motor to stop 
the floppy drive, which it does by poking port 0x3f2. On the P4T-E, 
this locks up the FDC, casing drivers/block/floppy to report: 


Floppy drive(s): fd0 is 1.44M 
// long delay here 
floppy0: no floppy controllers found 


drivers/block/floppy.c:reset_fdc() knows about different vintages of 
FDCs, and uses a different method for non-antique FDCs (poking port 
0x3f4 instead). If I use that method in bootsect.S, then the FDC doesn't 
hang and the floppy driver can identify and use it properly. 


However, instead of poking an I/O port there is a BIOS call to reset 
the FDC: bootsect.S itself uses that call further up, so my patch simply 
replaces the broken I/O port poke with that BIOS call. Tested on a 
number of different boxes here, with no breakage observed. 


/Mikael 


--- linux-2.4.13-ac2/arch/i386/boot/bootsect.S.~1~ Sun Sep 23 21:06:30 2001 
+++ linux-2.4.13-ac2/arch/i386/boot/bootsect.S Sat Oct 27 13:35:13 2001 
@@ -395,9 +395,15 @@ 
 # NOTE: Doesn't save %ax or %dx; do it yourself if you need to. 
  
 kill_motor: 
+#if 1 
+ xorw %ax, %ax # reset FDC 
+ xorb %dl, %dl 
+ int $0x13 
+#else 
         movw $0x3f2, %dx 
         xorb %al, %al 
         outb %al, %dx 
+#endif 
         ret 
  
 sectors: .word 0 
- 
--- end of quote ---
Comment 2 Jean Berthomieu 2001-12-16 06:44:46 EST
P4T-F just shows the same problem... Maybe it has to do with i850 chipset?
Now, there are some frequent changes in BIOS versions at the ASUS German 
site, one or other will fix it?
Comment 3 Need Real Name 2002-01-18 14:35:57 EST
One way that might solve the problem is to download kernel source, then say:
cd /usr/src/linux-2.4; 
make xconfig
click on option ATA/IDE/MFM/RLL support
click on option IDE,ATA, and ATAPE block devices
change user multi-mode by default to "n"
The recompile the kernel and it seems to work for me.
Comment 4 Need Real Name 2002-01-18 17:00:07 EST
The above solution needs and addendum.

Once in make xconfig -- one should load the configuration for
the kerel that is in there now as a starting point.  I think for my
machine this was /usr/src/linux-2.4/configs/kernel-2.4.7-686.config
Comment 5 Ralph Campbell 2002-01-28 17:38:01 EST
I tried both workarounds but neither worked for me. I'm using grub
as the boot loader. Do I need a fix to grub as well?
BTW, I am sure I am booting the new kernel.
Comment 6 Need Real Name 2002-02-04 16:55:44 EST
I was also unsuccessful using the above approaches.

But I have been able to solve this problem on my system by building the floppy
support as a loadable module rather than compiled into the kernel.
Comment 7 Per Thomas Jahr 2002-02-12 14:01:53 EST
No it finally works for me too! Having the floppy support as an module solved the problem. 

I've 
changes the state of this bug to WORKSFORME but the floppy should work without having it as a 
module.


Comment 8 Jean Berthomieu 2002-02-13 19:48:32 EST
I don't agree this bug be closed, since there is no reliable fix endorsed by 
RH, to fix it.
Lots of people use P4T-E or P4T-F (maybe others) with straight RH kernel, 
either because they dare not recompile such a vital part of their system, or 
because they bought support that will not allow them to do so.

Sure, floppy usage is not as usual as it was 20 years ago, anyway it's often 
used (e.g. by students), and on such systems nobody can use "mkbootdisk" 
anymore.

So I wish this bug stay open until RH provides a fix as part of a new kernel 
release or in "rawhide".
Comment 9 Need Real Name 2002-02-25 00:20:54 EST
The fix above is no good for a new install which requires drivers. We have 2 
MB's with rev 1005 bios which have the same fault. We have installed a standard 
copy of RH on a single IDE drive which works fine. 

We are setting up a Adaptec 2400A raid controller which requires a drive disk.
 
This is also complicated becasue there is a bug in RedHat 7.2 and the Adaptec 
2400 in the  I2O Controller which Redhat released.(Patch available from 
http://people.redhat.com/tcallawa/dpt/)
Comment 10 Mike MacCana 2002-08-23 23:18:02 EDT
This bug hasn't been solved, perja@ifi.uio.no has only closed the bug because   
he (personally) found a workaround involving a custom kernel with floppy 
support compiled in as a module.   
  
The bug has been reopened so Red Hat can verify it, QA it, and come up with a  
fix if necessary.
Comment 11 Mike MacCana 2002-08-23 23:18:37 EDT
This bug hasn't been solved, perja@ifi.uio.no has only closed the bug because   
he (personally) found a workaround involving a custom kernel with floppy 
support compiled in as a module.   
  
The bug has been reopened so Red Hat can verify it, QA it, and come up with a  
fix if necessary.
Comment 12 Mike A. Harris 2002-08-23 23:57:59 EDT
Reopened bug as it is still an issue, but closing as a dupe of
already open issue, so people finding this bug can redirect
themselves to the master bug.

*** This bug has been marked as a duplicate of 60887 ***

Note You need to log in before you can comment on or make changes to this bug.