Timo Kröger
5ac91933ff
stm32: No need to enable GPIO clocks manually
2021-07-23 17:54:13 +02:00
Bob McWhirter
ec5d44333a
Merge pull request #311 from bobmcwhirter/gpio_enable
...
Auto-enable all GPIOs during init().
2021-07-23 11:38:53 -04:00
Bob McWhirter
650f867b1c
Add a single-column variant to gpio_rcc! macro table
...
which includes just the set of registers that need to be
considered.
Then match against those registers with a single `modify(...)`
2021-07-23 11:32:20 -04:00
Bob McWhirter
13873df30b
Auto-enable all GPIOs during init().
2021-07-23 11:32:19 -04:00
Bob McWhirter
e91c04a673
Merge pull request #310 from bobmcwhirter/dbg
...
Add a `Dbgmcu` struct capable of enabling all relevant DBGMCU.cr fields.
2021-07-23 11:21:02 -04:00
Bob McWhirter
d68f2617e6
Add a Dbgmcu
struct capable of enabling all relevant DBGMCU.cr fields.
...
Includes the addition of a `dbgmcu!(...)` macro table which currently takes
the form of
(cr, $fn_name:ident)
where `$fn_name` is something like `set_dbgsleep_d1` etc.
The method is unsafe, since it's performing unsafe PAC operations.
Two examples modified to demonstrate its usage.
2021-07-22 14:18:48 -04:00
Dario Nieuwenhuis
3655ceff27
Merge pull request #308 from timokroeger/stmf4-example-cleanup
...
Cleanup stm32f4 examples
2021-07-21 23:21:28 +02:00
Timo Kröger
5e998d1a6c
Cleanup stm32f4 examples
...
* Remove dependency on stm32f4 pac crate
* Remove unused `ZeroClock`
2021-07-21 23:12:36 +02:00
Thales
cec2654854
Merge pull request #304 from bobmcwhirter/async_move_dma_transfer
...
The `async move` portion of @thalesfragoso's i2c PR.
2021-07-20 13:07:28 -03:00
Bob McWhirter
2d3137afc7
The async move
portion of @thalesfragoso's i2c PR.
2021-07-20 11:38:16 -04:00
Dario Nieuwenhuis
25b870d811
Merge pull request #302 from embassy-rs/rp-spi-fixes
...
Rp spi fixes
2021-07-20 10:11:58 +02:00
Dario Nieuwenhuis
451e342961
rp/examples: add spi_display example
2021-07-20 10:06:57 +02:00
Dario Nieuwenhuis
da33b3a4d2
rp/spi: disable+enable when setting frequency
2021-07-20 09:43:06 +02:00
Dario Nieuwenhuis
dbff5cc232
rp/spi: properly drain the rx buffer while writing
2021-07-20 09:42:52 +02:00
Dario Nieuwenhuis
b04dc7e783
Merge pull request #226 from huntc/mpsc
...
Multi Producer Single Consumer channel
2021-07-20 08:01:42 +02:00
Dario Nieuwenhuis
1799938187
rp/examples: add spi example
2021-07-19 23:54:18 +02:00
Thales
40ea8298ee
Merge pull request #300 from thalesfragoso/clear-dma
...
stm32: Clear possible set flags after disabling DMA
2021-07-17 17:28:02 -03:00
Thales
f4b8709bac
Merge pull request #281 from thalesfragoso/i2c-256
...
i2c-v2: Support transfers with more than 255 bytes
2021-07-17 17:21:50 -03:00
Thales Fragoso
aae0431d31
stm32: Clear possible set flags after disabling DMA
2021-07-17 16:59:35 -03:00
Dario Nieuwenhuis
59953b5b5e
Merge pull request #295 from embassy-rs/all_dma
...
stm32: impl dma for all chips
2021-07-17 08:32:31 +02:00
Dario Nieuwenhuis
d7176da37c
stm32/examples: update DMA channel names
2021-07-17 08:04:33 +02:00
Dario Nieuwenhuis
36be877ba3
stm32/dma: only set TRBUFF in DMAv1 (H7)
2021-07-17 08:01:20 +02:00
Dario Nieuwenhuis
3655048e0f
stm32/dma: add MuxChannel trait to distinguish DMAMUX1 and DMAMUX2 channels.
2021-07-17 07:54:16 +02:00
Dario Nieuwenhuis
54b5012c56
stm32/dma: update codegen+macrotables for new stm32-data
2021-07-17 07:35:59 +02:00
Dario Nieuwenhuis
dff4b42a33
stm32/dma: Fix macrotable column count not matching in DMAMUX-less BDMAv1.
2021-07-17 04:54:34 +02:00
Bob McWhirter
01cc733c61
Prep for new stm32-data with dmamux differentiation, but not yet using.
2021-07-16 15:44:22 -04:00
Bob McWhirter
0119ea809d
Get DMA on H7 working, add usart_dma example for H7.
2021-07-16 14:41:20 -04:00
Bob McWhirter
1254e99be1
Be able to scrub out BDMA-centric IRQs.
...
Further refine distinction between DMA and BDMA interrupts in the table.
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
ae948415a7
stm32/dma: disable after finishing
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
d0f2dc3abd
Fix rustfmt
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
63a0e188ea
stm32/dma: fix h7 impls
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
2ee20f5dcb
Update vscode settings.
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
3d1391ef2d
stm32/dma: impl all variants
2021-07-16 14:41:20 -04:00
Dario Nieuwenhuis
69fb1b5418
Merge pull request #297 from embassy-rs/h7-smps
...
stm32/pwr: add initial H7 SMPS support
2021-07-16 16:22:21 +02:00
Dario Nieuwenhuis
1b42b30201
stm32/pwr: add initial H7 SMPS support
2021-07-16 01:17:45 +02:00
Dario Nieuwenhuis
7ed43cd843
Merge pull request #296 from thalesfragoso/f0-dmarst
...
Allow for RccPeripheral without reset field and add F0 example
2021-07-15 21:23:14 +02:00
Thales Fragoso
697f93ad42
stm32: Add F0 example
2021-07-15 13:50:39 -03:00
Thales Fragoso
2f08c7ced5
stm32: Allow for RccPeripheral without reset field
...
This fix build on F0, since it doesn't have DMARST. This change makes
RccPeripheral::reset a no-op on peripherals where a reset field couldn't
be found
2021-07-15 13:25:51 -03:00
Thales Fragoso
e06628cdfb
Update stm32-data
2021-07-14 23:39:50 -03:00
Thales Fragoso
aa8c7f990f
i2c-v2: Implement write_vectored
2021-07-14 23:39:50 -03:00
Thales Fragoso
f2e78e9c34
i2c-v2: Correct number of chunks calculation
2021-07-14 23:39:50 -03:00
Thales Fragoso
8c7f8a61e3
i2c-v2: Support transfers with more than 255 bytes
2021-07-14 23:39:50 -03:00
huntc
72d6f79ec7
Feature no longer required given 1.55
2021-07-15 12:31:53 +10:00
huntc
3778f55d80
Provides a cleaner construction of the channel with the common "new" naming
2021-07-15 12:31:53 +10:00
huntc
6f78527aeb
Partial borrow for receiver to enforce compile-time mpssc
2021-07-15 12:31:53 +10:00
huntc
076198a3b9
Small tidy up
2021-07-15 12:31:53 +10:00
huntc
d711e8a82c
Eliminates unsoundness by using an UnsafeCell for sharing the channel
2021-07-15 12:31:53 +10:00
huntc
babee7f32a
Tighten sender/receiver bounds
2021-07-15 12:31:53 +10:00
huntc
d86892ca56
Removed the closing state as it was not required
2021-07-15 12:31:53 +10:00
huntc
a247fa4f2c
Explicitly drop non consumed items
2021-07-15 12:31:53 +10:00