ReactOS 0.4.17-dev-1281-g065abb3
mmio.cpp File Reference
#include "xhcidrv.h"
#include <debug.h>
Include dependency graph for mmio.cpp:

Go to the source code of this file.

Macros

#define NDEBUG
 
#define XHCI_VENDOR_ETRON_FIRMWARE   0x4000
 
#define XHCI_VENDOR_ETRON_CONTROL   0x4074
 
#define XHCI_VENDOR_TI_FIRMWARE   0xC120
 
#define XHCI_VENDOR_FRESCO_CONTROL   0x8090
 
#define XHCI_VENDOR_PPT_BULK   0x8094
 
#define XHCI_VENDOR_FRESCO_SHADOW   0x80DC
 
#define XHCI_VENDOR_PME   0x80A4
 
#define XHCI_VENDOR_SSIC_PORT   0x883C
 
#define XHCI_SSIC_PROG_DONE   0x40000000
 
#define XHCI_SSIC_PROG_UNUSED   0x80000000
 
#define XHCI_VENDOR_SAVED_BIT   0x02000000
 
#define XHCI_HANDOFF_WAITS   20
 
#define XHCI_HANDOFF_WAIT_MS   100
 
#define XHCI_CNR_WAITS   100
 
#define XHCI_CNR_WAIT_MS   100
 
#define XHCI_HALT_WAITS   16
 
#define XHCI_RESET_WAITS   100
 
#define XHCI_RESET_MAX_STEP_MS   16
 
#define XHCI_RESET_SLOW_MS   50
 
#define XHCI_RUN_STALLS   50
 
#define XHCI_RUN_STALL_US   100
 
#define XHCI_RUN_WAITS   7
 
#define XHCI_RUN_WAIT_MS   5
 
#define XHCI_STATE_WAITS   20
 

Functions

static VOID NTAPI XhciSleepMs (_In_ ULONG Milliseconds)
 

Variables

static const ULONG XhciVendorBitRegisters [] = { 0x8904, 0x8A14, 0x8B24 }
 

Macro Definition Documentation

◆ NDEBUG

#define NDEBUG

Definition at line 10 of file mmio.cpp.

◆ XHCI_CNR_WAIT_MS

#define XHCI_CNR_WAIT_MS   100

Definition at line 32 of file mmio.cpp.

◆ XHCI_CNR_WAITS

#define XHCI_CNR_WAITS   100

Definition at line 31 of file mmio.cpp.

◆ XHCI_HALT_WAITS

#define XHCI_HALT_WAITS   16

Definition at line 33 of file mmio.cpp.

◆ XHCI_HANDOFF_WAIT_MS

#define XHCI_HANDOFF_WAIT_MS   100

Definition at line 30 of file mmio.cpp.

◆ XHCI_HANDOFF_WAITS

#define XHCI_HANDOFF_WAITS   20

Definition at line 29 of file mmio.cpp.

◆ XHCI_RESET_MAX_STEP_MS

#define XHCI_RESET_MAX_STEP_MS   16

Definition at line 35 of file mmio.cpp.

◆ XHCI_RESET_SLOW_MS

#define XHCI_RESET_SLOW_MS   50

Definition at line 36 of file mmio.cpp.

◆ XHCI_RESET_WAITS

#define XHCI_RESET_WAITS   100

Definition at line 34 of file mmio.cpp.

◆ XHCI_RUN_STALL_US

#define XHCI_RUN_STALL_US   100

Definition at line 38 of file mmio.cpp.

◆ XHCI_RUN_STALLS

#define XHCI_RUN_STALLS   50

Definition at line 37 of file mmio.cpp.

◆ XHCI_RUN_WAIT_MS

#define XHCI_RUN_WAIT_MS   5

Definition at line 40 of file mmio.cpp.

◆ XHCI_RUN_WAITS

#define XHCI_RUN_WAITS   7

Definition at line 39 of file mmio.cpp.

◆ XHCI_SSIC_PROG_DONE

#define XHCI_SSIC_PROG_DONE   0x40000000

Definition at line 22 of file mmio.cpp.

◆ XHCI_SSIC_PROG_UNUSED

#define XHCI_SSIC_PROG_UNUSED   0x80000000

Definition at line 23 of file mmio.cpp.

◆ XHCI_STATE_WAITS

#define XHCI_STATE_WAITS   20

Definition at line 41 of file mmio.cpp.

◆ XHCI_VENDOR_ETRON_CONTROL

#define XHCI_VENDOR_ETRON_CONTROL   0x4074

Definition at line 15 of file mmio.cpp.

◆ XHCI_VENDOR_ETRON_FIRMWARE

#define XHCI_VENDOR_ETRON_FIRMWARE   0x4000

Definition at line 14 of file mmio.cpp.

◆ XHCI_VENDOR_FRESCO_CONTROL

#define XHCI_VENDOR_FRESCO_CONTROL   0x8090

Definition at line 17 of file mmio.cpp.

◆ XHCI_VENDOR_FRESCO_SHADOW

#define XHCI_VENDOR_FRESCO_SHADOW   0x80DC

Definition at line 19 of file mmio.cpp.

◆ XHCI_VENDOR_PME

#define XHCI_VENDOR_PME   0x80A4

Definition at line 20 of file mmio.cpp.

◆ XHCI_VENDOR_PPT_BULK

#define XHCI_VENDOR_PPT_BULK   0x8094

Definition at line 18 of file mmio.cpp.

◆ XHCI_VENDOR_SAVED_BIT

#define XHCI_VENDOR_SAVED_BIT   0x02000000

Definition at line 24 of file mmio.cpp.

◆ XHCI_VENDOR_SSIC_PORT

#define XHCI_VENDOR_SSIC_PORT   0x883C

Definition at line 21 of file mmio.cpp.

◆ XHCI_VENDOR_TI_FIRMWARE

#define XHCI_VENDOR_TI_FIRMWARE   0xC120

Definition at line 16 of file mmio.cpp.

Function Documentation

◆ XhciSleepMs()

static VOID NTAPI XhciSleepMs ( _In_ ULONG  Milliseconds)
static

Definition at line 46 of file mmio.cpp.

48{
50
52}
#define FALSE
Definition: types.h:117
#define KeDelayExecutionThread(mode, foo, t)
Definition: env_spec_w32.h:484
#define KernelMode
Definition: asm.h:38
DWORD Interval
Definition: netstat.c:28
FORCEINLINE LARGE_INTEGER NTAPI XhciRelativeMs(_In_ ULONG Milliseconds)
Definition: xhciutil.h:137

Referenced by XhciRegisters::BiosHandoff(), XhciRegisters::ResetController(), XhciRegisters::Run(), XhciRegisters::Stop(), and XhciRegisters::WaitForReady().

Variable Documentation

◆ XhciVendorBitRegisters

const ULONG XhciVendorBitRegisters[] = { 0x8904, 0x8A14, 0x8B24 }
static

Definition at line 26 of file mmio.cpp.

Referenced by XhciRegisters::RestoreVendorBits(), and XhciRegisters::SaveVendorBits().