pub struct XhciController { /* private fields */ }Expand description
State of the xHCI controller
Implementations§
Source§impl XhciController
impl XhciController
Sourcepub unsafe fn new(mmio_base: u64) -> Result<Self, KernelError>
pub unsafe fn new(mmio_base: u64) -> Result<Self, KernelError>
Create a new xHCI controller instance from its MMIO base address.
§Safety
mmio_base must point to a valid xHCI MMIO region that is
identity-mapped or otherwise accessible. This function reads capability
registers to determine the layout.
Sourcepub fn capabilities(&self) -> &XhciCapabilities
pub fn capabilities(&self) -> &XhciCapabilities
Get the controller capabilities
Sourcepub fn ring_command_doorbell(&self)
pub fn ring_command_doorbell(&self)
Ring the command doorbell (doorbell register 0, target 0)
Sourcepub fn ring_transfer_doorbell(&self, slot_id: u8, endpoint_id: u8)
pub fn ring_transfer_doorbell(&self, slot_id: u8, endpoint_id: u8)
Ring a transfer doorbell for a specific endpoint on a slot