Timo Kröger
b36337b3d2
Refactor bit search logic when no clock specified
...
Always search for a enable bit, even when no clock is specified in the
yaml. Try to derive the clock name from the register name.
This change picked up USART2 for stm32wle which was missing the clock.
2021-08-04 12:42:35 +02:00
Dario Nieuwenhuis
de77dc11ca
Merge pull request #301 from thalesfragoso/i2cv2-dma
...
i2c-v2: Implement write_dma and write_dma_vectored
2021-08-04 12:28:18 +02:00
Timo Kröger
37536695e1
Refactor find_reg_for_field()
2021-08-04 11:22:54 +02:00
Dario Nieuwenhuis
5d31dd328f
Merge pull request #341 from lulf/usart-dma-read
...
Add uart::Read DMA-based implementation
2021-08-04 11:02:15 +02:00
Ulf Lilleengen
0d02342b2d
Rename bread -> read_blocking
2021-08-04 08:34:30 +02:00
Bob McWhirter
c52ef23280
Merge pull request #342 from bobmcwhirter/h7-example-cleanup
...
Enhance Rcc configuration to be more fluentish.
2021-08-03 14:42:09 -04:00
Bob McWhirter
3e6aceaaa7
Run cargo-fmt on the h7 examples.
2021-08-03 14:31:41 -04:00
Bob McWhirter
88c11a653c
Formatting fixes.
2021-08-03 14:12:11 -04:00
Bob McWhirter
d7409d63e8
Enhance Rcc configuration to be more fluentish.
...
Clean up H7 examples to remove all vegan HALs and PACs.
2021-08-03 13:57:18 -04:00
Timo Kröger
c985c031d4
Use a regex to match find enable and rst regs
2021-08-03 17:58:28 +02:00
Timo Kröger
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
Timo Kröger
fba8b86005
BTreeMaps to preserve ordering of generated code
...
Makes diffing of changes easier
2021-08-03 17:58:26 +02:00
Ulf Lilleengen
6ff0614cb6
Add uart::Read DMA-based implementation
...
* Rename existing read() to bread() (blocking)
2021-08-03 15:31:24 +02:00
Dario Nieuwenhuis
ad62900a40
Merge pull request #339 from embassy-rs/reomve-workaround
...
Remove version pinning workaround.
2021-08-02 20:53:44 +02:00
Dario Nieuwenhuis
6043383008
Remove version pinning workaround.
2021-08-02 20:47:30 +02:00
Dario Nieuwenhuis
9ca43752eb
Merge pull request #327 from embassy-rs/remove-pin
...
PeripheralMutex: Remove Pin
2021-08-02 20:28:54 +02:00
Dario Nieuwenhuis
3f28bb6c77
common: Initialize PeripheralMutex state with closure to ensure it's done in-place.
2021-08-02 20:13:41 +02:00
Dario Nieuwenhuis
e238079d7d
Make const the states when able.
2021-08-02 19:59:02 +02:00
Dario Nieuwenhuis
63ac7ac799
Mark new
s as unsafe due to not being leak-safe.
2021-08-02 19:55:04 +02:00
Dario Nieuwenhuis
af87031d62
hal-common: remove Pin in PeripheralMutex
2021-08-02 19:55:04 +02:00
Dario Nieuwenhuis
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
Bob McWhirter
63b32b39e1
Use an em bikeshed instead of an underscore bikeshed.
2021-08-02 13:29:06 -04:00
Bob McWhirter
5f9447abb4
Put the implicit memory.x behind a memory_x
feature on embassy-stm32.
2021-08-02 13:21:30 -04:00
Bob McWhirter
3a00a1dba7
Undo the pwr-guarding cfg.
2021-08-02 11:34:41 -04:00
Bob McWhirter
71040d1f2c
Update to latest stm32-data.
2021-08-02 11:23:55 -04:00
Bob McWhirter
4da8ed471b
Fallback to total RAM or FLASH size if otherwise not present.
2021-08-02 11:23:55 -04:00
Bob McWhirter
f6c5f039c8
Emit a default memory.x alongside device.x from metapac.
2021-08-02 11:23:55 -04:00
Dario Nieuwenhuis
c458ad52e6
Merge pull request #337 from lulf/introduce-future-types
...
Introduce future types
2021-08-02 13:20:29 +02:00
Ulf Lilleengen
f2c2ad06ca
Use lifetime to ensure only a single future is created at a time
2021-08-02 12:42:06 +02:00
Ulf Lilleengen
4d8d8e386f
Make RecvFuture sync
...
RecvFuture always locks the underlying Channel when polled.
2021-08-02 11:18:59 +02:00
Ulf Lilleengen
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
Thales Fragoso
64a3ebd183
i2c-v2: Use new interrupts macro
2021-08-01 19:10:42 -03:00
Thales Fragoso
c1bb83d29d
i2c-v2: Deref interrupt enabling in write_dma_internal
2021-08-01 19:10:42 -03:00
Thales Fragoso
6ddc83029a
i2c-v2: Simplify write_dma
2021-08-01 19:10:42 -03:00
Thales Fragoso
362f7efe99
i2c-v2: Implement write_dma and write_dma_vectored
2021-08-01 19:10:42 -03:00
Dario Nieuwenhuis
0a1da180d0
Merge pull request #335 from bgamari/no-build-core
...
examples: Drop build-std = ["core"]
2021-07-31 19:07:58 +02:00
Ben Gamari
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
Dario Nieuwenhuis
3835278567
Merge pull request #321 from thalesfragoso/f4-pll
...
F4 PLL
2021-07-31 11:08:46 +02:00
Thales Fragoso
21e3acaa00
stm32: Use build.rs to generate a more coarse feature
2021-07-31 02:52:26 -03:00
Dario Nieuwenhuis
e9885a61f8
Merge pull request #329 from timokroeger/misc-stm32-fixes
...
Misc stm32 fixes
2021-07-30 18:15:50 +02:00
Thales Fragoso
16d5294817
Get rid of some warnings
2021-07-29 18:48:43 -03:00
Thales Fragoso
0421c57bd6
F4: Add PWR configuration to PLL
2021-07-29 18:43:15 -03:00
Thales Fragoso
5cfb9adad8
f4-pll: Add max values per chip
2021-07-29 18:43:15 -03:00
Thales Fragoso
e7714983b3
f4-rcc: Add option to enable debug_wfe and add hello example
2021-07-29 18:43:15 -03:00
Thales Fragoso
5abaf8e9d6
Start working on the F4 PLL
2021-07-29 18:43:13 -03:00
Timo Kröger
895781d0d1
stm32l4: Fix examples crate name
2021-07-29 18:14:01 +02:00
Timo Kröger
9342497132
stm32wl55: Use Dbgmcu::enable_all
2021-07-29 17:38:40 +02:00
Timo Kröger
cad43587e6
stm32l0: Use embassy::main
for examples
2021-07-29 17:37:32 +02:00
Dario Nieuwenhuis
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
Timo Kröger
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