Subject: Re: Help : Can't see Floppy

From: [email-masked] (Matthew Wilcox)
Date: Mon, 16 Nov 1998 10:19:59 +0100 (CET)

On Sun, Nov 15, 1998 at 10:16:57PM +0000, Chris Pringle wrote:
> I have a RiscPC. It has a 200MHz StrongARM, 64MB RAM, 2MB VRAM, 1 Floppy
drive,
> 1 4.3GB IDE Hard drive, 1 8x IDE CDROM drive + other SCSI bits. When I try to
> boot linux the kernel gets as far as asking for a root floppy. So I inserted a
> floppy, pressed enter and nothing happened, the floppy light didn't even
> flash. After about 1 min, it gave me an IO error. I have tried 3 differrent
> kernels with no change. Any ideas? All help is appreciated. Thanks in
> advance.

ooh, I remember this one!  Some RiscPCs were shipped with the floppy
connector in the wrong slot.  RISC OS just calls the first floppy drive
:0 so you never notice, but to linux, it's /dev/fd1.  Simple solution,
move your floppy disc to the other connector.

--
Matthew Wilcox <[email-masked]>
"I decry the current tendency to seek patents on algorithms.  There are
better ways to earn a living than to prevent other people from making use of
one's contributions to computer science."  -- Donald E. Knuth, TAoCP vol 3
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: Phil Norman <[email-masked]>
Date: Mon, 16 Nov 1998 13:29:08 +0000

In message <[email-masked]>
          [email-masked] (Matthew Wilcox) wrote:

> > drive, 1 4.3GB IDE Hard drive, 1 8x IDE CDROM drive + other SCSI bits.
> > When I try to boot linux the kernel gets as far as asking for a root
> > floppy. So I inserted a floppy, pressed enter and nothing happened, the
> > floppy light didn't even flash. After about 1 min, it gave me an IO
> > error. I have tried 3 differrent kernels with no change. Any ideas? All
> > help is appreciated. Thanks in advance.
> 

There's only one floppy drive slot.  In fact, the RiscPC is built such that
it is impossible to have more than one floppy drive in the system (something
to do with a certain wire not being connected up IIRC).  I think the problem
you're referring to is that some RiscPCs were shipped with a little switch at
the back of the floppy drive in the wrong position.  Flip it across, and
everything should work.

Cheers,
Phil

---

From: Chris Pringle <[email-masked]>
Date: Mon, 16 Nov 1998 22:07:13 +0000 (GMT)

> move your floppy disc to the other connector.
There is only one connector that I can see. Where is the other connector?
This machine used to be a RiscPC600 before the StrongARM upgrade.

Regards,
---
Chris Pringle,
22 St. Marys Drive, Fairford,Glos. GL7 4LQ
P.S. Check out my website at :
http://www.latrigg.demon.co.uk/Chris/Main/index.html

---

From: James Craig <[email-masked]>
Date: Tue, 17 Nov 1998 00:04:44 +0000 (GMT)

> the back of the floppy drive in the wrong position.  Flip it across, and

Interesting. That lttle switch is the floppy drive ID selector - it lets
you pick basically the equivalent of which slot the drive is plugged into
- and if it has any effect then it means the aforementioned select line
actually must be wired up after all, since if it weren't, you wouldn't
notice which position it was in.

I wonder just how much truth there is in the RPC not being able to support
more than one floppy drive - maybe it's just line-levels and stuff that
actually prevents it.

--
James Craig <[email-masked]>
            <[email-masked]>

---

From: James Craig <[email-masked]>
Date: Tue, 17 Nov 1998 00:04:44 +0000 (GMT)

---

From: Philip Blundell <[email-masked]>
Date: Tue, 17 Nov 1998 11:09:35 +0100

>notice which position it was in.

No, that's not how these interfaces work.  There is a select line on the 
floppy connector for each of the (usually 2 or 4) drives that are supported.  
The switch or jumper on the drive controls which of these lines it looks at to 
determine if it's being selected.  If you configure the drive as unit 1 and 
the DS1 line isn't wired, it will never be selected.

Incidentally, if this *is* the problem then the floppy wouldn't work under 
RISC OS either, unlike the similar situation that happened with the A5000.

>From what I gather it was only early RiscPCs that were affected by this and 
the problem was exactly that only DS0 was brought out from the super-IO chip 
to the connector.

p.

---

From: Peter Bell <[email-masked]>
Date: Tue, 17 Nov 1998 13:55:08 +0000

In message <[email-masked]>

> more than one floppy drive - maybe it's just line-levels and stuff that

It depends on which issue of the mother board you have.

Issue 1 boards didn't have the DS1 line connected.
On my Iss.1 I ran a wire from the FDC chip to the cable header, plus
another link for the motor-on signal. It was then able to support 2
drives.

Issue 2 and 3 boards do have the DS1 line connected.
On my Iss.2  I just plugged a second drive in without any probs.

-- 
-------------------------------------------------------------------
Peter Bell - [email-masked] - FourSquare Computing Ltd
5 Drome Path, Winnersh, Wokingham, Berkshire  RG41 5HB, UK.
Tel. +44 (0) 118 989 0982   Fax. +44 (0) 118 979 4639
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: James Craig <[email-masked]>
Date: Tue, 17 Nov 1998 13:56:06 +0000 (GMT)

> the DS1 line isn't wired, it will never be selected.
Oddly enough, I've built enough floppy intergaces to know how they work.
:)

Anyway, the drive select lines (of which there are 4, although usually
only 2 are wired up) need to match the setting of the jumper on the drive
to enable the drive. The A5000's two floppy connectors just have the first
two floppy select lines crossed over - i.e. on the 2nd connector, a drive
wired for drive 0 will appear to be drive 1 to the computer and vice
versa. My point was that RISC OS must be being smart if the drive works in
RISC OS and not in linux, autodetecting that it's drive 1 not 0, and the
RPC must have both select lines mechanically wired up to actually do that.
If it doesn't work in RISC OS, of course, then that whole lot is complete
nonsense and you can ignore me. ;)

---

From: Russell King - ARM Linux Admin <[email-masked]>
Date: Wed, 18 Nov 1998 00:15:19 +0000 (GMT)

James Craig writes:
> The A5000's two floppy connectors just have the first
> versa.

You /sure/ about this?  I've had a total of 4 drives on the A5k before now,
all of them recognised by RISC OS.

> My point was that RISC OS must be being smart if the drive works in

RISC OS always scans the floppy drives in the physical order - :0 :1 :2 :3.
It then allocates the drives a logical number in the order that it finds
them.  ie, if you have one floppy drive attached as physical drive :3,
then RISC OS at boot will scan :0, :1, :2, then find the drive on :3
and you'll still see it as :0.
   _____
  |_____| ------------------------------------------------- ---+---+-
  |   |        Russell King       [email-masked]      --- ---
  | | | |  http://www.arm.linux.org.uk/~rmk/armlinux.html    /  /  |
  | +-+-+                                                     --- -+-
  /   |               THE developer of ARM Linux              |+| /|\
 /  | | |                                                     ---  |
    +-+-+ -------------------------------------------------  /\\\  |
unsubscribe: body of `unsubscribe linux-arm' to [email-masked]

---

From: James Craig <[email-masked]>
Date: Wed, 18 Nov 1998 09:45:15 +0000 (GMT)

> all of them recognised by RISC OS.
I didn't say what happened to the select lines 2 and 3, which are still
there. :)
I've had 4 drives on my A3000 too. It's not hard to get it to work. I'll
concede, the two A5000 connectors might have something silly like the
first connector has select lines 0 and 1 swapped over with 2 and 3
instead of just 0 and 1 being swapped - but that's trivial to check for if
you've got an A5000 sitting on the bench in front of you. :)
I actually do have one sitting at home, so I guess I could have a play
with it tonight.
> and you'll still see it as :0.
Yep, but this is only true on A5000's and up. On A300/A400/A3000s, it uses
the physical numbers full stop. I know this because I used to use my A3000
with 4 floppy drives attached all the time, and no hard drive.
Anyway, what I'm getting at is that if the drive works in RISC OS, then
either:
a) The RPC has both floppy drive select lines wired up and autodetects
which ID the drive is actually set to,
or b) The drive is already wired to ID 0 and there's something damned odd
going on to stop it working in linux. :)