NdisMRegisterScatterGatherDma works in Vista 32 but not Vista 64

Discussion in 'Windows Vista Drivers' started by Ron, Nov 19, 2007.

  1. Ron

    Ron Guest

    We have a Vista native WIFI driver modeled after the Microsoft
    Native WIFI driver in the 6000 WDK. It is a native WIFI driver
    on top of a proprietary bus driver that is on a PCI bus. We
    are most of the way through Vista logo on the 32 bit version
    of this set up. So yes we can allocate shared memory and we
    can successfully call NdisMRegisterScatterGatherDma. Yes we
    set: MiniportAttributes.RegistrationAttributes.AttributeFlags

    Now we switch over to Vista x64 and we can not successfully
    call NdisMRegisterScatterGatherDma. It returns
    NDIS_STATUS_RESOURCES. Our shared PCI adapter can only do 32
    bit DMA but I am willing to double buffer. So I tried setting
    and not setting the NDIS_SG_DMA_64_BIT_ADDRESS flag when
    calling NdisMRegisterScatterGatherDma. It does not make any
    difference. I still get a return status of
    NDIS_STATUS_RESOURCES. The code running up to this point is
    pure Microsoft. It is all in the miniport section and
    unchanged by us. We used the Microsoft native WIFI 64 bit inf
    file as a template and decorated our 64 bit inf file

    Another team providing a different, non NDIS, driver for our
    same proprietary bus/chip setup can allocate shared memory in
    Vista 32 but can not allocate shared memory in Vista 64.
    It seems in Vista 64 we are no longer a bus master device.

    Any ideas?


    Ron, Nov 19, 2007
    1. Advertisements

  2. Ron

    Ron Guest

    Are there any NDIS experts that have worked on Vista 64 and used a simple bus driver?

    Ron, Dec 6, 2007
    1. Advertisements

  3. Ron


    Jan 9, 2013
    Likes Received:
    Did you ever solve this problem? I am currently experiencing the exact same issue.
    rgraham8, Jan 9, 2013
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.