Re: Pcmcia GPRS cards not works in linux.

David Hinds (dhinds@sonic.net)
Sun, 15 Jun 2003 20:40:19 -0700


On Sun, Jun 15, 2003 at 10:34:56AM +0100, Russell King wrote:
>
> I suspect that the card voltage sense pins are indicating that the
> card requires 5V, but we're trying to use the 0x30 configuration.
> Since we don't allow the socket voltage to be altered, we error out
> and never try the second configuration.
>
> David, I think it would make sense to allow the PCMCIA subsystem to
> lower VCC in these circumstances, but obviously never allow it to be
> raised above the value reported by the voltage sense pins?

Changing Vcc on the fly turns out to be pretty complicated: you are
required to power down the socket, and power it up again from scratch,
which takes several seconds. In practice it is essentially never
useful since the card should always be operable at the voltage it
indicated at power-up time.

The pcmcia-cs package and the 2.4 kernel PCMCIA subsystem already do
the right thing. The 2.5 8250_cs driver had been sufficiently altered
(reindented, line breaks moved around, etc) that applying patches is
quite inconvenient and I had not gotten around to going through line
by line and figuring out what changes needed to be applied.

Probably, the best thing would be for cs.c in the kernel to do what
the pcmcia-cs package now does: just print a warning and ignore Vcc
values that don't match the power-up voltage.

The only useful case I could come up with for changing the power-up
voltage, is that some cards (compact flash I know, perhaps more) run
faster at 5V than at 3.3V, and the user might want to choose between
higher performance or better battery life.

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