From 990d83d424f12d3935944aa133a5c63e8199476f Mon Sep 17 00:00:00 2001 From: Folkert Date: Thu, 3 Jun 2021 11:38:25 +0200 Subject: [PATCH] match on mode --- embassy-nrf/src/spim.rs | 39 ++++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/embassy-nrf/src/spim.rs b/embassy-nrf/src/spim.rs index a29c1a3e..0ca18d88 100644 --- a/embassy-nrf/src/spim.rs +++ b/embassy-nrf/src/spim.rs @@ -100,24 +100,29 @@ impl<'d, T: Instance> Spim<'d, T> { // Configure mode. let mode = config.mode; r.config.write(|w| { - // Can't match on `mode` due to embedded-hal, see https://github.com/rust-embedded/embedded-hal/pull/126 - if mode == MODE_0 { - w.order().msb_first(); - w.cpol().active_high(); - w.cpha().leading(); - } else if mode == MODE_1 { - w.order().msb_first(); - w.cpol().active_high(); - w.cpha().trailing(); - } else if mode == MODE_2 { - w.order().msb_first(); - w.cpol().active_low(); - w.cpha().leading(); - } else { - w.order().msb_first(); - w.cpol().active_low(); - w.cpha().trailing(); + match mode { + MODE_0 => { + w.order().msb_first(); + w.cpol().active_high(); + w.cpha().leading(); + } + MODE_1 => { + w.order().msb_first(); + w.cpol().active_high(); + w.cpha().trailing(); + } + MODE_2 => { + w.order().msb_first(); + w.cpol().active_low(); + w.cpha().leading(); + } + MODE_3 => { + w.order().msb_first(); + w.cpol().active_low(); + w.cpha().trailing(); + } } + w });