I respectfully disagree. Outside of a root enumerated device, you are
typically tightly bound between the FDO and the PDO b/c the PDO provides
services for the FDO. Mark, the properties you can specify with
DEVICE_REGISTRY_PROPERTY (via WdfDeviceQueryProperty or
IoGetDeviceProperty) are not extensible and usually do not fit into a
driver’s property schema cleanly (although in this case,
DevicePropertyAddress might be appropriate). Furthermore, I would think
that this is just as tightly binding the FDO to the PDO, just in a more
/implicit/ manner since it is not declarative or i/o based.
Steve, why didn’t we cover driver defined interfaces? Well, the book is
huge already and there are ton of topics we could not cover ;). Is it
something to write about? Probably. Is it something most people would
implement as a bus driver and use? Not as likely, but still a popular
programming pattern. Glad you found the blog entries useful, that is
what I strive for.
d
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Mark Roddy
Sent: Sunday, June 03, 2007 3:02 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] KMDF software-only bus driver communication with
FDOs
QueryInterface may be more than you are looking for. If you just need a
unique address for your device, the device properties are the way to go.
DeviceInterfaces violate the layering between FDO and PDO and introduce
complexity that you can probably get along without. It really depends on
what your requirements are. As I said, for your stated requirement of a
simple ULONG address, go with the device properties.
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:bounce-288899-
xxxxx@lists.osr.com] On Behalf Of xxxxx@hotmail.com
Sent: Sunday, June 03, 2007 1:47 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KMDF software-only bus driver communication with
FDOs
I just have to say this driver defined interface idea is a lifesaver!
Or a timesaver, at least… Also, Doron’s posts I’ve found helpful
as well. Has this idea been around long? I’m asking because it doesn’t
seem that Microsoft’s WDF book covers driver-defined interfaces at
all.
Many thanks to you all for being patient with this newbie. I was a bit
confused until I realized that a “driver interface” is completely
different than a “driver defined interface”. Terminology…
-Steve
P.S. Maxim - thanks for the correction on PDO naming. You are correct.
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256
To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer