From 7c3fcdabcc8a49b7d4857ba59189a3b045021668 Mon Sep 17 00:00:00 2001 From: doryan Date: Fri, 14 Feb 2025 00:10:41 +0400 Subject: [PATCH] fix(const): use mask as constant value instead magic number --- src/types/usb_device.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/types/usb_device.rs b/src/types/usb_device.rs index 8db5d29..9881ef6 100644 --- a/src/types/usb_device.rs +++ b/src/types/usb_device.rs @@ -84,6 +84,8 @@ pub(crate) const ONE_MS_16_MGHZ: u32 = 16000; const UDINT_BYTE: u8 = 0x7d; const USBINT_BYTE: u8 = 0x01; const UEINTX_BYTE: u8 = 0xdf; +const UENUM_MASK: u8 = 0b111; + pub(crate) trait InterruptCleaner { fn clear_interrupts(&mut self) -> &mut Self; } @@ -142,9 +144,8 @@ impl UsbDevice { endpoint_index: usize, ) -> Result<(), UsbError> { let usb = self.usb.borrow(cs); - let endpoint_index = endpoint_index as u8; - if endpoint_index >= 7 { + if endpoint_index >= MAX_ENDPOINTS { return Err(UsbError::InvalidEndpoint); } @@ -152,9 +153,9 @@ impl UsbDevice { return Err(UsbError::InvalidState); } - usb.uenum.write(|w| w.bits(endpoint_index)); + usb.uenum.write(|w| w.bits(endpoint_index as u8)); - if usb.uenum.read().bits() & 7 /* 0b111 */ != endpoint_index { + if usb.uenum.read().bits() & UENUM_MASK != endpoint_index as u8 { return Err(UsbError::InvalidEndpoint); }