Hi all,
I am trying to develop a miniport driver for Realtek RTL 8139 by modifying
DDK sample E100BEX. Now i am learning MiniportInitialize routine.
I have used NdisMQueryAdapterResources and the same switch case to assign
port, Interrupt and memory. Both Iobase address and Interrupt values are
assigning correctly. But in the Memory assignment i get a valid physical
address start and length value. But when i use DbgPrint to print the values
of functions
NdisGetPhysicalAddressLow(Adapter->MemPhysAddress) gives me 0xe7101000
pResDesc->u.Memory.Length gives me 0x100 then why
NdisGetPhysicalAddressHigh(Adapter->MemPhysAddress) shows a 0X0 value.
From _CM_PARTIAL_RESOURCE_DESCRIPTOR structure and its member structure
memory i under stood these values which i get is a valid (64 bit physical
addresses???). And as per reference NdisGetPhysicalAddressHigh should return
me the high-order part of a given physical address. Where i went wrong
please correct me.
Also in the msdn documents i saw that “Alternatively Miniport drivers can
call NdisMGetDeviceProperty to retrieve pointers to Raw and Translated
resources”. Where we should use this function?
Thanks in advance
vimal