|
ReactOS 0.4.17-dev-1281-g065abb3
|

Go to the source code of this file.
Macros | |
| #define | NDEBUG |
Enumerations | |
| enum class | XhciCtlStep : ULONG { Setup , FirstData , MoreData , DataEventData , Status , StatusEventData , Done } |
Functions | |
| static XhciControlRing *NTAPI | XhciCtlOf (_In_ XhciTransferRing *Ring) |
| static XhciMapState NTAPI | XhciCtlMapState (_In_ const XhciTransferRing *Ring) |
| static VOID NTAPI | XhciCtlSetMapState (_Inout_ XhciTransferRing *Ring, _In_ XhciMapState State) |
| static ULONG NTAPI | XhciCtlTrbType (_In_ enum XhciTrbType Type) |
| static BOOLEAN NTAPI | XhciCtlIsHaltCode (_In_ ULONG Code) |
| static BOOLEAN NTAPI | XhciCtlIsStopCode (_In_ ULONG Code) |
| static USBD_STATUS NTAPI | XhciCtlUsbdStatusFromNt (_In_ NTSTATUS Status) |
| static VOID NTAPI | XhciCtlWrap (_Inout_ XhciTransferRing *Ring, _In_ BOOLEAN FirstOfTd, _In_ BOOLEAN InDataStage) |
| static VOID NTAPI | XhciCtlPut (_Inout_ XhciTransferRing *Ring, _Inout_ PXHCI_TRB Trb, _In_ BOOLEAN FirstOfTd) |
| _Requires_lock_held_ (m_Ring->m_Lock) VOID XhciControlRing | |
Variables | |
| static const ULONG_PTR | XhciCtlStatusStageFlag = 0x4 |
| static const ULONG_PTR | XhciCtlValueFlagBits = 0x7 |
| static const ULONG | XhciCtlTagSignature = 0x6C744358 |
| static const ULONG | XhciCtlReasonBadTrbPointer = 0x101F |
| static const ULONG | XhciCtlReasonDuplicateEvent = 0x1020 |
| static const ULONG | XhciCtlMaxTransfer = 0x10000 |
| static const ULONG | XhciCtlMaxTrbLength = 0x10000 |
| static const ULONG | XhciCtlShortDataStageTrb = 512 |
| static const ULONG | XhciCtlImmediateBytes = 8 |
| static const ULONG | XhciCtlSetupBytes = 8 |
| static const ULONG | XhciCtlWorstCaseTd = 21 |
| #define NDEBUG |
Definition at line 10 of file ctrlxfer.cpp.
|
strong |
| Enumerator | |
|---|---|
| Setup | |
| FirstData | |
| MoreData | |
| DataEventData | |
| Status | |
| StatusEventData | |
| Done | |
Definition at line 32 of file ctrlxfer.cpp.
| _Requires_lock_held_ | ( | m_Ring-> | m_Lock | ) |
Completes a request; the ring lock is dropped around the WDF call.
Completes the held request unless a cancel or timer callback still has to run.
Definition at line 881 of file ctrlxfer.cpp.
Codes after which the controller halts the endpoint.
Definition at line 84 of file ctrlxfer.cpp.
Referenced by XhciControlRing::OnEventDataEvent(), and XhciControlRing::OnTrbEvent().
Definition at line 106 of file ctrlxfer.cpp.
Referenced by XhciControlRing::OnEventDataEvent(), and XhciControlRing::OnTrbEvent().
|
static |
Definition at line 55 of file ctrlxfer.cpp.
Referenced by XhciControlRing::BuildControlTd(), XhciControlRing::Disable(), XhciControlRing::DoorbellRungSinceFill(), XhciControlRing::ResumeRingFill(), XhciControlRing::SuspendRingFill(), and XhciControlRing::WriteTd().
|
static |
Definition at line 46 of file ctrlxfer.cpp.
Referenced by XhciControlRing::AllowReclaimOnCancel(), XhciControlRing::Cleanup(), XhciControlRing::ConsumePendingEvents(), XhciControlRing::Disable(), XhciControlRing::EnableForwardProgress(), XhciControlRing::Initialize(), XhciControlRing::OnTransferEvent(), XhciControlRing::RecoverTransfers(), XhciControlRing::ResumeRingFill(), and XhciControlRing::TagFromEvent().
|
static |
Stores a finished TRB; the first TRB of a TD stays invalid until the doorbell step.
Definition at line 160 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().
|
static |
Definition at line 64 of file ctrlxfer.cpp.
Referenced by XhciControlRing::BuildControlTd(), XhciControlRing::Disable(), XhciControlRing::ResumeRingFill(), XhciControlRing::SuspendRingFill(), and XhciControlRing::WriteTd().
|
static |
|
static |
URB status for a request that finished without a hardware completion code.
Definition at line 118 of file ctrlxfer.cpp.
|
static |
Writes a Link TRB back to the segment start at the enqueue index and wraps.
Definition at line 138 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().
Definition at line 26 of file ctrlxfer.cpp.
Referenced by XhciControlRing::Initialize().
Definition at line 23 of file ctrlxfer.cpp.
Referenced by XhciControlRing::PrepareTransfer().
Definition at line 24 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().
Definition at line 20 of file ctrlxfer.cpp.
Referenced by XhciControlRing::OnTrbEvent().
Definition at line 21 of file ctrlxfer.cpp.
Referenced by XhciControlRing::OnTrbEvent().
Definition at line 27 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().
Definition at line 25 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().
Definition at line 14 of file ctrlxfer.cpp.
Referenced by XhciControlRing::OnEventDataEvent(), and XhciControlRing::WriteTd().
Definition at line 17 of file ctrlxfer.cpp.
Referenced by XhciControlRing::Initialize(), and XhciControlRing::TagFromEvent().
Definition at line 15 of file ctrlxfer.cpp.
Referenced by XhciControlRing::TagFromEvent(), and XhciControlRing::WriteTd().
Definition at line 30 of file ctrlxfer.cpp.
Referenced by XhciControlRing::WriteTd().