"Filip Navara" xnavara@volny.cz wrote:
No. In fact it was registry handle till NDIS4 and since NDIS5 it's a structure. I have this part partly rewritten in my tree.
Ah, I see!
Incidentally I have NdisMQueryAdapterResource implemented in my local tree. It gets the resources from the AllocatedResources field in the NDIS_MINIPORT_BLOCK structure which is itself filled in the IRP_MN_START_DEVICE dispatch code. There are two problems with this:
- The PnP resource assigning in kernel isn't implemented yet (only the
untraslated boot configuration is reported to device now, but it might be enough for this case) We need to assign the resources to each device based on the resource requirements (see IRP_MN_QUERY_RESOURCE_REQUIREMENTS, IRP_MN_FILTER_RESOURCE_REQUIREMENTS and _DEVICE_NODE) and then translate them to bus neutral form. (I've written the translation code, but I seriously doubt it's correct.)
Yep! That's where I got stuck because the hardware I have needed more work on other places. Could you commit your experimental code? Maybe it is a usable foundation.
Btw, I am removing variables like HardwareId from DEVICE_NODE (everything below the '/* Not NT's */' comment) and store it in the registry instead. IoGetDeviceProperty will read them from the registry.
- Currently the RTL8193 card isn't found by our PCI driver (which
reports the resources) and so we need this too to proceed further. (Gerard/Hartmut, if you want to help me with this problem, please run http://www.volny.cz/xnavara/devcon.zip on your system under Windows and send me the results back).
An RTL8193 is enumerated properly on one of my machines but it freezes on the other one.
Regards, Eric