Re: 2.3 wish: integrate pcmcia into mainstream kernel

Linus Torvalds (torvalds@transmeta.com)
Wed, 2 Jun 1999 13:24:20 -0700 (PDT)


On Wed, 2 Jun 1999, David Hinds wrote:
> On Wed, Jun 02, 1999 at 11:14:31AM -0700, Linus Torvalds wrote:
> >
> > David, have you ever tried to install Linux on a laptop that has the
> > external CD-ROM behind a CardBus slot?
> >
> > I'll give you a hint: it's possible, but not for a average user that just
> > inserts the CD and hopes to install it. It _can_ be made to work, but it's
> > painful as hell, compared to just having support for it directly.
>
> This will usually not work, but not for the reason you're suggesting.
>
> The only CardBus SCSI card that has any support at all is the Adaptec
> APA1480A, which uses the stock kernel aic7xxx driver.

Umm..

The most common case by far is the case of a external IDE CD-ROM.

Note how I didn't mention SCSI _anywhere_.

An external IDE CD-ROM should be _trivial_. In fact, you can even force
the standard IDE driver to see it directly by telling it to hardcode the
port numbers. But then you're screwed when you enable PCMCIA support,
because now the cardbus deamon is going to be unhappy. And if you unplug
the card, the ide driver is going to be unhappy.

In short, it's a mess. And it should NOT be. We have the technology, if it
weren't for the fact that our cardbus support sucks and needs user space
(which we won't have until after we've mounted the CD - so right now
you're kind of in a catch-22 situation).

See?

> I think you would find that installing any OS from a CardBus SCSI
> CD-ROM would be a very hit-or-miss procedure.

Installing from a IDE CDROM is very reliable. But you have to know the
magic incantations for it to work:

- when you install, right now you have to give the bootup kernel a kernel
command line to force it to use the cardbus IDE card (using the
standard IDE driver). You have to basically know where the card is
hiding. BAD.

- you must copy over the PCMCIA RPM (or whatever), but you must NOT
install it and activate it, because if you do, your machine is going to
hang due to conflicts between the PCMCIA stuff and the hardcoded IDE
driver.

- the second time you reboot, you do _not_ give the magic kernel command
line, so now the IDE driver won't see the second IDE controller behind
the cardbus bridge. Instead, now you install and enable the PCMCIA
utilities, and see the CD-ROM that way (and this requires that you
copied over all the required files the previous time, because you can't
see the CD before you have this all installed)

Do you see? Even _I_ had trouble installing Linux, and I hung my machine
about three times just because a standard install got confused.

If I have trouble installing Linux, something is wrong. Very wrong.

And none of these problems would have happened if cardbus support had just
been part of the standard kernel.

> Most of the installation problems I hear about boil down to CardBus
> bridge configuration issues, particularly interrupt routing problems,
> or less often, IO and memory resource issues. These account for >90%
> of the problem reports I get about installation. The only client
> driver bug reports I recall in recent months were for the 3c574_cs
> driver, which was broken for ages due to lack of info from 3Com.

Umm.. I bet you never get reports from the clueless people for whom Linux
just did not work at all.

> Maybe you just picked a bad example, but you're completely wrong about
> this.

David. Trust me. I didn't pick a bad example. I _did_ this myself. And I
was cursing at you at one point.

Linus

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