Commit Graph

7162 Commits

Author SHA1 Message Date
Dario Nieuwenhuis
e67dfcb04f stm32/dma: add AnyChannel, add support for BDMA on H7. 2024-02-24 02:41:41 +01:00
Dario Nieuwenhuis
f77d59500e
Merge pull request #2618 from barnabywalters/g4rcc
[embassy-stm32] G4 RCC refactor amendments and additions
2024-02-23 13:05:01 +00:00
Barnaby Walters
b091ffcb55 [embassy-stm32] G4 RCC refactor amendments and additions
* Added assertions for a variety of clock frequencies, based on the reference manual and
  stm32g474 datasheet. The family and numbers are consistent enough that I’m assuming
  these numbers will work for the other chips.
* Corrected value of pll1_q in set_clocks call, added pll1_r value
2024-02-23 01:59:24 +01:00
Dario Nieuwenhuis
840a9a9ce7
Merge pull request #2597 from fe1es/stm32l0-reset-rtc
stm32/rcc: reset RTC on stm32l0
2024-02-23 00:50:09 +00:00
Dario Nieuwenhuis
a6a5d9913c
Merge branch 'main' into stm32l0-reset-rtc 2024-02-23 01:45:10 +01:00
Dario Nieuwenhuis
2855bb6968
Merge pull request #2617 from embassy-rs/u5-rcc
stm32/rcc: port U5 to new API, add all PLLs, all HSE modes.
2024-02-23 00:37:20 +00:00
Dario Nieuwenhuis
d24349f57c stm32/tests: run stm32u5a5zj from flash due to wrong RAM size in stm32-data. 2024-02-23 01:33:37 +01:00
Dario Nieuwenhuis
0665e0d452 stm32/rcc: port U5 to new API, add all PLLs, all HSE modes. 2024-02-23 01:24:05 +01:00
Dario Nieuwenhuis
4481c5f3cc
Merge pull request #2616 from embassy-rs/h5-stupid-errata
stm32/rcc: workaround nonsense RAM suicide errata on backup domain reset.
2024-02-23 00:25:30 +01:00
Dario Nieuwenhuis
475dea0208 stm32/rcc: workaround nonsense RAM suicide errata on backup domain reset. 2024-02-23 00:18:24 +01:00
Dario Nieuwenhuis
9c918f6474
Merge pull request #2588 from cschuhen/feature/fdcan_buffered
Add FDCAN Buffered mode.
2024-02-23 00:07:05 +01:00
James Munns
2cceeab564
Merge pull request #2611 from CBJamo/rp2040_i2c_improvements
Rp2040 i2c improvements
2024-02-22 12:14:16 +00:00
Caleb Jamison
f1bf931920 fixup another display -> debug 2024-02-22 06:40:39 -05:00
Caleb Jamison
25bff1d0b9 Fixup comments from James 2024-02-22 06:34:58 -05:00
Caleb Jamison
89986fe967 Fixup display -> debug 2024-02-22 06:21:40 -05:00
Caleb Jamison
5ddee8586a rp2040 i2c_slave improvements
Fix race condition that appears on fast repeated transfers.

Add public reset function. Because application code can stall the bus,
we need to give application code a way to fix itself.
2024-02-22 06:15:31 -05:00
Caleb Jamison
0c6d3ea051 Add SetConfig impl to rp2040 i2c
Also expand test to cover 1kHz, 100kHz, 400kHz, and 1MHz speeds.
2024-02-22 06:14:48 -05:00
Dario Nieuwenhuis
b96c42077e
Merge pull request #2609 from embassy-rs/nrf-buffereduarte-stuff
nrf/uart: add support for tx-only and rx-only buffered uart.
2024-02-22 01:10:16 +01:00
Dario Nieuwenhuis
6a977d2ae9 nrf/uarte: prevent accidentally driving tx pin on rxonly uart if it was left in PSEL. 2024-02-22 00:07:09 +01:00
Dario Nieuwenhuis
036f703a4a nrf/uart: add buffereduart drop, rxonly, txonly tests. 2024-02-21 23:38:51 +01:00
Dario Nieuwenhuis
2feed96c91 nrf/uart: Add support for rx-only or tx-only BufferedUart. 2024-02-21 23:23:04 +01:00
Dario Nieuwenhuis
4fbe18f821 nrf/uart: share waker state between buffered and nonbuffered. 2024-02-21 22:29:37 +01:00
Dario Nieuwenhuis
1f17fdf84e nrf/buffered_uart: refactor so rx/tx halves are independent. 2024-02-21 22:13:35 +01:00
Dario Nieuwenhuis
c2e429205d nrf/uart: add split_by_ref. 2024-02-21 21:48:48 +01:00
Dario Nieuwenhuis
835146a724
Merge pull request #2608 from embassy-rs/net-fix-fin-flush
net/tcp: fix flush() not waiting for ACK of FIN.
2024-02-21 20:35:56 +00:00
Dario Nieuwenhuis
250cfa5f5f net/tcp: fix flush() not waiting for ACK of FIN. 2024-02-21 21:13:10 +01:00
Dario Nieuwenhuis
111306ac0c nrf/buffered_uart: simplify split lifetimes. 2024-02-21 19:09:58 +01:00
Dario Nieuwenhuis
88bb598429
Merge pull request #2586 from embassy-rs/rp-reenable-i2c-test
tests/rp: reenable i2c test.
2024-02-21 13:53:14 +00:00
Dario Nieuwenhuis
18da9a2b66
Merge pull request #2605 from Gekkio/usv-on-l4
USB needs PWR_CR2 USV set on STM32L4
2024-02-20 20:03:21 +00:00
Joonas Javanainen
9b2d096f4f
USB needs PWR_CR2 USV set on STM32L4
Confirmed to be needed on an STM32L422, and based on a quick look at
L4/L4+ reference manuals, this bit is present and required to be set on
all L4 chips that have some kind of USB peripheral (USB or OTG_FS).
The `usb_otg` driver already sets it for `cfg(stm32l4)` and we should do
the same thing here.
2024-02-20 21:47:13 +02:00
Dario Nieuwenhuis
55187c7276
Merge pull request #2602 from embassy-rs/peripheralref-no-derefmut
hal-internal: remove impl DerefMut for PeripheralRef.
2024-02-20 13:51:01 +00:00
Dario Nieuwenhuis
280f60654b
Merge pull request #2596 from NBonaparte/nrf-spi-drive
feat(nrf/spim): allow specifying drive of SPI pins
2024-02-20 13:48:50 +00:00
NBonaparte
ba2b4aad81 fix(nrf/spim): use OutputDrive to set pin drives 2024-02-19 17:46:25 -08:00
Dario Nieuwenhuis
b98057d0c9
Merge pull request #2600 from MaxiluxSystems/flash_h50
Flash support for STM32H50x [wip]
2024-02-20 01:19:02 +00:00
Dario Nieuwenhuis
ce81bb5d53
Merge pull request #2559 from mchant/main
added usb_hid_mouse example for rp
2024-02-20 00:05:41 +00:00
Dario Nieuwenhuis
e8474426d8 hal-internal: remove impl DerefMut for PeripheralRef.
if you have `PeripheralRef<'a, AnyPIn>` for pin A, and `AnyPin` (owned) for pin B, you can `mem::swap` them.
so, getting access forever to pin A, just by "sacrificing" pin B

this defeats the point of PeripheralRef, which is if you got a `PeripheralRef<'a, T>` then you're only allowed to use the peripheral for `'a`.

Also some drivers rely on the fact only one instance of a singleton exists for soundness, so this is a soundness fix for those.
2024-02-20 01:02:15 +01:00
Mick Chanthaseth
bae30fb397
removed extra spaces. 2024-02-19 15:41:15 -08:00
Mick Chanthaseth
9c870981e3
fixed formatting in usb_hid_mouse.rs 2024-02-19 15:28:57 -08:00
Mick Chanthaseth
f3b96d8ba0
Updated formatting in usb_hid_mouse.rs. 2024-02-19 15:14:28 -08:00
Torin Cooper-Bennun
67230dc444 flash: h50: first pass at implementation 2024-02-19 16:05:50 +00:00
fe1es
5b7e2d8826 stm32/rcc: reset RTC on stm32l0 2024-02-19 15:25:24 +09:00
NBonaparte
6ecac3bc95 feat(nrf/spim): allow specifying drive of SPI pins 2024-02-18 19:37:35 -08:00
Dario Nieuwenhuis
69bfcaad42
Merge pull request #2594 from exzachlyvv/zvv/u5-i2c
Add simple i2c example for u5
2024-02-18 22:35:18 +00:00
Corey Schuhen
3f93105e9f Add dep for static_cell to example. 2024-02-19 08:33:19 +10:00
Zach
f12bba8a6d Add simple i2c example for u5 2024-02-18 16:26:44 -06:00
Ulf Lilleengen
63f955ce35
Merge pull request #2589 from plaes/nrf-clippy
nrf: Add some fixes for issues pointed out by clippy
2024-02-18 18:17:07 +00:00
Dario Nieuwenhuis
034e47abac
Merge pull request #2591 from exzachlyvv/zvv/u5-flash
support u5 flash
2024-02-18 17:55:35 +00:00
Dario Nieuwenhuis
c7e3eca98c
Merge pull request #2590 from andelf/fix/rp-io-bank
rp: Fix wrong io _bank calc
2024-02-18 17:53:59 +00:00
Dario Nieuwenhuis
e7af0f7f00
Merge pull request #2592 from exzachlyvv/zvv/u5-rng
u5 - add working rng example
2024-02-18 17:48:57 +00:00
Dario Nieuwenhuis
df6cf8da95
Merge pull request #2593 from MabezDev/cloneable-delay
time: cloneable delay
2024-02-18 17:45:44 +00:00