IoGetDMAAdapter Vista 64-Bit Problem

Hi All,
I have a WDM driver which I am trying to load on a 64-bit vista
platform. When I use the IOGetDMAAdapter I neednumber of Map buffers as
1000 and I only get 100. Because of this the driver will fail the bring
up and will not load.

The same code works fine for Xp-64 bit and also on 64-bit .Net.

I am attaching the code snippet.
Please advice.
Thanks in Advance,

  • Aj

====================================== CODE SNIPPET

deviceDescription.Version = DEVICE_DESCRIPTION_VERSION2;

deviceDescription.Master = TRUE;

deviceDescription.ScatterGather = TRUE;

deviceDescription.Dma32BitAddresses = TRUE;

deviceDescription.Dma64BitAddresses = FALSE;

deviceDescription.InterfaceType = PCIBus;

maxMapRegistersRequired = (MAX_SIZE_PER_TRANSFER * 4)/PAGE_SIZE;

MinMapRegistersReq = MAX_SIZE_PER_TRANSFER/PAGE_SIZE;

deviceDescription.MaximumLength = (maxMapRegistersRequired <<
PAGE_SHIFT);

MapRegisters = maxMapRegistersRequired;

pDevExt->DmaAdapterObjectTx =
IoGetDmaAdapter(pDevExt->pMyPDO,&deviceDescription,&MapRegisters);