| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | Move nRF's util into a separate crate | Thales Fragoso | 2021-03-07 | 8 | -222/+10 | |
| | | ||||||
| * | Update `nrf-hal` to v0.12.1 | Timo Kröger | 2021-03-05 | 4 | -82/+19 | |
| | | | | | Use the `psel_bits()` method to reduce #[cfg] clutter | |||||
| * | Remove cargo namespaced-features | Dario Nieuwenhuis | 2021-03-02 | 1 | -1/+1 | |
| | | ||||||
| * | Move traits to separate crate. | xoviat | 2021-03-02 | 3 | -5/+5 | |
| | | ||||||
| * | Merge pull request #59 from akiles/interrupt_ext | Dario Nieuwenhuis | 2021-03-01 | 5 | -1/+6 | |
| |\ | | | | | move most interrupt methods to InterruptExt extension trait. Fixes #35 | |||||
| | * | move most interrupt methods to InterruptExt extension trait. Fixes #35 | Dario Nieuwenhuis | 2021-03-01 | 5 | -1/+6 | |
| | | | ||||||
| * | | nrf/spim: support all chips | Dario Nieuwenhuis | 2021-03-01 | 1 | -7/+17 | |
| | | | ||||||
| * | | nrf: add SPIM | Dario Nieuwenhuis | 2021-03-01 | 2 | -0/+302 | |
| |/ | ||||||
| * | Fix warnings. | Dario Nieuwenhuis | 2021-03-01 | 2 | -4/+2 | |
| | | ||||||
| * | Port qspi to PeripheralMutex | Dario Nieuwenhuis | 2021-02-28 | 1 | -106/+164 | |
| | | ||||||
| * | Optimize PeripheralMutex code size | Dario Nieuwenhuis | 2021-02-28 | 1 | -15/+57 | |
| | | ||||||
| * | interrupt: Split set_handler context. | Dario Nieuwenhuis | 2021-02-26 | 5 | -20/+16 | |
| | | | | | | | | | | | Since introducing the ctx pointer, the handler is now two words, so setting it can race with the interrupt firing. On race it's possible for the new handler to be alled with the old ctx pointer or viceversa. Rather than documenting this, it's better to split the function in two to make it obvious to the user that it's not atomic. The user can use a critical section, or disable/enable the interrupt to avoid races if this is a concern. | |||||
| * | Cleanup interrupt package naming. Fixes #40 | Dario Nieuwenhuis | 2021-02-26 | 8 | -24/+20 | |
| | | | | | | | | | | The `interrupt` package previously tried to be drop-in compatible with the `interrupt` package from PACs. THis meant that there was both a PAC-style enum value `UARTE0` and an embassy-style owned `UARTE0Interrupt` type. This made things VERY confusing. This drops compatibility with the PAC, improving the names for embassy interrupts. | |||||
| * | Fix some warnings. | Dario Nieuwenhuis | 2021-02-26 | 1 | -0/+1 | |
| | | ||||||
| * | Merge pull request #47 from akiles/simpler-rtc | Dario Nieuwenhuis | 2021-02-20 | 1 | -16/+38 | |
| |\ | | | | | SImplify rtc overflow handling | |||||
| | * | Use Relaxed atomics with fence instead of SeqCst | Dario Nieuwenhuis | 2021-02-20 | 1 | -3/+4 | |
| | | | ||||||
| | * | rtc: use SeqCst for periods. | Dario Nieuwenhuis | 2021-02-15 | 1 | -2/+2 | |
| | | | ||||||
| | * | SImplify rtc overflow handling | Dario Nieuwenhuis | 2021-02-15 | 1 | -15/+36 | |
| | | | ||||||
| * | | PeripheralMutex should be Unpin | Dario Nieuwenhuis | 2021-02-20 | 1 | -3/+6 | |
| |/ | ||||||
| * | Get rid of some warnings | Thales Fragoso | 2021-02-13 | 7 | -66/+63 | |
| | | ||||||
| * | nrf/gpiote: new api: switch to owned structs, implement WaitForHigh/WaitForLow. | Dario Nieuwenhuis | 2021-02-04 | 1 | -295/+285 | |
| | | ||||||
| * | Executor API V2. | Dario Nieuwenhuis | 2021-02-02 | 1 | -6/+6 | |
| | | | | | | - It's no longer possible to call run() reentrantly from within a task (soundness issue) - it's now possible to spawn Send tasks across threads (SendSpawner, #37) | |||||
| * | nrf/rtc: fix race when setting alarms too close to now. | Dario Nieuwenhuis | 2021-01-13 | 1 | -11/+6 | |
| | | ||||||
| * | nrf/rtc: use interrupt handler context for instance ptr | Dario Nieuwenhuis | 2021-01-13 | 1 | -29/+28 | |
| | | ||||||
| * | nrf/buffered_uarte: fix stop not actually waiting for stop | Dario Nieuwenhuis | 2021-01-11 | 1 | -2/+2 | |
| | | ||||||
| * | nrf/buffered_uarte: add set_baudrate | Dario Nieuwenhuis | 2021-01-11 | 1 | -0/+13 | |
| | | ||||||
| * | nrf/buffered_uarte: stop on drop, add free() | Dario Nieuwenhuis | 2021-01-11 | 2 | -8/+50 | |
| | | ||||||
| * | Fix build on nrf52832 | Dario Nieuwenhuis | 2021-01-07 | 1 | -2/+2 | |
| | | ||||||
| * | Add PPI+TIMER to buffered_uarte to prevent IRQ storm | Dario Nieuwenhuis | 2021-01-06 | 1 | -81/+100 | |
| | | ||||||
| * | Simpliify PeripheralMutex a bit. | Dario Nieuwenhuis | 2021-01-06 | 2 | -19/+22 | |
| | | ||||||
| * | buffered_uarte naming cleanup | Dario Nieuwenhuis | 2021-01-06 | 1 | -18/+18 | |
| | | ||||||
| * | Merge pull request #14 from timokroeger/uarte-power-optimization | Dario Nieuwenhuis | 2021-01-05 | 2 | -39/+93 | |
| |\ | | | | | UARTE power optimization and improvements | |||||
| | * | uarte: Low power wait for RX drop | Timo Kröger | 2021-01-04 | 2 | -5/+18 | |
| | | | ||||||
| | * | uarte: Wait for the peripheral to be disabled | Timo Kröger | 2021-01-04 | 1 | -0/+2 | |
| | | | | | | | | | | | | | | | | | Prevents a panic in the case of: 1. Abort a receive future 2. Free Uarte::free() 3. Uarte::new() -> panicked at 'assertion failed: uarte.enable.read().enable().is_disabled()' | |||||
| | * | uarte: Enable peripheral with first poll | Timo Kröger | 2021-01-04 | 1 | -4/+6 | |
| | | | | | | | | | This fixes a lockup when a future is dropped before it was polled. | |||||
| | * | uarte: Be on safe side with potentially racy code | Timo Kröger | 2021-01-04 | 1 | -23/+32 | |
| | | | | | | | | | | | | | | | | | | | The PS does not specify how many cycles it takes for a STARTXX task to generate a XXSTARTED event. I think it is instantaneous but let’s be on the safe side for the following sequence: 1. poll() starttx 2. drop() txstarted not yet set, but future gets dropped 3. txstarted set by hardware, peripheral enabled after it was dropped | |||||
| | * | uarte: Only stop TX forcefully when a transmissions is running | Timo Kröger | 2021-01-04 | 1 | -19/+27 | |
| | | | | | | | | | | | This comes with insignificant power consumption improvements but makes the code of the RX and TX case symmetric. | |||||
| | * | uarte: Only stop RX forcefully when a reception is running | Timo Kröger | 2021-01-04 | 1 | -17/+26 | |
| | | | | | | | | | | | | | | | | | | | | | The STOPRX task always triggers a timeout of ~55bit times until the RXTO event is generated. Before we disabled the receiver only after the timeout. With this change the receiver is stopped right after reception has ended because the DMA buffer is full. For forced RX aborts like `stop()` or on drop still need to wait for the RXTO event before disabling the receiver. | |||||
| | * | uarte: Do not spin when stopping a receive future | Timo Kröger | 2021-01-04 | 1 | -4/+15 | |
| | | | | | | | | | | | Spinning on drop() is still required when the future has not been stopped so that DMA finishes before the buffer is released. | |||||
| * | | Cleanup BufferedUarte | Dario Nieuwenhuis | 2021-01-05 | 1 | -91/+68 | |
| | | | ||||||
| * | | Massicely simplify peripheral abstraction | Dario Nieuwenhuis | 2021-01-05 | 2 | -108/+52 | |
| | | | ||||||
| * | | Add "context" pointer to owned interrupt handlers. | Dario Nieuwenhuis | 2021-01-04 | 5 | -16/+21 | |
| |/ | ||||||
| * | Fix build on non-nrf52840 | Dario Nieuwenhuis | 2021-01-03 | 1 | -0/+1 | |
| | | ||||||
| * | Introduce "peripheral" abstraction to share state between main and interrupt. | Dario Nieuwenhuis | 2021-01-03 | 5 | -203/+290 | |
| | | ||||||
| * | use hal::Pins for BufferedUarte | Dario Nieuwenhuis | 2021-01-02 | 1 | -25/+11 | |
| | | ||||||
| * | Add Uart trait, implement it for nrf. | Dario Nieuwenhuis | 2021-01-02 | 1 | -47/+54 | |
| | | ||||||
| * | Don't use embedded_dma in nrf uarte. | Dario Nieuwenhuis | 2021-01-02 | 1 | -32/+21 | |
| | | ||||||
| * | Rename WakerStore -> WakerRegistration. | Dario Nieuwenhuis | 2021-01-01 | 1 | -7/+7 | |
| | | ||||||
| * | Low power UART driver | Timo Kröger | 2020-12-30 | 2 | -0/+419 | |
| | | ||||||
| * | Declare irqs for each nrf chip | Dario Nieuwenhuis | 2020-12-29 | 1 | -43/+201 | |
| | | ||||||
