iPXE
|
An xHCI device. More...
#include <xhci.h>
Data Fields | |
void * | regs |
Registers. More... | |
struct dma_device * | dma |
DMA device. More... | |
const char * | name |
Name. More... | |
unsigned int | quirks |
Quirks. More... | |
void * | cap |
Capability registers. More... | |
void * | op |
Operational registers. More... | |
void * | run |
Runtime registers. More... | |
void * | db |
Doorbell registers. More... | |
unsigned int | slots |
Number of device slots. More... | |
unsigned int | intrs |
Number of interrupters. More... | |
unsigned int | ports |
Number of ports. More... | |
int | addr64 |
64-bit addressing capability More... | |
unsigned int | csz_shift |
Context size shift. More... | |
unsigned int | xecp |
xHCI extended capabilities offset More... | |
size_t | pagesize |
Page size. More... | |
unsigned int | legacy |
USB legacy support capability (if present and enabled) More... | |
struct xhci_dcbaa | dcbaa |
Device context base address array. More... | |
struct xhci_scratchpad | scratch |
Scratchpad buffer. More... | |
struct xhci_trb_ring | command |
Command ring. More... | |
struct xhci_event_ring | event |
Event ring. More... | |
union xhci_trb * | pending |
Current command (if any) More... | |
int | failed |
Command mechanism has permanently failed. More... | |
struct xhci_slot ** | slot |
Device slots, indexed by slot ID. More... | |
struct usb_bus * | bus |
USB bus. More... | |
struct xhci_pch | pch |
Intel PCH quirk. More... | |
void* xhci_device::regs |
struct dma_device* xhci_device::dma |
DMA device.
Definition at line 1071 of file xhci.h.
Referenced by xhci_context(), xhci_dcbaa_alloc(), xhci_device_open(), xhci_endpoint_message(), xhci_endpoint_stream(), xhci_event_alloc(), xhci_probe(), xhci_ring_alloc(), and xhci_scratchpad_alloc().
const char* xhci_device::name |
Name.
Definition at line 1073 of file xhci.h.
Referenced by xhci_abort(), xhci_address_device(), xhci_command(), xhci_command_alloc(), xhci_complete(), xhci_configure_endpoint(), xhci_dcbaa_alloc(), xhci_deconfigure_endpoint(), xhci_device_close(), xhci_device_open(), xhci_disable_slot(), xhci_dump(), xhci_dump_port(), xhci_enable_slot(), xhci_endpoint_open(), xhci_endpoint_reset(), xhci_evaluate_context(), xhci_event_alloc(), xhci_event_poll(), xhci_host_controller(), xhci_init(), xhci_legacy_claim(), xhci_legacy_init(), xhci_legacy_release(), xhci_nop(), xhci_pch_fix(), xhci_port_protocol(), xhci_port_psiv(), xhci_port_speed(), xhci_probe(), xhci_remove(), xhci_reset(), xhci_reset_endpoint(), xhci_root_clear_tt(), xhci_root_enable(), xhci_root_speed(), xhci_scratchpad_alloc(), xhci_set_tr_dequeue_pointer(), xhci_stop(), xhci_stop_endpoint(), xhci_supported_protocol(), xhci_transfer(), and xhci_writeq().
unsigned int xhci_device::quirks |
Quirks.
Definition at line 1075 of file xhci.h.
Referenced by xhci_port_protocol(), xhci_port_psiv(), xhci_port_speed(), xhci_probe(), and xhci_remove().
void* xhci_device::cap |
Capability registers.
Definition at line 1078 of file xhci.h.
Referenced by xhci_extended_capability(), xhci_init(), xhci_legacy_claim(), xhci_legacy_init(), xhci_legacy_release(), xhci_port_protocol(), xhci_port_psiv(), xhci_port_slot_type(), xhci_port_speed(), and xhci_supported_protocol().
void* xhci_device::op |
Operational registers.
Definition at line 1080 of file xhci.h.
Referenced by xhci_abort(), xhci_command_alloc(), xhci_command_free(), xhci_dcbaa_alloc(), xhci_dcbaa_free(), xhci_dump(), xhci_dump_port(), xhci_init(), xhci_port_status(), xhci_reset(), xhci_root_disable(), xhci_root_enable(), xhci_root_open(), xhci_root_speed(), xhci_run(), and xhci_stop().
void* xhci_device::run |
Runtime registers.
Definition at line 1082 of file xhci.h.
Referenced by xhci_event_alloc(), xhci_event_free(), xhci_event_poll(), and xhci_init().
void* xhci_device::db |
Doorbell registers.
Definition at line 1084 of file xhci.h.
Referenced by xhci_init(), and xhci_ring_alloc().
unsigned int xhci_device::slots |
Number of device slots.
Definition at line 1087 of file xhci.h.
Referenced by xhci_bus_close(), xhci_bus_open(), xhci_dcbaa_alloc(), xhci_dcbaa_free(), xhci_fail(), xhci_init(), xhci_run(), and xhci_transfer().
unsigned int xhci_device::intrs |
unsigned int xhci_device::ports |
Number of ports.
Definition at line 1091 of file xhci.h.
Referenced by xhci_init(), xhci_port_status(), xhci_probe(), and xhci_root_open().
int xhci_device::addr64 |
64-bit addressing capability
Definition at line 1094 of file xhci.h.
Referenced by xhci_init(), xhci_probe(), and xhci_writeq().
unsigned int xhci_device::csz_shift |
Context size shift.
Definition at line 1096 of file xhci.h.
Referenced by xhci_device_context_offset(), xhci_init(), and xhci_input_context_offset().
unsigned int xhci_device::xecp |
xHCI extended capabilities offset
Definition at line 1098 of file xhci.h.
Referenced by xhci_extended_capability(), and xhci_init().
size_t xhci_device::pagesize |
Page size.
Definition at line 1101 of file xhci.h.
Referenced by xhci_init(), xhci_scratchpad_alloc(), and xhci_scratchpad_free().
unsigned int xhci_device::legacy |
USB legacy support capability (if present and enabled)
Definition at line 1104 of file xhci.h.
Referenced by xhci_legacy_claim(), xhci_legacy_init(), and xhci_legacy_release().
struct xhci_dcbaa xhci_device::dcbaa |
Device context base address array.
Definition at line 1107 of file xhci.h.
Referenced by xhci_dcbaa_alloc(), xhci_dcbaa_free(), xhci_device_close(), xhci_device_open(), xhci_fail(), xhci_scratchpad_alloc(), and xhci_scratchpad_free().
struct xhci_scratchpad xhci_device::scratch |
Scratchpad buffer.
Definition at line 1110 of file xhci.h.
Referenced by xhci_init(), xhci_scratchpad_alloc(), and xhci_scratchpad_free().
struct xhci_trb_ring xhci_device::command |
Command ring.
Definition at line 1113 of file xhci.h.
Referenced by xhci_abort(), xhci_command(), xhci_command_alloc(), xhci_command_free(), and xhci_complete().
struct xhci_event_ring xhci_device::event |
Event ring.
Definition at line 1115 of file xhci.h.
Referenced by xhci_event_alloc(), xhci_event_free(), and xhci_event_poll().
union xhci_trb* xhci_device::pending |
Current command (if any)
Definition at line 1117 of file xhci.h.
Referenced by xhci_command(), and xhci_complete().
int xhci_device::failed |
Command mechanism has permanently failed.
Definition at line 1119 of file xhci.h.
Referenced by xhci_command(), xhci_event_poll(), and xhci_fail().
struct xhci_slot** xhci_device::slot |
Device slots, indexed by slot ID.
Definition at line 1122 of file xhci.h.
Referenced by xhci_bus_close(), xhci_bus_open(), xhci_device_close(), xhci_device_open(), and xhci_transfer().
struct usb_bus* xhci_device::bus |
USB bus.
Definition at line 1125 of file xhci.h.
Referenced by xhci_port_status(), xhci_probe(), and xhci_remove().
struct xhci_pch xhci_device::pch |
Intel PCH quirk.
Definition at line 1128 of file xhci.h.
Referenced by xhci_pch_fix(), and xhci_pch_undo().