Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Jul 1998 16:02:35 -0400
From:      Brad Karp <karp@eecs.harvard.edu>
To:        freebsd-mobile@FreeBSD.ORG
Subject:   12V power for PC-Cards?
Message-ID:  <199807262002.QAA29797@dominator.eecs.harvard.edu>

next in thread | raw e-mail | index | archive | help
My Motorola PM100C CDPD modem/radio is a type II PC-Card. It works reasonably
well (i.e., as well as one can expect from CDPD) for wireless IP, with the
exception that its 9V alkaline internal battery runs out far too quickly.

Motorola supports "partial host power," which it is claimed will allow the
radio to work for a much longer period on a single battery. In this mode,
the PC-Card draws 12V from the laptop. Of course this will run down the
laptop battery much more rapidly, but for applications where the laptop has
an AC source, but no network connection, this power mode is a vast
improvement. (Note that Motorola bizarrely neglects to offer a direct
external AC power supply option for the card while it runs; they only offer
an external charger and NiCad battery for the card, which requires the
battery be removed from the card during charging. And of course, the NiCad
battery has an even lesser capacity than a standard alkaline 9V cell.)

I have learned the undocumented AT commands to make the Motorola card take
12V from the laptop to use this partial host power mode.

Using (also undocumented) status AT commands, I learned that my laptop,
an IBM 380D with a Cirrus PD672X PCIC, will not supply the Motorola with 12V
when it is inserted.

I have verified with pccardc dumpcis that the card's CIS tuples include
a request for 12V, and with pccardc rdreg that the behavior of 2.2.6 leaves
the power register for the slot in question with the 12V bit cleared.

For the moment, I work around the problem by manually using pccardc to change
the power register for the slot with the Motorola card to a value with the
12V bit turned on. This works just fine; when I query the card after hand-
tweaking this register, it reports that it is receiving 12V from the laptop.

My rather cursory reading of the pccardd and sys/pccard code gives me the
impression that apart from an unused ioctl for setting the power values for
a slot, there is no support in either 2.2-stable or 3.0-current for giving
cards 12V when they ask for it.

My question is, am I right? Has there been little demand for 12V, so that
the pccard code doesn't check for the request from the card and configure
the slot accordingly? Or am I missing the place that is meant to take care
of this in the code, and the code is simply not working on my hardware?

I would be happy to contribute code to handle 12V requests, if there is
interest.

Comments?

-Brad, karp@eecs.harvard.edu

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-mobile" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199807262002.QAA29797>