Hello,
According to the DDK, Setup compares the device’s hardware IDs/compatible
IDs as reported by the device’s parent Bus Driver to the hardware
IDs/compatible IDs listed in the INF files on the machine, to choose a
Driver for a Device.
My question is how does the Bus Driver notify Setup of the device’s
hardware ID ? I looked at the Toaster sample, but it is still not clear to
me. And I need to do this for my Bus Driver.
Please clarify.
Thanks much,
Puja
Look at IRP_MN_QUERY_ID in the PnP Reference section. Your bus driver
returns WCHAR multi-strings for BusQueryHardwareID and BusQueryCompatibleID
that correspond to information in the inf file for the function drivers.
Mark Roddy
Windows 2000/NT Consultant
Hollis Technology Solutions
www.hollistech.com
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com]On Behalf Of xxxxx@usa.net
Sent: Monday, August 28, 2000 9:14 PM
To: NT Developers Interest List
Subject: [ntdev] Bus Driver Question: Device Hardware ID
Hello,
According to the DDK, Setup compares the device’s hardware IDs/compatible
IDs as reported by the device’s parent Bus Driver to the hardware
IDs/compatible IDs listed in the INF files on the machine, to choose a
Driver for a Device.
My question is how does the Bus Driver notify Setup of the device’s
hardware ID ? I looked at the Toaster sample, but it is still
not clear to
me. And I need to do this for my Bus Driver.
Please clarify.
Thanks much,
Puja
You are currently subscribed to ntdev as: xxxxx@wattanuck.mv.com
To unsubscribe send a blank email to $subst(‘Email.Unsub’)
> My question is how does the Bus Driver notify Setup of the device’s
hardware ID ? I looked at the Toaster sample, but it is still not clear
to
me. And I need to do this for my Bus Driver.
Bus driver calls IoInvalidateDeviceRelations when it needs to report device
arrival/removal to the OS.
Then PnP sends IRP_MN_QUERY_RELATIONS to the bus driver - the bus driver
must return the collection of the alive PDOs to the PnP.
Then PnP sends IRP_MN_QUERY_ID to each PDO.
Bus driver allocates and returns the ID strings during handling this IRP.
So - just handle the IRP_MN_QUERY_ID for your PDOs in your bus driver - and
all will be OK.
Max