|
ReactOS 0.4.17-dev-1281-g065abb3
|

Go to the source code of this file.
Classes | |
| struct | HubUsb4Host |
| struct | HubUsb4TargetContext |
| struct | HubUsb4OpenContext |
Macros | |
| #define | NDEBUG |
| #define | HUB_USB4_REFERENCE_PREFIX L"Usb4-Host-Interface-" |
| #define | HUB_USB4_REFERENCE_PREFIX_CHARS 20 |
| #define | HUB_USB4_REFERENCE_CHARS 256 |
| #define | HUB_USB4_FIELD_SEPARATOR L'^' |
| #define | HUB_USB4_LINK_CHARS 256 |
| #define | HUB_USB4_OPEN_NAME_CHARS 256 |
| #define | HUB_USB4_HOST_INDEX_MASK 0x07 |
| #define | HUB_USB4_NO_HOST 0x07 |
| #define | HUB_USB4_DVSEC_NAME_CHARS 20 |
| #define | HUB_USB4_MAPPING_EXTRA_BYTES 14 |
Enumerations | |
| enum class | HubUsb4TargetState : ULONG { Idle , Opening , Open , Closing , Closed } |
| #define HUB_USB4_DVSEC_NAME_CHARS 20 |
Definition at line 40 of file hubtunnel.cpp.
Definition at line 31 of file hubtunnel.cpp.
| #define HUB_USB4_HOST_INDEX_MASK 0x07 |
Definition at line 38 of file hubtunnel.cpp.
| #define HUB_USB4_LINK_CHARS 256 |
Definition at line 34 of file hubtunnel.cpp.
| #define HUB_USB4_MAPPING_EXTRA_BYTES 14 |
Definition at line 43 of file hubtunnel.cpp.
| #define HUB_USB4_NO_HOST 0x07 |
Definition at line 39 of file hubtunnel.cpp.
| #define HUB_USB4_OPEN_NAME_CHARS 256 |
Definition at line 35 of file hubtunnel.cpp.
| #define HUB_USB4_REFERENCE_CHARS 256 |
Definition at line 30 of file hubtunnel.cpp.
Definition at line 28 of file hubtunnel.cpp.
| #define HUB_USB4_REFERENCE_PREFIX_CHARS 20 |
Definition at line 29 of file hubtunnel.cpp.
| #define NDEBUG |
Definition at line 10 of file hubtunnel.cpp.
|
strong |
| _IRQL_requires_ | ( | PASSIVE_LEVEL | ) |
Marks Port as tunneled through the host router Name; ports naming the same host share one record.
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.
Definition at line 96 of file hubtunnel.cpp.
Definition at line 552 of file hubtunnel.cpp.
Definition at line 186 of file hubtunnel.cpp.
| HubUsb4EscapeName | ( | Name | ) |
|
static |
Definition at line 143 of file hubtunnel.cpp.
Referenced by HubUsb4InterfaceChange().
Referenced by HubUsb4OpenWorkItem(), and HubUsb4TargetRemoveComplete().
Definition at line 127 of file hubtunnel.cpp.
Referenced by HubUsb4FindHost().
|
static |
A host router's power PDO came or went; its reference string picks the record by ACPI path or DVSEC name.
Definition at line 888 of file hubtunnel.cpp.
Definition at line 563 of file hubtunnel.cpp.
Referenced by HubUsb4TargetRemoveComplete().
A device behind a USB4 port holds its host router powered while tunneled or not known yet.
Definition at line 587 of file hubtunnel.cpp.
Definition at line 760 of file hubtunnel.cpp.
Definition at line 573 of file hubtunnel.cpp.
Definition at line 719 of file hubtunnel.cpp.
Definition at line 731 of file hubtunnel.cpp.
Definition at line 740 of file hubtunnel.cpp.
| if | ( | !Hub-> | m_HasUsb4Ports | ) |
Definition at line 288 of file hubtunnel.cpp.
| if | ( | ! | NT_SUCCESSStatus | ) |
| if | ( | (SymbolicLink->Length &1) ! | = 0 || SymbolicLink->Length, |
| SymbolicLink->MaximumLength|| | SymbolicLink->Buffer==NULL &&SymbolicLink->Length !=0 | ||
| ) |
Definition at line 853 of file hubtunnel.cpp.
Definition at line 859 of file hubtunnel.cpp.
Definition at line 302 of file hubtunnel.cpp.
| PAGED_CODE | ( | ) |
Referenced by _IRQL_requires_(), and HubUsb4InterfaceChange().
| Port SetFlag | ( | PortFlag::Usb4Host | ) |
| WDF_DECLARE_CONTEXT_TYPE_WITH_NAME | ( | HubUsb4OpenContext | , |
| HubUsb4GetOpenContext | |||
| ) |
| WDF_DECLARE_CONTEXT_TYPE_WITH_NAME | ( | HubUsb4TargetContext | , |
| HubUsb4GetTargetContext | |||
| ) |
| WdfObjectDelete | ( | WorkItem | ) |
Referenced by HubUsb4OpenWorkItem().
| WdfStringGetUnicodeString | ( | Name | , |
| & | Text | ||
| ) |
Referenced by HubUsb4EscapeName(), and HubUsb4FindHost().
| WdfWorkItemEnqueue | ( | WorkItem | ) |
Referenced by _IRQL_requires_max_(), DeviceErrorHandlerForMmc(), XhciTransferRing::EnsureFreeSegments(), HDA_TransferCodecVerbs(), HDAGraphicsPowerInterfaceCallback(), HubCreateReport(), HubPdoPowerIrpComplete(), IdleMachine::QueueIdleWorkItem(), XhciUsbDevice::QueueTunnelStateDsm(), XhciCommonBuffer::Rebalance(), SequentialQueueEvtIoDeviceControl(), SequentialQueueEvtIoReadWrite(), and XhciRequeueEvents().
| Failed __pad0__ |
Definition at line 264 of file hubtunnel.cpp.
| Failed __pad1__ |
Definition at line 874 of file hubtunnel.cpp.
Definition at line 215 of file hubtunnel.cpp.
Referenced by _IRQL_requires_().
Definition at line 837 of file hubtunnel.cpp.
| Chars = SymbolicLink->Length / sizeof(WCHAR) |
Definition at line 833 of file hubtunnel.cpp.
Referenced by CheckStringBufferA(), CheckStringBufferW(), ComputeUnicodeNameLength(), ConioProcessKey(), DisplayPendingOps(), DriverEntry(), GenerateComputerName(), HaliQueryProcessorBrandString(), HubDescCheckSerialNumber(), HubPdoGetHubName(), libxmlCharacters(), PiPropGetInterfaceReference(), PiPropIsValidString(), PiPropIsValidStringList(), PiPropParseInterfaceName(), RtlDetermineDosPathNameType_Ustr(), and TestFindCharInUnicodeString().
Definition at line 836 of file hubtunnel.cpp.
| else |
Definition at line 863 of file hubtunnel.cpp.
| Open Host = HubUsb4FindHost(Hub, &Text) |
Definition at line 211 of file hubtunnel.cpp.
Referenced by DECLARE_INTERFACE_(), HubUsb4AddPowerRelation(), HubUsb4FindHost(), HubUsb4InterfaceChange(), HubUsb4OpenWorkItem(), HubUsb4RemovePowerRelation(), ShowTcpTable(), and ShowUdpTable().
|
static |
Definition at line 22 of file hubtunnel.cpp.
|
static |
Definition at line 24 of file hubtunnel.cpp.
|
static |
Definition at line 18 of file hubtunnel.cpp.
|
static |
Definition at line 88 of file hubtunnel.cpp.
|
static |
Definition at line 89 of file hubtunnel.cpp.
Definition at line 14 of file hubtunnel.cpp.
Referenced by HubUsb4InterfaceChange().
|
static |
Definition at line 90 of file hubtunnel.cpp.
Referenced by HubUsb4OpenWorkItem().
|
static |
Definition at line 91 of file hubtunnel.cpp.
Referenced by HubUsb4OpenWorkItem().
|
static |
Definition at line 92 of file hubtunnel.cpp.
Referenced by HubUsb4OpenWorkItem().
Definition at line 309 of file hubtunnel.cpp.
| WDFMEMORY Memory |
Definition at line 212 of file hubtunnel.cpp.
Definition at line 208 of file hubtunnel.cpp.
Referenced by HubUsb4EscapeName(), HubUsb4FindHost(), HubUsb4OpenWorkItem(), and if().
Definition at line 831 of file hubtunnel.cpp.
Referenced by HubUsb4InterfaceChange(), and HubUsb4OpenWorkItem().
| Attributes ParentObject = Hub->m_Device |
Definition at line 216 of file hubtunnel.cpp.
Definition at line 278 of file hubtunnel.cpp.
| return |
Definition at line 868 of file hubtunnel.cpp.
Definition at line 876 of file hubtunnel.cpp.
| Status = WdfMemoryCreate(&Attributes, NonPagedPool, HUB_TAG_HUB, sizeof(*Host), &Memory, (PVOID*)&Host) |
Definition at line 213 of file hubtunnel.cpp.
Referenced by _IRQL_requires_(), HubUsb4InterfaceChange(), HubUsb4OpenWorkItem(), and if().
| return STATUS_SUCCESS |
Definition at line 262 of file hubtunnel.cpp.
Referenced by HubUsb4InterfaceChange(), and HubUsb4TargetQueryRemove().
| Open SymbolicLink |
Definition at line 827 of file hubtunnel.cpp.
| WDFWORKITEM WorkItem |
Definition at line 832 of file hubtunnel.cpp.