|
ReactOS 0.4.17-dev-1281-g065abb3
|

Go to the source code of this file.
Classes | |
| struct | _XHCI_TUNNEL_DSM_WORK |
Macros | |
| #define | NDEBUG |
| #define | XHCI_USB_DSM_REVISION 0 |
| #define | XHCI_USB_DSM_TUNNEL_STATE 10 |
| #define | XHCI_USB_DSM_PORT_NATIVE 1 |
| #define | XHCI_USB_DSM_PORT_TUNNELED 2 |
| #define | XHCI_DEFAULT_CONTEXT_MASK 0x00000003 |
| #define | XHCI_ROUTE_TIER_MAX 15 |
| #define | XHCI_ROUTE_TIER_BITS 4 |
Typedefs | |
| typedef struct _XHCI_TUNNEL_DSM_WORK | XHCI_TUNNEL_DSM_WORK |
| typedef struct _XHCI_TUNNEL_DSM_WORK * | PXHCI_TUNNEL_DSM_WORK |
Enumerations | |
| enum | : ULONG { XhciDeviceFatalSlotInUse = 0x1014 , XhciDeviceFatalAddressDefault = 0x1015 , XhciDeviceFatalEnableSlot = 0x1016 , XhciDeviceFatalDeconfigure = 0x1017 , XhciDeviceFatalDisableSlot = 0x1018 , XhciDeviceFatalResetDevice = 0x1019 } |
| enum | : ULONG { XhciDeviceCheckSlotInUse = 0x00020000 , XhciDeviceCheckAddressDefault = 0x00040000 , XhciDeviceCheckDeconfigure = 0x00080000 , XhciDeviceCheckDisableSlot = 0x00100000 , XhciDeviceCheckResetDevice = 0x00200000 } |
Variables | |
| static const GUID | XhciGuidUsbDsm |
| static EVT_WDF_OBJECT_CONTEXT_CLEANUP | XhciEvtUsbDeviceCleanup |
| _In_ const GUID * | Uuid |
| _In_ const GUID _In_ ULONG | Revision |
| _In_ const GUID _In_ ULONG _In_ ULONG | Function |
| _In_ const GUID _In_ ULONG _In_ ULONG _In_ USHORT | ArgumentLength |
| PACPI_EVAL_INPUT_BUFFER_COMPLEX | Input = (PACPI_EVAL_INPUT_BUFFER_COMPLEX)ExAllocatePoolZero(PagedPool, Size, XHCI_TAG_CONTROLLER) |
| PACPI_METHOD_ARGUMENT | Next = &Input->Argument[0] |
| WDF_MEMORY_DESCRIPTOR | InputDescriptor |
| WDF_MEMORY_DESCRIPTOR | OutputDescriptor |
| ULONG64 | Value = 0 |
| ULONG | Length |
| ULONG | Size |
| NTSTATUS | Status |
| Input | Signature = ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE |
| Input | MethodNameAsUlong = 'MSD_' |
| Input | ArgumentCount = 4 |
| #define NDEBUG |
Definition at line 12 of file slotdev.cpp.
| #define XHCI_DEFAULT_CONTEXT_MASK 0x00000003 |
Slot context bit 0 plus the default control endpoint at DCI 1.
Definition at line 57 of file slotdev.cpp.
| #define XHCI_ROUTE_TIER_BITS 4 |
Definition at line 60 of file slotdev.cpp.
| #define XHCI_ROUTE_TIER_MAX 15 |
Definition at line 59 of file slotdev.cpp.
| #define XHCI_USB_DSM_PORT_NATIVE 1 |
Definition at line 23 of file slotdev.cpp.
| #define XHCI_USB_DSM_PORT_TUNNELED 2 |
Definition at line 24 of file slotdev.cpp.
| #define XHCI_USB_DSM_REVISION 0 |
Definition at line 21 of file slotdev.cpp.
| #define XHCI_USB_DSM_TUNNEL_STATE 10 |
Definition at line 22 of file slotdev.cpp.
| typedef struct _XHCI_TUNNEL_DSM_WORK * PXHCI_TUNNEL_DSM_WORK |
Context of the work item that asks ACPI for a root port's tunnel state.
| Enumerator | |
|---|---|
| XhciDeviceFatalSlotInUse | |
| XhciDeviceFatalAddressDefault | |
| XhciDeviceFatalEnableSlot | |
| XhciDeviceFatalDeconfigure | |
| XhciDeviceFatalDisableSlot | |
| XhciDeviceFatalResetDevice | |
Definition at line 36 of file slotdev.cpp.
| Enumerator | |
|---|---|
| XhciDeviceCheckSlotInUse | |
| XhciDeviceCheckAddressDefault | |
| XhciDeviceCheckDeconfigure | |
| XhciDeviceCheckDisableSlot | |
| XhciDeviceCheckResetDevice | |
Definition at line 47 of file slotdev.cpp.
| _IRQL_requires_ | ( | PASSIVE_LEVEL | ) |
Sends a synchronous IOCTL to the specified device object.
Evaluates _DSM on the controller ACPI object with a buffer as Arg3; returns up to 8 result bytes, 0 on failure.
Definition at line 184 of file slotdev.cpp.
| _IRQL_requires_max_ | ( | DISPATCH_LEVEL | ) |
IOCTL_INTERNAL_USB_SUBMIT_IDLE_NOTIFICATION; the idle machine owns the IRP afterwards.
Records hub over current in the hub hardware key, once per devnode.
First selective suspend of the device; the registry write runs in a work item.
"USB device not recognized" popup for a port.
A hub was attached beyond the allowed tier depth.
The selected configuration draws more power than the port can give.
The controller ran out of bandwidth for the device; fired by the out of bandwidth timer.
Definition at line 391 of file slotdev.cpp.
| ACPI_METHOD_SET_ARGUMENT_BUFFER | ( | Next | , |
| Argument | , | ||
| ArgumentLength | |||
| ) |
| ExFreePoolWithTag | ( | Input | , |
| XHCI_TAG_CONTROLLER | |||
| ) |
| if | ( | ! | NT_SUCCESSStatus | ) |
Definition at line 143 of file slotdev.cpp.
Definition at line 112 of file slotdev.cpp.
| else if | ( | Output.Header.Count ! | = 0 && Output.Header.Argument[0].DataLength != 0 | ) |
Definition at line 151 of file slotdev.cpp.
Definition at line 147 of file slotdev.cpp.
| RtlZeroMemory & Output | ( | Output | ) |
| WDF_MEMORY_DESCRIPTOR_INIT_BUFFER & OutputDescriptor | ( | Output | ) |
| PAGED_CODE | ( | ) |
Referenced by XhciEvtControllerUsbDeviceAdd().
| WDF_DECLARE_CONTEXT_TYPE_WITH_NAME | ( | XHCI_TUNNEL_DSM_WORK | , |
| XhciGetTunnelDsmWork | |||
| ) |
| WDF_DECLARE_CONTEXT_TYPE_WITH_NAME | ( | XhciUsbDevice | , |
| XhciGetUsbDeviceContext | |||
| ) |
|
static |
Definition at line 168 of file slotdev.cpp.
Referenced by XhciUsbDevice::ReconfigureCommandDone().
| NTSTATUS NTAPI XhciEvtControllerUsbDeviceAdd | ( | _In_ UCXCONTROLLER | UcxController, |
| _In_ PUCXUSBDEVICE_INFO | UcxUsbDeviceInfo, | ||
| _In_ PUCXUSBDEVICE_INIT | UsbDeviceInit | ||
| ) |
Definition at line 1793 of file slotdev.cpp.
Definition at line 1886 of file slotdev.cpp.
Definition at line 252 of file slotdev.cpp.
Definition at line 1862 of file slotdev.cpp.
Definition at line 1850 of file slotdev.cpp.
| VOID NTAPI XhciEvtUsbDeviceEndpointsConfigure | ( | _In_ UCXCONTROLLER | UcxController, |
| _In_ WDFREQUEST | Request | ||
| ) |
Definition at line 1838 of file slotdev.cpp.
Definition at line 1910 of file slotdev.cpp.
Definition at line 1874 of file slotdev.cpp.
Definition at line 1898 of file slotdev.cpp.
Definition at line 67 of file slotdev.cpp.
Referenced by XhciEvtUsbDeviceAddress(), XhciEvtUsbDeviceDisable(), XhciEvtUsbDeviceEnable(), XhciEvtUsbDeviceEndpointsConfigure(), XhciEvtUsbDeviceHubInfo(), XhciEvtUsbDeviceReset(), and XhciEvtUsbDeviceUpdate().
| Input ArgumentCount = 4 |
Definition at line 121 of file slotdev.cpp.
Referenced by AcpiPsCreateOp(), CsrAllocateCaptureBuffer(), CsrParseServerCommandLine(), CsrServerInitialization(), DefineDosDeviceW(), HubAcpiPrepareInput(), and KiSystemService().
Definition at line 88 of file slotdev.cpp.
Referenced by co_IntCallEventProc(), co_IntCallHookProc(), co_IntCallLoadMenu(), co_IntCallWindowProc(), co_IntClientLoadLibrary(), co_IntClientThreadSetup(), co_IntCopyImage(), co_IntGetCharsetInfo(), co_IntSetupOBM(), co_IntSetWndIcons(), IntDDEGetCallback(), IntDDEPostCallback(), KeUserModeCallback(), KiSetupUserCalloutFrame(), KiUserCallbackDispatcher(), User32CallDDEGetFromKernel(), User32CallDDEPostFromKernel(), User32CallGetCharsetInfo(), User32CallHookProcFromKernel(), User32CallOBMFromKernel(), User32CallSendAsyncProcForKernel(), User32CallSetWndIconsFromKernel(), and User32CallWindowProcFromKernel().
Definition at line 86 of file slotdev.cpp.
Referenced by if().
Definition at line 95 of file slotdev.cpp.
| WDF_MEMORY_DESCRIPTOR_INIT_BUFFER& InputDescriptor |
Definition at line 97 of file slotdev.cpp.
Definition at line 100 of file slotdev.cpp.
| Input MethodNameAsUlong = 'MSD_' |
Definition at line 119 of file slotdev.cpp.
Definition at line 96 of file slotdev.cpp.
Referenced by __ALIGNED(), FxDmaTransactionBase::_CalculateRequiredMapRegisters(), _Struct_size_bytes_(), AcpiEvDeleteGpeHandlers(), AcpiExReleaseAllMutexes(), AcpiGetLoaderAcpiBiosNode(), AcpiHwDeletePciList(), AcpiPsCompleteThisOp(), AcpiPsDeleteParseTree(), AcpiPsGetDepthNext(), AcpiUtDeleteAddressLists(), AddDisplayDevice(), ArbpSeedRangeList(), AVrfInitializeVerifier(), DeviceMachine::CallRequest(), DeviceMachine::CallWait(), CloneAddrInfo(), CmpDereferenceNameControlBlockWithLock(), co_IntUpdateWindows(), ATL::CAtlList< E, ETraits >::CreateNode(), DECLARE_INTERFACE_(), DeviceMachine::Delay(), ATL::CAtlPlex::Destroy(), DosAllocateMemory(), DosLoadDriver(), EnumVARIANT_Next(), ExFreeToZone(), ExSwapinWorkerThreads(), Ext2bhReaperThread(), Ext2CleanupAllMcbs(), Ext2DestroyMdl(), Ext2FcbReaperThread(), Ext2FlushFiles(), Ext2InvalidateVolumes(), Ext2IsHandleCountZero(), Ext2McbReaperThread(), Ext2MountVolume(), Ext2PurgeVolume(), Ext2QueryUnusedFcb(), Ext2ShutDown(), XhciRootHub::FillSpeeds(), find_next_pci_vendor_capability(), find_pci_vendor_capabilities(), XhciRegisters::FindExtendedCapability(), XhciUsbDevice::FinishReconfigure(), FreeMemoryManagement(), FreeRedirection(), FrLdrHeapRemoveFreeList(), get_mmioFromProfile(), GetEnhancedVar(), GetNextListEntry(), GetNextString(), GetPossibleSettings(), GetTimeZoneEntryByIndex(), HalpAcpiFindRsdtPhase0(), HubDescFindInterface(), HubDescNextMsOs20(), HubSha1Compress(), InfpCacheFreeLine(), InfpCacheFreeSection(), InfpFreeLine(), InfpFreeSection(), InitializeModeTable(), XhciBulkRing::InsertLink(), XhciIsochRing::InsertLink(), IntSendChildNCPaint(), IopArbPortGetNextAlias(), KdbGetHistoryEntry(), KeRegisterNmiCallback(), LdrpCheckForLoadedDllHandle(), LdrpNameToOrdinal(), LdrpRunShimEngineInitRoutine(), NBFlushPacketQueue(), NBSendPackets(), NdrFullPointerXlatFree(), CZipEnumerator::NextUnique(), NtSetInformationProcess(), XhciUsbDevice::OnDisableSlotDone(), PciBuildRequirementsList(), PortCompletionDpc(), DeviceMachine::PrepareConfigLists(), psh_glyph_compute_extrema(), QueryDNS(), DeviceMachine::Request(), RtlDeleteOwnersRanges(), RtlGetNextRange(), RtlpDphCoalesceFreeIntoAvailable(), RtlpDphFreeDelayedBlocksFromHeap(), RtlpDphRemoveFromFreeList(), RtlpDphTakeNodeFromUnusedList(), RtlpPageHeapDestroy(), RtlpReleaseWaitBlockLockExclusive(), RtlpReleaseWaitBlockLockLastShared(), RtlpRemoveHeapFromProcessList(), run_tests(), SettingsPageProc(), CEnumMergedFolder::Skip(), HubMachine::StartDromOrSkip(), XhciUsbDevice::SubmitDisableSlot(), SYSLINK_GetNextLink(), test_pack_FULL_PTR_TO_REFID_ELEMENT(), test_pack_INTERNET_BUFFERSA(), test_pack_INTERNET_BUFFERSW(), test_pack_SINGLE_LIST_ENTRY(), TestXListFunctional(), DeviceMachine::Then(), USBH_OpenConfiguration(), USBPORT_FlushPendingTransfers(), UserUpdateWindows(), VGADDI_FreeSavedScreenBits(), DeviceMachine::Wait(), and XhciControlRing::WriteTd().
| WDF_MEMORY_DESCRIPTOR OutputDescriptor |
Definition at line 98 of file slotdev.cpp.
Definition at line 85 of file slotdev.cpp.
Referenced by AcpiTbPrintTableHeader(), AcpiUtSetIntegerWidth(), ADVAPI_GetComputerSid(), GetVersionInformationFromInfFile(), HubIdBuildHardwareIds(), HubIdGenerateContainerId(), IsVesaBiosOk(), XhciRootHub::ParseProtocol(), RtlAddAccessAllowedAce(), RtlAddAccessAllowedAceEx(), RtlAddAccessAllowedObjectAce(), RtlAddAccessDeniedAce(), RtlAddAccessDeniedAceEx(), RtlAddAccessDeniedObjectAce(), RtlAddAuditAccessAce(), RtlAddAuditAccessAceEx(), RtlAddAuditAccessObjectAce(), RtlCreateSecurityDescriptor(), RtlCreateSecurityDescriptorRelative(), RtlGetControlSecurityDescriptor(), RtlpAddKnownAce(), RtlpAddKnownObjectAce(), RtlSetAttributesSecurityDescriptor(), RtlxAddAuditAccessAceEx(), RtlxAddMandatoryLabelAceEx(), test_pack_SECURITY_DESCRIPTOR(), test_pack_SECURITY_DESCRIPTOR_RELATIVE(), and test_pack_SID().
| Input Signature = ACPI_EVAL_INPUT_BUFFER_COMPLEX_SIGNATURE |
Definition at line 118 of file slotdev.cpp.
Definition at line 101 of file slotdev.cpp.
Definition at line 102 of file slotdev.cpp.
Referenced by XhciEvtControllerUsbDeviceAdd().
Definition at line 84 of file slotdev.cpp.
Referenced by AcpiGetVendorResource(), CheckPlatformCap(), CreateInstanceKey(), ExUuidCreate(), I_UuidCreate(), if(), NetClassInstaller(), RpcBindingFromStringBindingA(), RpcBindingFromStringBindingW(), START_TEST(), test_pack_RPC_IF_ID(), test_pack_UUID_VECTOR(), UuidCreate(), UuidCreateNil(), UuidCreateSequential(), UuidIsNil(), UuidToStringA(), and UuidToStringW().
Definition at line 99 of file slotdev.cpp.
|
static |
Definition at line 62 of file slotdev.cpp.
Referenced by XhciEvtControllerUsbDeviceAdd().
Definition at line 18 of file slotdev.cpp.