Re: Prerelease kernel will not hotplug a USB host-controller when it is inserted into a Cardbus slot.

Miles Lane (miles@megapathdsl.net)
Wed, 03 Jan 2001 21:49:08 -0800


David Brownell wrote:

<snip>

> The root cause seems to be the Cardbus/PCI hotplug invocation not
> happening for you.

Yep.

> Was this with or without the "pcmcia_cs" package installed? My
> own take on it is that 2.4 _should_ hotplug that controller
> just fine if "pcmcia_cs" isn't installed. Otherwise, I'd be
> pleasantly surprised to know it works properly.

You are more or less correct. I've looked a little bit at
the source and now understand a little bit better. It turns
out that parts of the Cardbus code in the kernel source
includes code from the pcmcia_cs package. The "cs:" messages
in the log are generated by this code. I *think* this code
reads configuration files from /etc/pcmcia, but I haven't
found the place in the code that does it. Anyhow, these
messages:

cs: IO port probe 0x0c00-0x0cff: clean.
cs: IO port probe 0x0800-0x08ff: clean.
cs: IO port probe 0x0100-0x04ff: excluding 0x280-0x28f 0x378-0x37f
0x3a0-0x3a7 0x4d0-0x4d7
cs: IO port probe 0x0a00-0x0aff: clean.

change when I modify /etc/pcmcia/config.opts.
The /etc/pcmcia/config* files get installed by the pcmcia_cs
package, so even when I am only using the cardbus functionality,
there seems to be some need to pcmcia_cs, since the config.opts
file contains "magic" good defaults numbers for safe irqs, ports
and memory ranges.

As I have already discussed with David Brownell, there is huge a
problem getting a usable cardbus solution with the current pcmcia_cs
package. Even when I tell it I am using a 2.4.0 kernel and that
I want to use the development kernel's drivers, it maps loads of
device IDs to the pcmcia_cs drivers which don't exist in this
configuration! For example, it maps the 3c575 device ID to
3c575_cb instead of 3c59x.

>> For the Cardbus hotplug event, is it expected that the hotplug
>> debug info would be dumped after the insert event is processed
>> and the required driver is loaded?
>
>
> No -- you were seeing the USB hotplug event, not the cardbus one.
>
> Plugging a cardbus OHCI into your machine should cause two hotplug
> events ... first for PCI, eventually modprobing "usb-ohci", and
> then as that module initializes you'll get a second one for USB,
> reporting a new (root) hub.
>
> So you should see an invocation "arguments (pci) env (...)"
> followed by "arguments (usb) env (...)"; but you reported the
> second one.

Well, I have no idea why the "arguments (pci) env (...)"
message wasn't emitted. I do know that with the test12-pre5
kernel I get working hotplug for the BusPort Mobile.

Thanks for all your help!

Miles

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