diff --git a/rp2040-hal/src/pio.rs b/rp2040-hal/src/pio.rs index aa3f7dd..2e85355 100644 --- a/rp2040-hal/src/pio.rs +++ b/rp2040-hal/src/pio.rs @@ -11,7 +11,7 @@ const PIO_INSTRUCTION_COUNT: usize = 32; /// PIO Instance pub trait PIOExt: - core::ops::Deref + SubsystemReset + Sized + core::ops::Deref + SubsystemReset + Sized + Send { /// Create a new PIO wrapper and split the state machines into individual objects. #[allow(clippy::type_complexity)] // Required for symmetry with PIO::free(). @@ -94,7 +94,7 @@ impl core::fmt::Debug for PIO

{ // Safety: `PIO` only provides access to those registers which are not directly used by // `StateMachine`. -unsafe impl Send for PIO

{} +unsafe impl Send for PIO

{} // Safety: `PIO` is marked Send so ensure all accesses remain atomic and no new concurrent accesses // are added. @@ -315,7 +315,7 @@ impl InstalledProgram

{ } /// State machine identifier (without a specified PIO block). -pub trait StateMachineIndex { +pub trait StateMachineIndex: Send { /// Numerical index of the state machine (0 to 3). fn id() -> usize; } @@ -892,7 +892,7 @@ pub struct Interrupt { } // Safety: `Interrupt` provides exclusive access to interrupt registers. -unsafe impl Send for Interrupt

{} +unsafe impl Send for Interrupt

{} // Safety: `Interrupt` is marked Send so ensure all accesses remain atomic and no new concurrent // accesses are added.