PCMCIA High Memory Allocations

Under Windows 2000, our pcmcia card requests a 64K memory window in
its INF file, using the (D) modifier to allow the memory window to be
allocated in high memory. We have had success with this request
across a wide range of laptops as well as desktop PCI-to-PCMCIA
controllers; we are always granted our 64K memory window, somewhere up
in high memory, just as we expect.

However, we have found that our request is not granted on the Thinkpad
T30 laptop. This laptop uses the TI PCI-1520 controller as its PCMCIA
controller, and we are using the Win2000 drivers for the PCMCIA
controller provided by IBM on its Thinkpad support website.
What we have found is that the controller will happily grant us
requests in low memory, as long as there is sufficient space. But if
we request a window which cannot fit into low memory, it does not give
us any memory window at all. In fact, even if we specify in the INF
file that the memory window must be above 1GB, we still receive a
memory window in low memory: i.e., the pcmcia driver is flatly
ignoring our specifications in the INF file.

We know that the TI PCI-1520 controller itself is capable of the high
memory allocation, since we do this successfully under NT4 (using
Softex PCMCIA drivers). However, for some reason the Win2000 drivers
provided by IBM are not willing to support the high memory allocation.

One other piece of information: our card is a 16-bit pcmcia card, not
a cardbus card. Is it possible that the new drivers simply do not
include high memory support for 16-bit cards?

Any ideas as to how to tweak the Thinkpad driver into giving me a high
memory allocation? Alternatively, does anyone have a contact at IBM
who would be able to discuss this technical point in their PCMCIA
drivers?

Avi Shmidman
Excalibur Systems, Inc.