Fix clippy
This commit is contained in:
parent
eeedaf2e76
commit
66e62e9994
5 changed files with 32 additions and 22 deletions
|
@ -39,6 +39,12 @@ pub struct State<'a> {
|
|||
shared: ControlShared,
|
||||
}
|
||||
|
||||
impl<'a> Default for State<'a> {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> State<'a> {
|
||||
/// Create a new `State`.
|
||||
pub fn new() -> Self {
|
||||
|
@ -242,7 +248,7 @@ impl<'d, D: Driver<'d>> CdcAcmClass<'d, D> {
|
|||
&[
|
||||
CDC_TYPE_UNION, // bDescriptorSubtype
|
||||
comm_if.into(), // bControlInterface
|
||||
data_if.into(), // bSubordinateInterface
|
||||
data_if, // bSubordinateInterface
|
||||
],
|
||||
);
|
||||
|
||||
|
|
|
@ -121,6 +121,12 @@ pub struct State<'a> {
|
|||
shared: ControlShared,
|
||||
}
|
||||
|
||||
impl<'a> Default for State<'a> {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> State<'a> {
|
||||
/// Create a new `State`.
|
||||
pub fn new() -> Self {
|
||||
|
@ -132,16 +138,11 @@ impl<'a> State<'a> {
|
|||
}
|
||||
|
||||
/// Shared data between Control and CdcAcmClass
|
||||
#[derive(Default)]
|
||||
struct ControlShared {
|
||||
mac_addr: [u8; 6],
|
||||
}
|
||||
|
||||
impl Default for ControlShared {
|
||||
fn default() -> Self {
|
||||
ControlShared { mac_addr: [0; 6] }
|
||||
}
|
||||
}
|
||||
|
||||
struct Control<'a> {
|
||||
mac_addr_string: StringIndex,
|
||||
shared: &'a ControlShared,
|
||||
|
@ -416,7 +417,7 @@ impl<'d, D: Driver<'d>> Sender<'d, D> {
|
|||
self.write_ep.write(&buf[..self.max_packet_size]).await?;
|
||||
|
||||
for chunk in d2.chunks(self.max_packet_size) {
|
||||
self.write_ep.write(&chunk).await?;
|
||||
self.write_ep.write(chunk).await?;
|
||||
}
|
||||
|
||||
// Send ZLP if needed.
|
||||
|
|
|
@ -79,6 +79,12 @@ pub struct State<'d> {
|
|||
out_report_offset: AtomicUsize,
|
||||
}
|
||||
|
||||
impl<'d> Default for State<'d> {
|
||||
fn default() -> Self {
|
||||
Self::new()
|
||||
}
|
||||
}
|
||||
|
||||
impl<'d> State<'d> {
|
||||
/// Create a new `State`.
|
||||
pub fn new() -> Self {
|
||||
|
@ -171,7 +177,7 @@ impl<'d, D: Driver<'d>, const READ_N: usize, const WRITE_N: usize> HidReaderWrit
|
|||
}
|
||||
|
||||
/// Waits for both IN and OUT endpoints to be enabled.
|
||||
pub async fn ready(&mut self) -> () {
|
||||
pub async fn ready(&mut self) {
|
||||
self.reader.ready().await;
|
||||
self.writer.ready().await;
|
||||
}
|
||||
|
@ -251,7 +257,7 @@ impl<'d, D: Driver<'d>, const N: usize> HidWriter<'d, D, N> {
|
|||
}
|
||||
|
||||
/// Waits for the interrupt in endpoint to be enabled.
|
||||
pub async fn ready(&mut self) -> () {
|
||||
pub async fn ready(&mut self) {
|
||||
self.ep_in.wait_enabled().await
|
||||
}
|
||||
|
||||
|
@ -286,7 +292,7 @@ impl<'d, D: Driver<'d>, const N: usize> HidWriter<'d, D, N> {
|
|||
|
||||
impl<'d, D: Driver<'d>, const N: usize> HidReader<'d, D, N> {
|
||||
/// Waits for the interrupt out endpoint to be enabled.
|
||||
pub async fn ready(&mut self) -> () {
|
||||
pub async fn ready(&mut self) {
|
||||
self.ep_out.wait_enabled().await
|
||||
}
|
||||
|
||||
|
@ -466,7 +472,7 @@ impl<'d> Handler for Control<'d> {
|
|||
HID_REQ_SET_IDLE => {
|
||||
if let Some(handler) = self.request_handler {
|
||||
let id = req.value as u8;
|
||||
let id = (id != 0).then(|| ReportId::In(id));
|
||||
let id = (id != 0).then_some(ReportId::In(id));
|
||||
let dur = u32::from(req.value >> 8);
|
||||
let dur = if dur == 0 { u32::MAX } else { 4 * dur };
|
||||
handler.set_idle_ms(id, dur);
|
||||
|
@ -522,7 +528,7 @@ impl<'d> Handler for Control<'d> {
|
|||
HID_REQ_GET_IDLE => {
|
||||
if let Some(handler) = self.request_handler {
|
||||
let id = req.value as u8;
|
||||
let id = (id != 0).then(|| ReportId::In(id));
|
||||
let id = (id != 0).then_some(ReportId::In(id));
|
||||
if let Some(dur) = handler.get_idle_ms(id) {
|
||||
let dur = u8::try_from(dur / 4).unwrap_or(0);
|
||||
buf[0] = dur;
|
||||
|
|
|
@ -281,7 +281,7 @@ pub struct BosWriter<'a> {
|
|||
impl<'a> BosWriter<'a> {
|
||||
pub(crate) fn new(writer: DescriptorWriter<'a>) -> Self {
|
||||
Self {
|
||||
writer: writer,
|
||||
writer,
|
||||
num_caps_mark: None,
|
||||
}
|
||||
}
|
||||
|
|
|
@ -294,7 +294,7 @@ impl<'d, D: Driver<'d>> UsbDevice<'d, D> {
|
|||
/// After dropping the future, [`UsbDevice::disable()`] should be called
|
||||
/// before calling any other `UsbDevice` methods to fully reset the
|
||||
/// peripheral.
|
||||
pub async fn run_until_suspend(&mut self) -> () {
|
||||
pub async fn run_until_suspend(&mut self) {
|
||||
while !self.inner.suspended {
|
||||
let control_fut = self.control.setup();
|
||||
let bus_fut = self.inner.bus.poll();
|
||||
|
@ -372,18 +372,15 @@ impl<'d, D: Driver<'d>> UsbDevice<'d, D> {
|
|||
// a full-length packet is a short packet, thinking we're done sending data.
|
||||
// See https://github.com/hathach/tinyusb/issues/184
|
||||
const DEVICE_DESCRIPTOR_LEN: usize = 18;
|
||||
if self.inner.address == 0
|
||||
&& max_packet_size < DEVICE_DESCRIPTOR_LEN
|
||||
&& (max_packet_size as usize) < resp_length
|
||||
{
|
||||
if self.inner.address == 0 && max_packet_size < DEVICE_DESCRIPTOR_LEN && max_packet_size < resp_length {
|
||||
trace!("received control req while not addressed: capping response to 1 packet.");
|
||||
resp_length = max_packet_size;
|
||||
}
|
||||
|
||||
match self.inner.handle_control_in(req, &mut self.control_buf) {
|
||||
match self.inner.handle_control_in(req, self.control_buf) {
|
||||
InResponse::Accepted(data) => {
|
||||
let len = data.len().min(resp_length);
|
||||
let need_zlp = len != resp_length && (len % usize::from(max_packet_size)) == 0;
|
||||
let need_zlp = len != resp_length && (len % max_packet_size) == 0;
|
||||
|
||||
let chunks = data[0..len]
|
||||
.chunks(max_packet_size)
|
||||
|
@ -706,7 +703,7 @@ impl<'d, D: Driver<'d>> Inner<'d, D> {
|
|||
}
|
||||
|
||||
fn handle_control_in_delegated<'a>(&'a mut self, req: Request, buf: &'a mut [u8]) -> InResponse<'a> {
|
||||
unsafe fn extend_lifetime<'x, 'y>(r: InResponse<'x>) -> InResponse<'y> {
|
||||
unsafe fn extend_lifetime<'y>(r: InResponse<'_>) -> InResponse<'y> {
|
||||
core::mem::transmute(r)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue