#[repr(C)]pub struct Usb2HostControllerProtocol {Show 15 fields
pub get_capability: unsafe extern "efiapi" fn(this: *const Self, max_speed: *mut Speed, port_number: *mut u8, is_64_bit_capable: *mut u8) -> Status,
pub reset: unsafe extern "efiapi" fn(this: *mut Self, attributes: ResetAttributes) -> Status,
pub get_state: unsafe extern "efiapi" fn(this: *mut Self, state: *mut HostControllerState) -> Status,
pub set_state: unsafe extern "efiapi" fn(this: *mut Self, state: HostControllerState) -> Status,
pub control_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, device_speed: Speed, maximum_packet_length: usize, request: *const DeviceRequest, transfer_direction: DataDirection, data: *mut c_void, data_length: *mut usize, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status,
pub bulk_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: *mut usize, data_toggle: *mut u8, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status,
pub async_interrupt_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, is_new_transfer: Boolean, data_toggle: *mut u8, polling_interval: usize, data_length: usize, translator: *const TransactionTranslator, callback_function: AsyncUsbTransferCallback, context: *mut c_void) -> Status,
pub sync_interrupt_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data: *mut c_void, data_length: *mut usize, data_toggle: *mut u8, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status,
pub isochronous_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status,
pub async_isochronous_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: usize, translator: *const TransactionTranslator, isochronous_callback: AsyncUsbTransferCallback, context: *mut c_void) -> Status,
pub get_root_hub_port_status: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, port_status: *mut UsbPortStatus) -> Status,
pub set_root_hub_port_feature: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, port_feature: PortFeature) -> Status,
pub clear_root_hub_port_feature: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, feature: PortFeature) -> Status,
pub major_revision: u16,
pub minor_revision: u16,
}Fields§
§get_capability: unsafe extern "efiapi" fn(this: *const Self, max_speed: *mut Speed, port_number: *mut u8, is_64_bit_capable: *mut u8) -> Status§reset: unsafe extern "efiapi" fn(this: *mut Self, attributes: ResetAttributes) -> Status§get_state: unsafe extern "efiapi" fn(this: *mut Self, state: *mut HostControllerState) -> Status§set_state: unsafe extern "efiapi" fn(this: *mut Self, state: HostControllerState) -> Status§control_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, device_speed: Speed, maximum_packet_length: usize, request: *const DeviceRequest, transfer_direction: DataDirection, data: *mut c_void, data_length: *mut usize, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status§bulk_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: *mut usize, data_toggle: *mut u8, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status§async_interrupt_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, is_new_transfer: Boolean, data_toggle: *mut u8, polling_interval: usize, data_length: usize, translator: *const TransactionTranslator, callback_function: AsyncUsbTransferCallback, context: *mut c_void) -> Status§sync_interrupt_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data: *mut c_void, data_length: *mut usize, data_toggle: *mut u8, timeout: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status§isochronous_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: usize, translator: *const TransactionTranslator, transfer_result: *mut UsbTransferStatus) -> Status§async_isochronous_transfer: unsafe extern "efiapi" fn(this: *mut Self, device_address: u8, endpoint_address: u8, device_speed: Speed, maximum_packet_length: usize, data_buffers_number: u8, data: *const *const c_void, data_length: usize, translator: *const TransactionTranslator, isochronous_callback: AsyncUsbTransferCallback, context: *mut c_void) -> Status§get_root_hub_port_status: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, port_status: *mut UsbPortStatus) -> Status§set_root_hub_port_feature: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, port_feature: PortFeature) -> Status§clear_root_hub_port_feature: unsafe extern "efiapi" fn(this: *mut Self, port_number: u8, feature: PortFeature) -> Status§major_revision: u16§minor_revision: u16Implementations§
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Usb2HostControllerProtocol
impl RefUnwindSafe for Usb2HostControllerProtocol
impl Send for Usb2HostControllerProtocol
impl Sync for Usb2HostControllerProtocol
impl Unpin for Usb2HostControllerProtocol
impl UnwindSafe for Usb2HostControllerProtocol
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more