diff options
| author | Ulf Lilleengen <[email protected]> | 2024-07-01 12:08:44 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-07-01 12:08:44 +0000 |
| commit | 3c6bf3a31a951fcea31e39390ba4f0f073144933 (patch) | |
| tree | 1f5ca1d403e4005020ead3b83e166a6740764681 | |
| parent | 2a38787a8375675a7c3b8d7d7dc4ca6505734bca (diff) | |
| parent | 0b8a8e54dc4a00af2016a1dd14640773af10b3e6 (diff) | |
Merge pull request #3137 from embassy-rs/nrf-egu-irq
expose enabling and disabling irq for triggers
| -rw-r--r-- | embassy-nrf/src/egu.rs | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/embassy-nrf/src/egu.rs b/embassy-nrf/src/egu.rs index c0cde8330..204446d29 100644 --- a/embassy-nrf/src/egu.rs +++ b/embassy-nrf/src/egu.rs | |||
| @@ -77,6 +77,24 @@ impl<'d, T: Instance> Trigger<'d, T> { | |||
| 77 | let regs = T::regs(); | 77 | let regs = T::regs(); |
| 78 | Event::from_reg(®s.events_triggered[nr]) | 78 | Event::from_reg(®s.events_triggered[nr]) |
| 79 | } | 79 | } |
| 80 | |||
| 81 | /// Enable interrupts for this trigger | ||
| 82 | pub fn enable_interrupt(&mut self) { | ||
| 83 | let regs = T::regs(); | ||
| 84 | unsafe { | ||
| 85 | regs.intenset | ||
| 86 | .modify(|r, w| w.bits(r.bits() | (1 << self.number as usize))) | ||
| 87 | }; | ||
| 88 | } | ||
| 89 | |||
| 90 | /// Enable interrupts for this trigger | ||
| 91 | pub fn disable_interrupt(&mut self) { | ||
| 92 | let regs = T::regs(); | ||
| 93 | unsafe { | ||
| 94 | regs.intenclr | ||
| 95 | .modify(|r, w| w.bits(r.bits() | (1 << self.number as usize))) | ||
| 96 | }; | ||
| 97 | } | ||
| 80 | } | 98 | } |
| 81 | 99 | ||
| 82 | /// Represents a trigger within an EGU. | 100 | /// Represents a trigger within an EGU. |
