Commit Graph

7187 Commits

Author SHA1 Message Date
Dario Nieuwenhuis
497515ed57
Merge pull request #2583 from OroArmor/tim_pll_clk
Enable PLL Clocks for TIMx peripherals on STM32F3xx Chips
2024-02-25 22:45:48 +00:00
Dario Nieuwenhuis
326e32adc4
Merge pull request #2623 from cschuhen/feature/fdcan_pac_cleanup
Cleanup of FDCAN module, mostly review comments.
2024-02-25 21:06:59 +00:00
Corey Schuhen
a737a7350e FDCAN: Remove history from comments. 2024-02-25 10:14:12 +10:00
Corey Schuhen
1327a644b6 FDCAN: Don't require internal module for public API. 2024-02-25 10:14:12 +10:00
Corey Schuhen
0565098b06 FDCAN: Fix some indenting in macros 2024-02-25 10:14:12 +10:00
Corey Schuhen
a061cf3133 FDCAN: Allow access to buffered senders and receivers. 2024-02-25 10:14:12 +10:00
Corey Schuhen
779898c0e7 FDCAN: Expose some pub types in API 2024-02-25 10:14:12 +10:00
Corey Schuhen
2d634d07e0 FDCAN: Remove extra traits from.
Comments

Fix.
2024-02-25 10:13:58 +10:00
Eli Orona
394abda092 Fix report with the same name 2024-02-24 12:58:38 -08:00
Eli Orona
e79d2dd756 Move to internal mod and re-export the enums 2024-02-24 12:54:58 -08:00
Dario Nieuwenhuis
4657c10547
Merge pull request #2606 from embassy-rs/dma-refactor
stm32/dma: add AnyChannel, add support for BDMA on H7.
2024-02-24 01:56:10 +00:00
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
Eli Orona
88e29608ed Rust fmt 2024-02-20 17:59:51 -08:00
Eli Orona
9505695830 Move compile test to the STM32F334 example. 2024-02-20 17:55:05 -08:00
Eli Orona
2ee9b37373 Move to a single Mux Struct. 2024-02-20 17:54:35 -08: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