From 1652d9269e58fd56590da539fc5c35a15bdaf497 Mon Sep 17 00:00:00 2001 From: Elliot Sayes Date: Sat, 2 Aug 2025 17:26:42 +0400 Subject: [PATCH] Add IRQ StatusSource for _rp235x --- embassy-rp/src/pio/mod.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/embassy-rp/src/pio/mod.rs b/embassy-rp/src/pio/mod.rs index ec698d99c..0d8a94776 100644 --- a/embassy-rp/src/pio/mod.rs +++ b/embassy-rp/src/pio/mod.rs @@ -98,6 +98,9 @@ pub enum StatusSource { TxFifoLevel = 0, /// All-ones if RX FIFO level < N, otherwise all-zeroes. RxFifoLevel = 1, + /// All-ones if the indexed IRQ flag is raised, otherwise all-zeroes + #[cfg(feature = "_rp235x")] + Irq = 2, } const RXNEMPTY_MASK: u32 = 1 << 0; @@ -736,6 +739,7 @@ impl<'d, PIO: Instance + 'd, const SM: usize> StateMachine<'d, PIO, SM> { w.set_status_sel(match config.status_sel { StatusSource::TxFifoLevel => pac::pio::vals::ExecctrlStatusSel::TXLEVEL, StatusSource::RxFifoLevel => pac::pio::vals::ExecctrlStatusSel::RXLEVEL, + StatusSource::Irq => pac::pio::vals::ExecctrlStatusSel::IRQ, }); #[cfg(feature = "rp2040")] w.set_status_sel(match config.status_sel {