Commit Graph

2532 Commits

Author SHA1 Message Date
Dario Nieuwenhuis
9bd34429f3 stm32: add missing + 'a bounds on trait GATs 2021-08-04 19:39:54 +02:00
Bob McWhirter
f4971fbb79 Further work sharing config for example and removing duplicated code. 2021-08-04 13:39:02 -04:00
Dario Nieuwenhuis
250f1cd0a5 util: fix unused return warning 2021-08-04 19:38:05 +02:00
Bob McWhirter
4fe9114695 Remove unused import. 2021-08-04 11:40:47 -04:00
Bob McWhirter
0787c8f8f5 Formatting. 2021-08-04 11:35:18 -04:00
Bob McWhirter
03f15d3a60 Remove builders from Config(s) and examples. 2021-08-04 11:32:39 -04:00
Dario Nieuwenhuis
07a095be0d
Merge pull request #343 from embassy-rs/rustfmt-everything
Rustfmt everything
2021-08-04 15:35:44 +02:00
Dario Nieuwenhuis
a1a5acb825 rustfmt everything 2021-08-04 15:25:21 +02:00
Dario Nieuwenhuis
87f27d5ed6 ci: rustfmt check all .rs files
The old script was missing many .rs files that were not enabled due to cfg's.
2021-08-04 15:23:32 +02:00
Dario Nieuwenhuis
f574e55395
Merge pull request #331 from timokroeger/stm32-enable-bit
metapac: Improve enable bit search
2021-08-04 15:15:08 +02:00
Timo Kröger
f240edc579 Remove broken panic message 2021-08-04 12:51:24 +02:00
Timo Kröger
e21faaeb47 cargo fmt 2021-08-04 12:43:51 +02:00
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 news 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