Trait kernel::hil::usb::UsbController
source · pub trait UsbController<'a> {
Show 14 methods
// Required methods
fn set_client(&self, client: &'a dyn Client<'a>);
fn endpoint_set_ctrl_buffer(&self, buf: &'a [VolatileCell<u8>]);
fn endpoint_set_in_buffer(
&self,
endpoint: usize,
buf: &'a [VolatileCell<u8>],
);
fn endpoint_set_out_buffer(
&self,
endpoint: usize,
buf: &'a [VolatileCell<u8>],
);
fn enable_as_device(&self, speed: DeviceSpeed);
fn attach(&self);
fn detach(&self);
fn set_address(&self, addr: u16);
fn enable_address(&self);
fn endpoint_in_enable(&self, transfer_type: TransferType, endpoint: usize);
fn endpoint_out_enable(&self, transfer_type: TransferType, endpoint: usize);
fn endpoint_in_out_enable(
&self,
transfer_type: TransferType,
endpoint: usize,
);
fn endpoint_resume_in(&self, endpoint: usize);
fn endpoint_resume_out(&self, endpoint: usize);
}
Expand description
USB controller interface