----- Alexander Grigoriev wrote: ----
Are you sure your pPartialDescriptorTranslated is valid
It looks to be valid. The length is accurate so I can onl
assume that the Start address is. I have checked the untranslate
address and it appears correct when comparing it to the data
from PCIVIEW
I managed to post this question twice somehow...I guess I wasn'
patient enough to wait for it to show up
I think we should close down this thread. The other on
is Driver getting Page Fault 0EH Fault=0000, only when 2 PCI cards present in system...
I have made some progress, but I am not sure why. I used the Driver Wizard tha
comes with Walter Oney's book and found that it would load successfully on bot
of my cards, even after I added the full resource discovery and allocation to th
shell it produced.
After looking at it the only difference was that the majority of the init. cod
was in a separate subroutine from the actual StartHandler. Same cod
just in a different subroutine. So I am a little confused as to why it woul
work that way, but I moved most of the init. code in my driver to a subroutin
and its loading ok with about 95% of the code back in. Strange behavio
unless there is a limit to the size of a drivers subroutine. I have quite a fe
lines of code in the init routine to get everything accomplished for this card
Thanks for taking the time to reply.
Curtis Rube
"Curtis Rubel" <> wrote in messag
news: om..
> Hello
>> We have a PCI memory card that is requesting 64MB of Memory Resourc
> space, along with a small amount, 256K of register access memor
resources
> and a PCI interrupt resource. There is also a 1MB DMA CommonBuffer setu
> for this device to use
>> I am mapping the 64MB region into my driver space via the call
>> pDevExt->local_sram_ptr
> MmMapIoSpac
(pPartialDescriptorTranslated->u.Memory.Start
pPartialDescriptorTranslated->u.Memory.Length
> MmNonCached)
>> Everything works fine if only one such card is installed int
> the system. Driver verifier shows no abnormalities with the drive
running
> all IOCTL calls tested, DMA testing passes ok as well. Even ran th
drive
> with /PAE enabled just to make sure the driver was PAE correctly aware
>> When a 2nd card is installed the Add_Device routine runs successfull
> and exits, however when the Start_Device routine is called the syste
> fails with a Bug(0x7E) error and never actually makes it into m
> Start_Device handler. If I remove the MmMapIoSpace call fo
> the 64MB area the driver loads successfully on both cards. Obviousl
> the memory on the card is then not accessable
>> I am suspecting that there is a memory resource problem causing thi
> issue, however I would not expect the system to crash. I would expect th
> MmMapIoSpace call to return insufficient resources if there was a resourc
> problem as its supposed to do. But it never actually makes it into th
> Start_Device routine to give me that error
>> The WinNt4 version of our driver does not load successfully o
> the 2nd PCI card either, but it does at least return an error an
> does not crash the system
>> Why can I not MmMap the 64MB of PCI address space int
> my driver twice? I have set the SystemPages entry in the registr
> to 0xffffffff as some posts suggest and it has no affect on the error
>> Thank you
>> Curtis Rube