earlgrey: clean up misc clippy lint

Signed-off-by: Chris Frantz <cfrantz@google.com>
diff --git a/target/earlgrey/drivers/eflash_driver.rs b/target/earlgrey/drivers/eflash_driver.rs
index ddb6e9d..ca53be2 100644
--- a/target/earlgrey/drivers/eflash_driver.rs
+++ b/target/earlgrey/drivers/eflash_driver.rs
@@ -142,7 +142,7 @@
         self.start_op(|w| {
             w.op(|s| s.read())
                 .partition_sel(start_addr.is_info())
-                .num((buf.len() as u32 + 3) / 4 - 1)
+                .num((buf.len() as u32).div_ceil(4) - 1)
         });
         copy_from_reg_unaligned(buf, &self.mmio.regs_mut().rd_fifo());
         while self.is_busy() {}
@@ -216,7 +216,7 @@
             w.op(|s| s.prog())
                 .prog_sel(|s| s.normal_program())
                 .partition_sel(start_addr.is_info())
-                .num(((data.len() + 3) / 4) as u32 - 1)
+                .num((data.len() as u32).div_ceil(4) - 1)
         });
         copy_to_reg_unaligned(&self.mmio.regs_mut().prog_fifo(), data);
         Ok(())
diff --git a/target/earlgrey/tests/usbdev/test_usb.rs b/target/earlgrey/tests/usbdev/test_usb.rs
index 955c7d3..6ffe94e 100644
--- a/target/earlgrey/tests/usbdev/test_usb.rs
+++ b/target/earlgrey/tests/usbdev/test_usb.rs
@@ -122,8 +122,7 @@
     let device_id: [u32; 8] = lc_ctrl.regs().device_id().read().into();
 
     let mut serial_ascii = [0u8; 64];
-    let serial_str =
-        format_device_id(&device_id, &mut serial_ascii).map_err(|_| Error::Internal)?;
+    let serial_str = format_device_id(&device_id, &mut serial_ascii).ok_or(Error::Internal)?;
     pw_log::info!("Serial Number: {}", serial_str);
 
     let device_id_bytes = device_id.as_bytes();
diff --git a/target/earlgrey/tests/usbserial/test_usb.rs b/target/earlgrey/tests/usbserial/test_usb.rs
index 5d13a39..ae3b534 100644
--- a/target/earlgrey/tests/usbserial/test_usb.rs
+++ b/target/earlgrey/tests/usbserial/test_usb.rs
@@ -113,7 +113,7 @@
     let lc_ctrl = unsafe { LcCtrl::new() };
     let device_id: [u32; 8] = lc_ctrl.regs().device_id().read().into();
     let mut dev_id_buf = [0_u8; 64];
-    let serial_str = format_device_id(&device_id, &mut dev_id_buf).map_err(|_| Error::Internal)?;
+    let serial_str = format_device_id(&device_id, &mut dev_id_buf).ok_or(Error::Internal)?;
     pw_log::info!("Serial Number: {}", serial_str);
 
     let device_id_bytes = device_id.as_bytes();
diff --git a/target/earlgrey/util/device_id.rs b/target/earlgrey/util/device_id.rs
index 4cc3fd7..37f2dff 100644
--- a/target/earlgrey/util/device_id.rs
+++ b/target/earlgrey/util/device_id.rs
@@ -13,9 +13,9 @@
 /// via USB string descriptors (little-endian bytes of each word, from word 0 to 7).
 ///
 /// The buffer must be at least 64 bytes long.
-pub fn format_device_id<'a>(device_id: &[u32; 8], buf: &'a mut [u8]) -> Result<&'a str, ()> {
+pub fn format_device_id<'a>(device_id: &[u32; 8], buf: &'a mut [u8]) -> Option<&'a str> {
     if buf.len() < 64 {
-        return Err(());
+        return None;
     }
     let device_id_bytes = device_id.as_bytes();
 
@@ -25,5 +25,5 @@
         buf[i * 2 + 1] = HEX_CHARS[(byte & 0xf) as usize];
     }
     // SAFETY: buf[..64] was populated entirely with valid ASCII hex characters from HEX_CHARS.
-    Ok(unsafe { core::str::from_utf8_unchecked(&buf[..64]) })
+    Some(unsafe { core::str::from_utf8_unchecked(&buf[..64]) })
 }