|
ReactOS 0.4.17-dev-1281-g065abb3
|

Go to the source code of this file.
Classes | |
| struct | HubConnectorNode |
Macros | |
| #define | NDEBUG |
| #define | HUB_PROTOCOL_USB20 0x200 |
| #define | HUB_PROTOCOL_USB30 0x300 |
Functions | |
| _IRQL_requires_ (PASSIVE_LEVEL) VOID NTAPI HubConnectorLock(VOID) | |
| Sends a synchronous IOCTL to the specified device object. | |
| static BOOLEAN NTAPI | HubConnectorIdsEqual (_In_ const HubConnectorId *First, _In_ const HubConnectorId *Second) |
| static HubConnectorNode *NTAPI | HubConnectorFindById (_In_ const HubConnectorId *Id) |
| static HubConnectorNode *NTAPI | HubConnectorFindByPort (_In_ HubPort *Port) |
| static NTSTATUS NTAPI | HubConnectorAddUsb20 (_Inout_ HubConnectorNode *Node, _In_ HubPort *Port) |
| static NTSTATUS NTAPI | HubConnectorAddUsb30 (_Inout_ HubConnectorNode *Node, _In_ HubPort *Port) |
| HubPort *NTAPI | HubConnectorFindCompanion (_In_ HubPort *Port, _In_ ULONG Index) |
| PVOID NTAPI | HubConnectorNodeForPort (_In_ HubPort *Port) |
| static VOID NTAPI | HubConnectorSetRootId (_In_ HubFdo *Hub, _Inout_ HubPort *Port, _In_ ULONG Usb30Port) |
| static VOID NTAPI | HubConnectorCopyParentId (_In_ HubFdo *Hub, _Out_ HubConnectorId *Id) |
| #define HUB_PROTOCOL_USB20 0x200 |
Definition at line 14 of file portconn.cpp.
| #define HUB_PROTOCOL_USB30 0x300 |
Definition at line 15 of file portconn.cpp.
| #define NDEBUG |
Definition at line 11 of file portconn.cpp.
| _IRQL_requires_ | ( | PASSIVE_LEVEL | ) |
Sends a synchronous IOCTL to the specified device object.
| [in] | IoControlCode | The IOCTL to send to the device. |
| [in] | DeviceObject | Pointer to the device object that will handle the IOCTL. |
| [in] | InputBuffer | Optional pointer to a buffer containing input data for the IOCTL. When specified, the buffer should be at least of InputBufferLength size. |
| [in] | InputBufferLength | Size in bytes, of the buffer pointed by InputBuffer. |
| [out] | OutputBuffer | Optional pointer to a buffer that will receive output data from the IOCTL. When specified, the buffer should be at least of OutputBufferLength size. |
| [in] | OutputBufferLength | Size in bytes, of the buffer pointed by OutputBuffer. |
| [in] | FileObject | Optional pointer to a file object that may be necessary for the IOCTL. |
Nothing is found unless the PCI bus driver publishes the properties.
The root hub name without its prefix; NULL when the PDO has no name.
Grows a private buffer to what the helper asks for.
Lets KMDF handle the IRP, then hands it back here still uncompleted.
Waits for the device machine to answer a PnP or power event; returns the PnP status.
Deletes the UCX endpoints of the disabled pipes, then the interface record.
One 4 byte value; the registry type is not checked.
Reread whenever user experience settings change; the open status is returned.
Sends a synchronous IOCTL to the specified device object.
STATUS_SUCCESS when the caller's token is an administrator's.
Sends a synchronous IOCTL to the specified device object.
Reads one value of a walk. A missing value only clears Present; FALSE means stop.
Reads up to Size bytes of a value into a zeroed buffer; the type is not checked.
Writes a REG_BINARY value into the device's usbflags subkey.
Sets or clears ExtPropertiesInstalled from ExtPropDescSemaphore in the hardware key.
Fails only when a port cannot be bound to the USB4 host router its ACPI node names.
Assigns device, hardware, compatible, container and instance ids to a new child PDO.
Answers IRP_MN_QUERY_DEVICE_TEXT on a child PDO; always completes the IRP.
Takes the connector map lock, needed around HubConnectorFindCompanion.
Device hardware key values read at PDO prepare hardware.
Saves the MS OS 2.0 set info in usbflags when the set asks for alternate enumeration.
MsOs20Flags and EnumerationRetryCount, written at PDO start.
Rereads the UXD record; UpdateRequired says whether the device id changes.
Replacement PnP id of a UXD reserved device, or an empty String. Always succeeds.
Telemetry values under the device's Ceip subkey.
BootPathSurpriseRemovalCount + 1.
This machine's dual role features for a dual role partner.
Tells UCX the WDM PDO of the device; call right after the child PDO was created.
IOCTL_INTERNAL_USB_GET_CONTROLLER_NAME: Argument1 and its length Argument2.
IOCTL_INTERNAL_USB_GET_BUS_INFO for the device: the 16 byte USB_BUS_NOTIFICATION at Argument1.
Registers the GUID_USB_WMI_NODE_INFO instance of a child PDO (not for hubs or composites).
Registers the boot device surprise removal event on an external, non hub boot PDO.
Fires the boot device surprise removal event, if one is registered.
Sends a synchronous IOCTL to the specified device object.
Publishes "<port>#<host>" for every bound port on the hub's PDO. QUIRK: with no bound port an older value is left in place.
Binds USB 3 ports to the host routers named by the USB4 DVSEC; an earlier ACPI mapping wins.
Waits on a PnP handshake event with no timeout, printing a watchdog line every minute so a stuck machine is visible in the debugger.
Copies up to Size bytes of a device property; a failed query leaves the field zero.
Only the controller name length is real; both bandwidth fields read 0.
The answer overlays a USB_HUB_NAME on TotalSize, so TotalSize comes back as the name length + 4.
Evaluates a method without arguments into Output.
Definition at line 30 of file portconn.cpp.
|
static |
Definition at line 122 of file portconn.cpp.
|
static |
Definition at line 152 of file portconn.cpp.
Definition at line 356 of file portconn.cpp.
|
static |
Definition at line 77 of file portconn.cpp.
|
static |
Definition at line 97 of file portconn.cpp.
Referenced by HubConnectorFindCompanion(), and HubConnectorNodeForPort().
Companion port 0 or 1 sharing Port's connector, or NULL. Only valid under the map lock.
Definition at line 287 of file portconn.cpp.
Referenced by HubIoGetConnectorProperties().
|
static |
Definition at line 50 of file portconn.cpp.
Referenced by HubConnectorFindById().
Connector map node of a port, or NULL when the port is not mapped.
Definition at line 320 of file portconn.cpp.
Referenced by DeviceMachine::AddChildToHub().