Driver Problems? Questions? Issues?
Put OSR's experience to work for you! Contact us for assistance with:
  • Creating the right design for your requirements
  • Reviewing your existing driver code
  • Analyzing driver reliability/performance issues
  • Custom training mixed with consulting and focused directly on your specific areas of interest/concern.
Check us out. OSR, the Windows driver experts.

Upcoming OSR Seminars:
Writing WDF Drivers: Core Concepts Lab, Boston/Waltham, MA 22-26 September, 2014
Windows Internals & Software Drivers Lab, Dulles/Sterling, VA, 20-24 October, 2014
Developing File Systems for Windows, Seattle, WA 4-7 November, 2014


Go Back   OSR Online Lists > ntdev
Welcome, Guest
You must login to post to this list
  Message 1 of 3  
23 Oct 06 07:59
Nikolay Korneev
xxxxxx@gmail.com
Join Date: 25 Jul 2005
Posts To This List: 9
HCD_GET_ROOT_HUB_NAME and USB_GET_NODE_INFORMATION functions

Online DDK stands for both of IOCTL_USB_GET_ROOT_HUB_NAME and IOCTL_USB_GET_NODE_INFORMATION that "The USB host controller FDO is the target of this request.". "User-Mode I/O Requests That USB Client Drivers Can Use" http://msdn.microsoft.com/library/default.asp?url=/library/en-us/buses_d/hh/Buses _d/usbirp_9d99ae23-ca5f-434e-a73f-ba4801049054.xml.asp Could someone explain, how USB host controller driver recognizes them, since they both have the _same_numeric_value_ of 0x00220408 ? #define HCD_GET_ROOT_HUB_NAME 258 #define USB_GET_NODE_INFORMATION 258 #define IOCTL_USB_GET_ROOT_HUB_NAME \ CTL_CODE(FILE_DEVICE_USB, HCD_GET_ROOT_HUB_NAME, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_USB_GET_NODE_INFORMATION \ CTL_CODE(FILE_DEVICE_USB, USB_GET_NODE_INFORMATION, METHOD_BUFFERED, FILE_ANY_ACCESS) Definitions are taken from usbioctl.h and usbiodef.h --
  Message 2 of 3  
23 Oct 06 12:18
Doron Holan
xxxxxx@microsoft.com
Join Date: 08 Sep 2005
Posts To This List: 9105
HCD_GET_ROOT_HUB_NAME and USB_GET_NODE_INFORMATION functions

IOCTL_USB_GET_ROOT_HUB_NAME - processed by the host controller's FDO IOCTL_USB_GET_NODE_INFORMATION - processed by the usbhub driver's FDO 2 different drivers d From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Nikolay Korneev Sent: Monday, October 23, 2006 4:59 AM To: Windows System Software Devs Interest List Subject: [ntdev] HCD_GET_ROOT_HUB_NAME and USB_GET_NODE_INFORMATION functions Online DDK stands for both of IOCTL_USB_GET_ROOT_HUB_NAME and IOCTL_USB_GET_NODE_INFORMATION that "The USB host controller FDO is the target of this request.". "User-Mode I/O Requests That USB Client Drivers Can Use" http://msdn.microsoft.com/library/default.asp?url=/library/en-us/buses_d/hh/Buses _d/usbirp_9d99ae23-ca5f-434e-a73f-ba4801049054.xml.asp Could someone explain, how USB host controller driver recognizes them, since they both have the _same_numeric_value_ of 0x00220408 ? #define HCD_GET_ROOT_HUB_NAME??? 258 #define USB_GET_NODE_INFORMATION 258 #define IOCTL_USB_GET_ROOT_HUB_NAME \ ???????? CTL_CODE(FILE_DEVICE_USB, HCD_GET_ROOT_HUB_NAME, METHOD_BUFFERED, FILE_ANY_ACCESS) #define IOCTL_USB_GET_NODE_INFORMATION \ ???????? CTL_CODE(FILE_DEVICE_USB, USB_GET_NODE_INFORMATION, METHOD_BUFFERED, FILE_ANY_ACCESS) Definitions are taken from usbioctl.h and usbiodef.h --- 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
  Message 3 of 3  
23 Oct 06 13:10
Nikolay Korneev
xxxxxx@gmail.com
Join Date: 25 Jul 2005
Posts To This List: 9
HCD_GET_ROOT_HUB_NAME and USB_GET_NODE_INFORMATION functions

Thank you Doron for clarifying this! BWT, the online DDK says the same "The USB host controller FDO is the target of this request" for *ALL* user-mode I/O requests on this page: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/buses_d/hh/Buses _d/usbirp_9d99ae23-ca5f-434e-a73f-ba4801049054.xml.asp I'm shure it's wrong for many of them. I've also found this in DDK headers: // The following IOCTLS are always sent to the HCD symbolic name IOCTL_USB_HCD_GET_STATS_1 IOCTL_USB_DIAGNOSTIC_MODE_ON IOCTL_USB_DIAGNOSTIC_MODE_OFF IOCTL_USB_GET_ROOT_HUB_NAME IOCTL_GET_HCD_DRIVERKEY_NAME IOCTL_USB_HCD_GET_STATS_2 IOCTL_USB_HCD_DISABLE_PORT IOCTL_USB_HCD_ENABLE_PORT // The following IOCTLS are always sent to symbolic names created by usbhub IOCTL_USB_GET_NODE_INFORMATION IOCTL_USB_GET_NODE_CONNECTION_INFORMATION IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION IOCTL_USB_GET_NODE_CONNECTION_NAME IOCTL_USB_DIAG_IGNORE_HUBS_ON IOCTL_USB_DIAG_IGNORE_HUBS_OFF IOCTL_USB_GET_NODE_CONNECTION_DRIVERKEY_NAME IOCTL_USB_GET_HUB_CAPABILITIES IOCTL_USB_GET_NODE_CONNECTION_ATTRIBUTES IOCTL_USB_HUB_CYCLE_PORT I guess that info is also incorrect :( I've tried to send... IOCTL_USB_DIAGNOSTIC_MODE_ON IOCTL_USB_DIAGNOSTIC_MODE_OFF IOCTL_USB_DIAG_IGNORE_HUBS_ON IOCTL_USB_DIAG_IGNORE_HUBS_OFF They all have been completed successfully by HC stack, but HUB stack has failed all of them, at least on W2K. So, it seems that IOCTL_USB_DIAG_IGNORE_HUBS_XXX are *NOT* always sent to symbolic names created by usbhub. Doron, probably you could point me to some place with 100% correct information about which target the particular IOCTL is? > IOCTL_USB_GET_ROOT_HUB_NAME - processed by the host controller's FDO > IOCTL_USB_GET_NODE_INFORMATION - processed by the usbhub driver's FDO > > 2 different drivers > > d --
Posting Rules  
You may not post new threads
You may not post replies
You may not post attachments
You must login to OSR Online AND be a member of the ntdev list to be able to post.

All times are GMT -5. The time now is 17:14.


Copyright ©2014, OSR Open Systems Resources, Inc.
Based on vBulletin Copyright ©2000 - 2005, Jelsoft Enterprises Ltd.
Modified under license