Hi,
Can my bus driver act as function driver for the PDO it has created? What I mean is there are no function driver for these PDOs and I would like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in the bus driver itself.
thx
SID
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze.
Yes, you can if you mark the PDO as RawDeviceOK == TRUE in the
DEVICE_CAPABILITIES when you initially enumerate the PDO. Note that the
PDO will be immediately started after being reported as present and can
then be immediately sent a remove if an INF matches the PDO’s hardware
or compatible IDs. You will also have to be the power policy owner for
the raw PDO and perform the S->D state mappings.
d
– I can spell, I just can’t type.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 11:42 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Bus driver acting as function driver for its PDO
Hi,
Can my bus driver act as function driver for the PDO it has created?
What I mean is there are no function driver for these PDOs and I would
like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in
the bus driver itself.
thx
SID
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze. —
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
Sure. Just add an inf file spec for the PnP enumeration string coming
out of your PDO and you will be called at your AddDevice interface with
your enumerated PDO - you have to figure out how to differentiate this
PDO from the one that your bus driver is already a function driver for.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 2:42 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Bus driver acting as function driver for its PDO
Hi,
Can my bus driver act as function driver for the PDO it has created?
What I mean is there are no function driver for these PDOs and I would
like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in
the bus driver itself.
thx
SID
Yahoo! Mail
Bring photos to life! New PhotoMail
http:ail.yahoo.com> makes sharing a breeze. — 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</http:>
> Can my bus driver act as function driver for the PDO it has created?
Yes, but it must take some measures to distinguish itself as a functional and
as a bus driver.
IIRC ACPI.SYS does this.
You can also create raw PDOs which will not require any FDO, and do all work in
PDO paths of the bus driver.
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
Elyas’s toaster bus driver discriminates between FDO and FDO
functionality. At least it used to.
Gary G. Little
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Maxim S. Shatskih
Sent: Wednesday, March 08, 2006 2:16 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Bus driver acting as function driver for its PDO
Can my bus driver act as function driver for the PDO it has created?
Yes, but it must take some measures to distinguish itself as a functional
and
as a bus driver.
IIRC ACPI.SYS does this.
You can also create raw PDOs which will not require any FDO, and do all
work in
PDO paths of the bus driver.
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
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
In addition to all answers . Microsoft’s usbhub ( usbhub.sys ) acts in such a way. Try to insert a USB hub in the other USB hub( i.e. simple USB port on your PC ) and see a driver stack.
“krnl_drv” wrote in message news:xxxxx@ntdev…
Hi,
Can my bus driver act as function driver for the PDO it has created? What I mean is there are no function driver for these PDOs and I would like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in the bus driver itself.
thx
SID
------------------------------------------------------------------------------
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze.
Damn keyboard. That should be … PDO and FDO …
Gary G. Little
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Gary G Little
Sent: Wednesday, March 08, 2006 2:50 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Bus driver acting as function driver for its PDO
Elyas’s toaster bus driver discriminates between FDO and FDO
functionality. At least it used to.
Gary G. Little
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Maxim S. Shatskih
Sent: Wednesday, March 08, 2006 2:16 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Bus driver acting as function driver for its PDO
Can my bus driver act as function driver for the PDO it has created?
Yes, but it must take some measures to distinguish itself as a functional
and
as a bus driver.
IIRC ACPI.SYS does this.
You can also create raw PDOs which will not require any FDO, and do all
work in
PDO paths of the bus driver.
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
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
I did think of this strategy but I am trying to avoid it. If I have to handle everything in the bus driver, I can just work with the PDO. Knowing well, there is no requirement for filter driver in the stack.
“Roddy, Mark” wrote:
v:* {behavior:url(#default#VML);} o:* {behavior:url(#default#VML);} w:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} st1:*{behavior:url(#default#ieooui) } Sure. Just add an inf file spec for the PnP enumeration string coming out of your PDO and you will be called at your AddDevice interface with your enumerated PDO – you have to figure out how to differentiate this PDO from the one that your bus driver is already a function driver for.
---------------------------------
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 2:42 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Bus driver acting as function driver for its PDO
Hi,
Can my bus driver act as function driver for the PDO it has created? What I mean is there are no function driver for these PDOs and I would like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in the bus driver itself.
thx
SID
---------------------------------
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze. — 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
---------------------------------
Yahoo! Mail
Use Photomail to share photos without annoying attachments.
There are 2 concepts here that should be clarified.
The first is the PDO acting as the function driver for the stack w/out any additional drivers loaded on top of the PDO. That is a raw PDO. In this case you have
- Driver PDO
Driver FDO
- Some bus PDO
The second is loading yourself again as an FDO on top of your own PDO. As long as the FDO code has all the I/O support from the PDO it needs (support for certain IOCTLs, etc), this will work just fine. In this case you have
Driver FDO
- Driver PDO
Driver FDO
- Some bus PDO
(where indentation level indicates a device stack and the further indent indicates a child).
d
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Slava Imameyev
Sent: Wednesday, March 08, 2006 1:14 PM
To: Windows System Software Devs Interest List
Subject: Re:[ntdev] Bus driver acting as function driver for its PDO
In addition to all answers?. Microsoft’s usbhub ( usbhub.sys ) acts in such a way. Try to insert a USB hub in the other USB hub( i.e. simple USB port on your PC )?and see a driver stack.
“krnl_drv” wrote in message news:xxxxx@ntdev…
Hi,
Can my bus driver act as function driver for the PDO it has created? What I mean is there are no function driver for these PDOs and I would like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in the bus driver itself.
thx
SID
________________________________________
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze.
—
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
Hi Gary,
It still does. The technique is to have a common field in the device extensions of FDO and PDO. Here the FDO is for the toaser bus and PDO is for the devices it creates. Its pretty common scnerio. The example also does not handle READ/WRITE/IOCTL IRPS for PDOs.
thx
SID
xxxxx@seagate.com wrote:
Elyas’s toaster bus driver discriminates between FDO and FDO
functionality. At least it used to.
Gary G. Little
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Maxim S. Shatskih
Sent: Wednesday, March 08, 2006 2:16 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] Bus driver acting as function driver for its PDO
Can my bus driver act as function driver for the PDO it has created?
Yes, but it must take some measures to distinguish itself as a functional
and
as a bus driver.
IIRC ACPI.SYS does this.
You can also create raw PDOs which will not require any FDO, and do all
work in
PDO paths of the bus driver.
Maxim Shatskih, Windows DDK MVP
StorageCraft Corporation
xxxxx@storagecraft.com
http://www.storagecraft.com
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
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze.
Hi Doron,
PnP manager will send down to us IRP_MN_START_DEVICE for the PDOs. But, as I understand from you, my AddDevice() routine will not be called by the PnP manager. B/c my driver’s INF will not match hardware or compatible ID.
Thanks for your help.
Sid
Doron Holan wrote:
Yes, you can if you mark the PDO as RawDeviceOK == TRUE in the
DEVICE_CAPABILITIES when you initially enumerate the PDO. Note that the
PDO will be immediately started after being reported as present and can
then be immediately sent a remove if an INF matches the PDO’s hardware
or compatible IDs. You will also have to be the power policy owner for
the raw PDO and perform the S->D state mappings.
d
– I can spell, I just can’t type.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 11:42 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Bus driver acting as function driver for its PDO
Hi,
Can my bus driver act as function driver for the PDO it has created?
What I mean is there are no function driver for these PDOs and I would
like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in
the bus driver itself.
thx
SID
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze. —
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
---------------------------------
Yahoo! Mail
Use Photomail to share photos without annoying attachments.
Correct, AddDevice is only invoked when creating an FDO.
d
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 2:26 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Bus driver acting as function driver for its PDO
Hi Doron,
PnP manager will?send down to us IRP_MN_START_DEVICE for the PDOs. But, as I understand from you,?my AddDevice() routine will not be called by the PnP manager. B/c my driver’s INF will not match hardware or compatible ID.
?
Thanks for your help.
Sid
Doron Holan wrote:
Yes, you can if you mark the PDO as RawDeviceOK == TRUE in the
DEVICE_CAPABILITIES when you initially enumerate the PDO. Note that the
PDO will be immediately started after being reported as present and can
then be immediately sent a remove if an INF matches the PDO’s hardware
or compatible IDs. You will also have to be the power policy owner for
the raw PDO and perform the S->D state mappings.
d
– I can spell, I just can’t type.
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of krnl_drv
Sent: Wednesday, March 08, 2006 11:42 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Bus driver acting as function driver for its PDO
Hi,
Can my bus driver act as function driver for the PDO it has created?
What I mean is there are no function driver for these PDOs and I would
like to handle READ/WRITE/IOCTL IRPs in addition to PNP & POWER IRPs in
the bus driver itself.
thx
SID
Yahoo! Mail
Bring photos to life! New PhotoMail makes sharing a breeze. —
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
________________________________________
Yahoo! Mail
Use Photomail to share photos without annoying attachments. — 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