@@ -302,9 +302,7 @@ pub fn write(&mut self, offset: hwaddr, value: u64) {
Ok(LCR_H) => {
let new_val: registers::LineControl = value.into();
// Reset the FIFO state on FIFO enable or disable
- if bool::from(self.line_control.fifos_enabled())
- ^ bool::from(new_val.fifos_enabled())
- {
+ if self.line_control.fifos_enabled() != new_val.fifos_enabled() {
self.reset_rx_fifo();
self.reset_tx_fifo();
}
@@ -497,7 +495,7 @@ pub fn event(&mut self, event: QEMUChrEvent) {
#[inline]
pub fn fifo_enabled(&self) -> bool {
- matches!(self.line_control.fifos_enabled(), registers::Mode::FIFO)
+ self.line_control.fifos_enabled() == registers::Mode::FIFO
}
#[inline]
@@ -419,12 +419,6 @@ pub enum Mode {
FIFO = 1,
}
- impl From<Mode> for bool {
- fn from(val: Mode) -> Self {
- matches!(val, Mode::FIFO)
- }
- }
-
#[bitsize(2)]
#[derive(Clone, Copy, Debug, Eq, FromBits, PartialEq)]
/// `WLEN` Word length, field of [Line Control register](LineControl).