Skip to content

xHCI

Member TypeMember Name
uint8_tcap_length
uint8_treserved
uint16_thci_version
uint32_thcs_params1
uint32_thcs_params2
uint32_thcs_params3
uint32_thcc_params1
uint32_tdboff
uint32_trtsoff
uint32_thcc_params2
Member TypeMember Name
uint32_tportsc
uint32_tportpmsc
uint32_tportli
uint32_tportct
Member TypeMember Name
union { uint32_t raw; struct { uint32_t run_stop : 1; uint32_t host_controller_reset : 1; uint32_t interrupter_enable : 1; uint32_t host_system_error_en : 1; uint32_t reserved0 : 3; uint32_t light_host_controller_reset : 1; uint32_t controller_save_state : 1; uint32_t controller_restore_state : 1; uint32_t enable_wrap_event : 1; uint32_t enable_u3_mf_index : 1; uint32_t reserved1 : 1; uint32_t cem_enable : 1; uint32_t extended_tbc_enable : 1; uint32_t extended_tbc_trb_status_enable : 1; uint32_t vtio_enable : 1; uint32_t reserved2 : 15; }; }None
Member TypeMember Name
uint32_troute_string
uint32_tspeed
uint32_treserved0
uint32_tmtt
uint32_thub
uint32_tcontext_entries
uint32_tmax_exit_latency
uint32_troot_hub_port
uint32_tnum_ports
uint32_tparent_hub_slot_id
uint32_tparent_port_number
uint32_tparent_think_time
uint32_treserved1
uint32_tinterrupter_target
uint32_tusb_device_address
uint32_treserved2
uint32_tslot_state
uint32_treserved3[4]
Member TypeMember Name
uint32_tep_state
uint32_treserved1
uint32_tmult
uint32_tmax_pstreams
uint32_tlsa
uint32_tinterval
uint32_tmax_esit_payload_hi
uint32_treserved2
uint32_terror_count
uint32_tep_type
uint32_treserved3
uint32_thost_initiate_disable
uint32_tmax_burst_size
uint32_tmax_packet_size
union { uint64_t dequeue_ptr_raw; struct { uint32_t dcs : 1; /* Dequeue cycle state - value of the xHC CCS * (Consumer Cycle State) flag for the TRB * referenced by the TR Dequeue pointer. * '0' if max_pstreams > '0' */ uint32_t reserved4 : 3; uint64_t dequeue_ptr : 60; /* dequeue pointer * MUST be aligned to 16 BYTE BOUNDARY */ }; }None
uint32_taverage_trb_length
uint32_tmax_esit_payload_lo
uint32_treserved5[3]
Member TypeMember Name
uint32_tdrop_flags
uint32_tadd_flags
uint32_treserved[5]
uint32_tconfig
uint32_tinterface_num
uint32_talternate_setting
uint32_treserved1
Member TypeMember Name
struct xhci_input_ctrl_ctxctrl_ctx
struct xhci_slot_ctxslot_ctx
struct xhci_ep_ctxep_ctx[31]
Member TypeMember Name
struct xhci_slot_ctxslot_ctx
struct xhci_ep_ctxep_ctx[32]
Member TypeMember Name
struct xhci_usbcmdusbcmd
uint32_tusbsts
uint32_tpagesize
uint32_treserved[2]
uint32_tdnctrl
uint64_tcrcr
uint32_treserved2[4]
uint64_tdcbaap
uint32_tconfig
uint32_treserved3[241]
struct xhci_port_regsregs[]
Member TypeMember Name
uint64_tparameter
uint32_tstatus
uint32_tcontrol
Member TypeMember Name
struct xhci_trb*trbs
uint64_tphys
uint32_tenqueue_index
uint32_tdequeue_index
uint8_tcycle
uint32_tsize
Member TypeMember Name
uint64_tring_segment_base
uint32_tring_segment_size
uint32_treserved
Member TypeMember Name
union { uint64_t raw; struct { uint64_t desi : 3; /* Dequeue ERST Segment Index */ uint64_t ehb : 1; /* Event Handler Busy */ uint64_t event_ring_pointer : 60; }; }None
Member TypeMember Name
uint32_timan
uint32_timod
uint32_terstsz
uint32_treserved
uint64_terstba
union { struct xhci_erdp erdp; uint64_t erdp_raw; }None
Member TypeMember Name
booldevice_connected
uint8_tspeed
uint8_tslot_id
boolusb3
struct xhci_ring*ep_rings[32]
Member TypeMember Name
uint64_tptrs[256]
Member TypeMember Name
uint8_tcap_id
uint8_tnext
uint16_tcap_specific
Member TypeMember Name
uint8_tirq
struct pci_device*pci
struct xhci_input_ctx*input_ctx
struct xhci_cap_regs*cap_regs
struct xhci_op_regs*op_regs
struct xhci_interrupter_regs*intr_regs
struct xhci_dcbaa*dcbaa
struct xhci_ring*event_ring
struct xhci_ring*cmd_ring
struct xhci_erst_entry*erst
struct xhci_port_regs*port_regs
uint64_tports
struct xhci_port_infoport_info[64]
uint64_tnum_devices
struct usb_device**devices