Commit Graph

5960 Commits

Author SHA1 Message Date
4e47b15daf Ignore the clock number for enable bit search
The number has different meanings depending on family:
stm32f0: RCC_APB2ENR - APB peripheral clock enable register 2    CLOCK: APB1
stm32f4: RCC_APB2ENR - RCC APB2 peripheral clock enable register CLOCK: APB2

Ignore the clock number and search all registers for a matching enable bit.
2021-08-03 17:58:27 +02:00
fba8b86005 BTreeMaps to preserve ordering of generated code
Makes diffing of changes easier
2021-08-03 17:58:26 +02:00
6ff0614cb6 Add uart::Read DMA-based implementation
* Rename existing read() to bread() (blocking)
2021-08-03 15:31:24 +02:00
ad62900a40 Merge pull request #339 from embassy-rs/reomve-workaround
Remove version pinning workaround.
2021-08-02 20:53:44 +02:00
6043383008 Remove version pinning workaround. 2021-08-02 20:47:30 +02:00
9ca43752eb Merge pull request #327 from embassy-rs/remove-pin
PeripheralMutex: Remove Pin
2021-08-02 20:28:54 +02:00
3f28bb6c77 common: Initialize PeripheralMutex state with closure to ensure it's done in-place. 2021-08-02 20:13:41 +02:00
e238079d7d Make const the states when able. 2021-08-02 19:59:02 +02:00
63ac7ac799 Mark news as unsafe due to not being leak-safe. 2021-08-02 19:55:04 +02:00
af87031d62 hal-common: remove Pin in PeripheralMutex 2021-08-02 19:55:04 +02:00
de207764ae Merge pull request #332 from bobmcwhirter/memory_x_gen
Emit a default memory.x alongside device.x from metapac.
2021-08-02 19:54:41 +02:00
63b32b39e1 Use an em bikeshed instead of an underscore bikeshed. 2021-08-02 13:29:06 -04:00
5f9447abb4 Put the implicit memory.x behind a memory_x feature on embassy-stm32. 2021-08-02 13:21:30 -04:00
3a00a1dba7 Undo the pwr-guarding cfg. 2021-08-02 11:34:41 -04:00
71040d1f2c Update to latest stm32-data. 2021-08-02 11:23:55 -04:00
4da8ed471b Fallback to total RAM or FLASH size if otherwise not present. 2021-08-02 11:23:55 -04:00
f6c5f039c8 Emit a default memory.x alongside device.x from metapac. 2021-08-02 11:23:55 -04:00
c458ad52e6 Merge pull request #337 from lulf/introduce-future-types
Introduce future types
2021-08-02 13:20:29 +02:00
f2c2ad06ca Use lifetime to ensure only a single future is created at a time 2021-08-02 12:42:06 +02:00
4d8d8e386f Make RecvFuture sync
RecvFuture always locks the underlying Channel when polled.
2021-08-02 11:18:59 +02:00
332bc44b8c Expose SendFuture and RecvFuture types
Having these types available makes it easier to store futures for later
use as the named types can be embedded in other types at compile time.
2021-08-02 10:45:50 +02:00
64a3ebd183 i2c-v2: Use new interrupts macro 2021-08-01 19:10:42 -03:00
c1bb83d29d i2c-v2: Deref interrupt enabling in write_dma_internal 2021-08-01 19:10:42 -03:00
6ddc83029a i2c-v2: Simplify write_dma 2021-08-01 19:10:42 -03:00
362f7efe99 i2c-v2: Implement write_dma and write_dma_vectored 2021-08-01 19:10:42 -03:00
0a1da180d0 Merge pull request #335 from bgamari/no-build-core
examples: Drop build-std = ["core"]
2021-07-31 19:07:58 +02:00
3420cbf744 examples: Drop build-std = ["core"]
Previously the cargo configurations of all of the example projects had
`build-std = ["core"]`, which forces compilation of `core` as a
code-size optimisation. However, this is strictly unnecessary and will
currently break for users who do not use `rustup` directly (e.g. nix
users).
2021-07-31 13:01:15 -04:00
3835278567 Merge pull request #321 from thalesfragoso/f4-pll
F4 PLL
2021-07-31 11:08:46 +02:00
21e3acaa00 stm32: Use build.rs to generate a more coarse feature 2021-07-31 02:52:26 -03:00
e9885a61f8 Merge pull request #329 from timokroeger/misc-stm32-fixes
Misc stm32 fixes
2021-07-30 18:15:50 +02:00
16d5294817 Get rid of some warnings 2021-07-29 18:48:43 -03:00
0421c57bd6 F4: Add PWR configuration to PLL 2021-07-29 18:43:15 -03:00
5cfb9adad8 f4-pll: Add max values per chip 2021-07-29 18:43:15 -03:00
e7714983b3 f4-rcc: Add option to enable debug_wfe and add hello example 2021-07-29 18:43:15 -03:00
5abaf8e9d6 Start working on the F4 PLL 2021-07-29 18:43:13 -03:00
895781d0d1 stm32l4: Fix examples crate name 2021-07-29 18:14:01 +02:00
9342497132 stm32wl55: Use Dbgmcu::enable_all 2021-07-29 17:38:40 +02:00
cad43587e6 stm32l0: Use embassy::main for examples 2021-07-29 17:37:32 +02:00
1ed65cb9e0 Merge pull request #328 from embassy-rs/remove_peripehral_shared
Remove embassy_hal_common::peripheral_shared
2021-07-29 17:22:25 +02:00
4ccac69929 stm32l4: Cleanup examples
* Use `cortex_m_rt::entry` for sync examples
* Use `Dbgmcu::enable_all()` everywhere
2021-07-29 15:54:11 +02:00
2a4890165d stm32f0: Enable debug access in low power modes 2021-07-29 15:35:23 +02:00
e13774574f Remove embassy_hal_common::peripheral_shared 2021-07-29 14:10:17 +02:00
01e0a3928f Merge pull request #326 from embassy-rs/extras-rename
Rename embassy-extras to embassy-hal-common
2021-07-29 13:53:03 +02:00
1457ade49b Merge pull request #325 from embassy-rs/update-chiptool
Update chiptool
2021-07-29 13:47:37 +02:00
7bfb763e09 Rename embassy-extras to embassy-hal-common 2021-07-29 13:44:51 +02:00
8d76c582f5 Update chiptool 2021-07-29 13:39:19 +02:00
c8a48d726a Merge pull request #277 from Liamolucko/fix-peripheral-ub
extras: Fix UB in `Peripheral`
2021-07-29 13:08:30 +02:00
cd1a3fcff3 Don't bother supporting creating a PeripheralMutex in an exception handler 2021-07-29 15:19:57 +10:00
d5ba35424d Replace PeripheralStateUnchecked with register_interrupt_unchecked 2021-07-29 15:11:26 +10:00
61340d8c65 Merge pull request #320 from bobmcwhirter/data-update-28jul
Align with -data HEAD.
2021-07-28 15:45:29 -04:00