From 4ce51795f2f4a9d6803dc4101b04f2a191f8d39d Mon Sep 17 00:00:00 2001 From: Dario Nieuwenhuis Date: Sat, 2 Jan 2021 20:31:50 +0100 Subject: [PATCH] use hal::Pins for BufferedUarte --- embassy-nrf/src/buffered_uarte.rs | 36 ++++++++++--------------------- 1 file changed, 11 insertions(+), 25 deletions(-) diff --git a/embassy-nrf/src/buffered_uarte.rs b/embassy-nrf/src/buffered_uarte.rs index 6227e332..9863e3fa 100644 --- a/embassy-nrf/src/buffered_uarte.rs +++ b/embassy-nrf/src/buffered_uarte.rs @@ -12,25 +12,18 @@ use core::pin::Pin; use core::ptr; use core::sync::atomic::{compiler_fence, Ordering}; use core::task::{Context, Poll}; - -use embedded_hal::digital::v2::OutputPin; - -use crate::hal::gpio::{Floating, Input, Output, Pin as GpioPin, Port as GpioPort, PushPull}; -use crate::interrupt; -use crate::interrupt::{CriticalSection, OwnedInterrupt}; -#[cfg(any(feature = "52833", feature = "52840", feature = "9160"))] -use crate::pac::UARTE1; -use crate::pac::{uarte0, UARTE0}; - -// Re-export SVD variants to allow user to directly set values -pub use uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity}; - use embassy::io::{AsyncBufRead, AsyncWrite, Result}; use embassy::util::WakerRegistration; +use embedded_hal::digital::v2::OutputPin; use crate::fmt::{assert, panic, todo, *}; +use crate::hal::gpio::Port as GpioPort; +use crate::interrupt::{self, CriticalSection, OwnedInterrupt}; +use crate::pac::uarte0; -//use crate::trace; +// Re-export SVD variants to allow user to directly set values +pub use crate::hal::uarte::Pins; +pub use uarte0::{baudrate::BAUDRATE_A as Baudrate, config::PARITY_A as Parity}; const RINGBUF_SIZE: usize = 512; struct RingBuf { @@ -504,13 +497,6 @@ impl UarteState { } } -pub struct Pins { - pub rxd: GpioPin>, - pub txd: GpioPin>, - pub cts: Option>>, - pub rts: Option>>, -} - mod private { pub trait Sealed {} @@ -529,11 +515,11 @@ pub trait Instance: Deref + Sized + private::Sea fn set_state(_cs: &CriticalSection, state: *mut UarteState); } -static mut UARTE0_STATE: *mut UarteState = ptr::null_mut(); +static mut UARTE0_STATE: *mut UarteState = ptr::null_mut(); #[cfg(any(feature = "52833", feature = "52840", feature = "9160"))] -static mut UARTE1_STATE: *mut UarteState = ptr::null_mut(); +static mut UARTE1_STATE: *mut UarteState = ptr::null_mut(); -impl Instance for UARTE0 { +impl Instance for crate::pac::UARTE0 { type Interrupt = interrupt::UARTE0_UART0Interrupt; fn get_state(_cs: &CriticalSection) -> *mut UarteState { @@ -545,7 +531,7 @@ impl Instance for UARTE0 { } #[cfg(any(feature = "52833", feature = "52840", feature = "9160"))] -impl Instance for UARTE1 { +impl Instance for crate::pac::UARTE1 { type Interrupt = interrupt::UARTE1Interrupt; fn get_state(_cs: &CriticalSection) -> *mut UarteState {