XHCI
XHCI::CancelQueuedTransfers(Pipe *pipe, bool force)
XHCI::StartDebugTransfer(Transfer *transfer)
XHCI::CheckDebugTransfer(Transfer *transfer)
XHCI::CancelDebugTransfer(Transfer *transfer)
XHCI::NotifyPipeChange(Pipe *pipe, usb_change change)
XHCI::CreateDescriptor(uint32 trbCount, uint32 bufferCount, size_t bufferSize)
XHCI::FreeDescriptor(xhci_td *descriptor)
XHCI::WriteDescriptor(xhci_td *descriptor, generic_io_vec *vector, size_t vectorCount, bool physical)
XHCI::ReadDescriptor(xhci_td *descriptor, generic_io_vec *vector, size_t vectorCount, bool physical)
XHCI::AllocateDevice(Hub *parent, int8 hubAddress, uint8 hubPort,
XHCI::FreeDevice(Device *usbDevice)
XHCI::CleanupDevice(xhci_device *device)
XHCI::_GetEndpointState(xhci_endpoint* endpoint)
XHCI::_InsertEndpointForPipe(Pipe *pipe)
XHCI::_RemoveEndpointForPipe(Pipe *pipe)
XHCI::_LinkDescriptorForPipe(xhci_td *descriptor, xhci_endpoint *endpoint)
XHCI::_UnlinkDescriptorForPipe(xhci_td *descriptor, xhci_endpoint *endpoint)
XHCI::ConfigureEndpoint(xhci_endpoint* ep, uint8 slot, uint8 number, uint8 type,
XHCI::GetPortSpeed(uint8 index, usb_speed* speed)
XHCI::GetPortStatus(uint8 index, usb_port_status* status)
XHCI::SetPortFeature(uint8 index, uint16 feature)
XHCI::ClearPortFeature(uint8 index, uint16 feature)
XHCI::ControllerHalt()
XHCI::ControllerReset()
XHCI::InterruptHandler(void* data)
return ((XHCI*)data)->Interrupt();
XHCI::Interrupt()
XHCI::Ring(uint8 slot, uint8 endpoint)
XHCI::QueueCommand(xhci_trb* trb)
XHCI::HandleCmdComplete(xhci_trb* trb)
XHCI::HandleTransferComplete(xhci_trb* trb)
XHCI::DumpRing(xhci_trb *trbs, uint32 size)
XHCI::DoCommand(xhci_trb* trb)
XHCI::Noop()
XHCI::EnableSlot(uint8* slot)
XHCI::DisableSlot(uint8 slot)
XHCI::SetAddress(uint64 inputContext, bool bsr, uint8 slot)
XHCI::ConfigureEndpoint(uint64 inputContext, bool deconfigure, uint8 slot)
XHCI::EvaluateContext(uint64 inputContext, uint8 slot)
XHCI::ResetEndpoint(bool preserve, xhci_endpoint* endpoint)
XHCI::StopEndpoint(bool suspend, xhci_endpoint* endpoint)
XHCI::SetTRDequeue(uint64 dequeue, uint16 stream, uint8 endpoint, uint8 slot)
XHCI::ResetDevice(uint8 slot)
XHCI::EventThread(void* data)
((XHCI *)data)->CompleteEvents();
XHCI::CompleteEvents()
XHCI::ProcessEvents()
XHCI::FinishThread(void* data)
((XHCI *)data)->FinishTransfers();
XHCI::FinishTransfers()
XHCI::WriteOpReg(uint32 reg, uint32 value)
XHCI::ReadOpReg(uint32 reg)
XHCI::WaitOpBits(uint32 reg, uint32 mask, uint32 expected)
XHCI::ReadCapReg32(uint32 reg)
XHCI::WriteCapReg32(uint32 reg, uint32 value)
XHCI::ReadRunReg32(uint32 reg)
XHCI::WriteRunReg32(uint32 reg, uint32 value)
XHCI::ReadDoorReg32(uint32 reg)
XHCI::WriteDoorReg32(uint32 reg, uint32 value)
XHCI::_OffsetContextAddr(addr_t p)
XHCI::_ReadContext(uint32* p)
XHCI::_WriteContext(uint32* p, uint32 value)
XHCI::_ReadContext(uint64* p)
XHCI::_WriteContext(uint64* p, uint64 value)
XHCI::XHCI(pci_info *info, pci_device_module_info* pci, pci_device* device, Stack *stack,
XHCI* xhci;
XHCI::~XHCI()
XHCI::_SwitchIntelPorts()
XHCI::Start()
XHCI *xhci = new(std::nothrow) XHCI(&bus->pciinfo, bus->pci, bus->device, stack, node);
XHCI::SubmitTransfer(Transfer *transfer)
XHCI::SubmitControlRequest(Transfer *transfer)
XHCI::SubmitNormalRequest(Transfer *transfer)
XHCI* xhci = (XHCI*)bus_cookie;
static status_t ProcessTransfer(XHCI *ehci,
class XHCI : public BusManager {
XHCI(pci_info *info, pci_device_module_info* pci, pci_device* device, Stack *stack,
~XHCI();
XHCIRootHub::ProcessTransfer(XHCI *xhci, Transfer *transfer)