7b6086d19e
nrf: add unborrow! macro
2021-03-29 00:58:58 +02:00
a134fce122
nrf: nicer Peripherals api, add take()
2021-03-29 00:58:57 +02:00
d5ff1a0ae3
nrf: rename inner peripheral to peri
for consistence
2021-03-29 00:58:57 +02:00
95218bf8d4
Rename GpioteInput -> PortInput
2021-03-29 00:58:57 +02:00
c0876187dd
extras: move peripherals from nrf to extras
2021-03-29 00:58:57 +02:00
ec7309962a
nrf/qspi: update to new api
2021-03-29 00:58:57 +02:00
16bb6fd6ac
nrf: Specify connected
bit in psel_bits
2021-03-29 00:58:57 +02:00
f36cbe5e0c
nrf/spim: do not use PeripheralMutex
2021-03-29 00:58:57 +02:00
15eb46ec71
wip gpiote changels
2021-03-29 00:58:57 +02:00
ba7b3974bb
nrf/gpiote: update to new gpio
2021-03-29 00:58:57 +02:00
3d3e770b8d
nrf/gpio: add output drive config.
2021-03-29 00:58:57 +02:00
fcf6a63b5c
nrf: add owned Peripherals struct, migrate gpio and spim
2021-03-29 00:58:57 +02:00
6ee9e012fc
add embassy::main and implement for stm32f4
2021-03-27 17:27:39 -05:00
456e04c79f
Simplify spim macros
2021-03-18 21:59:35 +01:00
b57489eb5d
peripheralmutex: separate interrupt registration to own method.
2021-03-18 18:49:10 +01:00
0cd19a58c3
Remove free() from PeripheralMutex and all nrf drivers.
2021-03-18 18:49:10 +01:00
f248bb17ad
Allow unused stuff in fmt.rs
2021-03-18 01:42:28 +01:00
3de2d5c5bd
Implement FullDuplex for nrf spim
2021-03-18 01:27:30 +01:00
a9076636ac
Do not export fmt macros.
...
This was introduced by accident by me struggling with the weird intra-crate macro importing system...
2021-03-17 22:50:27 +01:00
6ed1a87138
Update features for latest nightly.
2021-03-17 02:48:16 +01:00
15c3e78408
Move nRF's util into a separate crate
2021-03-07 20:15:40 -03:00
28b2365ef3
Update nrf-hal
to v0.12.1
...
Use the `psel_bits()` method to reduce #[cfg] clutter
2021-03-05 09:25:46 +01:00
d4f2c6cf00
Remove cargo namespaced-features
2021-03-02 21:15:12 +01:00
9626aee7db
Move traits to separate crate.
2021-03-02 00:32:23 +01:00
67a6c4f469
Merge pull request #59 from akiles/interrupt_ext
...
move most interrupt methods to InterruptExt extension trait. Fixes #35
2021-03-01 00:56:20 +01:00
45355f184a
move most interrupt methods to InterruptExt extension trait. Fixes #35
2021-03-01 00:44:38 +01:00
a30c705fd7
nrf/spim: support all chips
2021-03-01 00:36:30 +01:00
255bf1aa6a
nrf: add SPIM
2021-03-01 00:24:06 +01:00
8a641d1312
Fix warnings.
2021-03-01 00:23:54 +01:00
7433dc1039
Port qspi to PeripheralMutex
2021-02-28 22:05:37 +01:00
962fb95ff0
Optimize PeripheralMutex code size
2021-02-28 22:03:45 +01:00
da91779117
interrupt: Split set_handler context.
...
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.
2021-02-26 02:04:48 +01:00
11be9170ec
Cleanup interrupt package naming. Fixes #40
...
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.
2021-02-26 01:55:27 +01:00
90476ef900
Fix some warnings.
2021-02-26 01:06:58 +01:00
f779ec4928
update defmt and defmt-rtt to 0.2.0
2021-02-24 08:44:23 +01:00
67c03e1a38
Merge pull request #47 from akiles/simpler-rtc
...
SImplify rtc overflow handling
2021-02-20 01:51:53 +01:00
91aaea761e
Use Relaxed atomics with fence instead of SeqCst
2021-02-20 01:43:10 +01:00
03ddc949a0
PeripheralMutex should be Unpin
2021-02-20 00:27:24 +01:00
406f3b7cbf
rtc: use SeqCst for periods.
2021-02-15 01:23:15 +01:00
9d5e2d3881
SImplify rtc overflow handling
2021-02-15 01:01:45 +01:00
7321ddb0b3
Update to cortex-m 0.7
2021-02-14 23:26:50 +01:00
b69f72e055
Get rid of some warnings
2021-02-13 21:41:36 -03:00
a7797a918d
nrf/gpiote: new api: switch to owned structs, implement WaitForHigh/WaitForLow.
2021-02-04 23:56:17 +01:00
aeaa34d7a1
Executor API V2.
...
- 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 )
2021-02-02 05:20:41 +01:00
6963b314a2
nrf/rtc: fix race when setting alarms too close to now.
2021-01-13 03:17:58 +01:00
5229a1991c
nrf/rtc: use interrupt handler context for instance ptr
2021-01-13 03:17:42 +01:00
7b94e06306
nrf/buffered_uarte: fix stop not actually waiting for stop
2021-01-11 11:24:34 +01:00
41160c0d8d
nrf/buffered_uarte: add set_baudrate
2021-01-11 10:40:37 +01:00
2616467377
nrf/buffered_uarte: stop on drop, add free()
2021-01-11 10:39:59 +01:00
e18d71dedc
Fix build on nrf52832
2021-01-07 00:50:40 +01:00