Torin Cooper-Bennun
80b3db4ea6
stm32: can: fd: implement bus-off recovery
...
as per RM0492 and other relevant RMs, bus-off recovery is not automatic.
CCCR.INIT is set by the device upon bus-off; the CPU must reset
CCCR.INIT to initiate the recovery.
2024-04-17 14:58:08 +01:00
Torin Cooper-Bennun
901bdfc7b8
stm32: can: fd: on_interrupt: simplify, rm redundant code
...
PED, PEA are never enabled in the interrupt enable code in
peripheral.rs; no need to process the flags here
2024-04-17 14:57:58 +01:00
Dario Nieuwenhuis
bab4affe7c
Merge pull request #2813 from diondokter/u0-dion
...
More U0 support
2024-04-16 18:45:09 +00:00
Dario Nieuwenhuis
2bd5095991
stm32/usb: enable USV for U0.
2024-04-16 20:37:42 +02:00
Dario Nieuwenhuis
e5e9fb78af
update stm32-metapac.
2024-04-16 20:37:10 +02:00
Daniel Igaz
32b1b4067f
Bug: There are at most 18 channels for the ADC.
2024-04-16 20:27:12 +02:00
Dario Nieuwenhuis
b3710a31f0
Merge pull request #2825 from MaxiluxSystems/fix/adc-blocking-delay-overflow
...
stm32: adc: fix blocking_delay_us() overflowing when sys freq is high
2024-04-16 14:22:39 +00:00
Torin Cooper-Bennun
d928663bae
stm32: adc: fix blocking_delay_us() overflowing when sys freq is high
...
e.g. H503 running at 250 MHz resulted in an upper bound of 17 us here.
casting up to u64 for intermediate calc allows the upper bound to be
increased by a factor of 1e6
2024-04-16 15:13:31 +01:00
Dion Dokter
c8c7c718f3
Merge branch 'master' into u0-dion
2024-04-16 13:48:18 +02:00
James Munns
2315a39293
Remove nested CS
2024-04-16 13:39:00 +02:00
James Munns
75352d181c
Add critical sections to avoid USB OTG Errata
2024-04-16 12:07:40 +02:00
Dario Nieuwenhuis
d6b1233f16
stm32/usart: remove DMA generic params.
2024-04-16 02:00:55 +02:00
Dario Nieuwenhuis
524c24c8b3
Merge pull request #2808 from MaxiluxSystems/feature/stm32h50-flash-swap-banks
...
stm32: flash: h50: implement bank swapping
2024-04-15 22:35:07 +00:00
Dario Nieuwenhuis
6d122c274f
Merge pull request #2792 from wagcampbell/wgc/u5-flash-non-secure
...
Support non-secure flash operations on STM32U5
2024-04-15 22:28:34 +00:00
Warren Campbell
c5119c6318
Add support for using secure registers
2024-04-15 18:02:29 -04:00
Dario Nieuwenhuis
913bb19a34
stm32/i2c: remove DMA generic params.
2024-04-15 23:40:12 +02:00
Dario Nieuwenhuis
2eab099b85
stm32/spi: rename rxdma, txdma -> rx_dma, tx_dma.
2024-04-15 21:56:08 +02:00
Dario Nieuwenhuis
09a284e959
stm32: rename mod traits to macros.
2024-04-15 21:52:40 +02:00
Dario Nieuwenhuis
02da66aec8
stm32/dma: add ChannelAndRequest helper.
2024-04-15 21:52:40 +02:00
Dario Nieuwenhuis
be087e5d43
stm32/spi: remove DMA generic params.
2024-04-15 21:23:49 +02:00
Warren Campbell
2fa0bb7d6e
Use non-secure registers for u5 flash
2024-04-15 14:59:31 -04:00
Torin Cooper-Bennun
f66b63017c
stm32: flash: h50: implement bank swapping
2024-04-15 11:37:40 +01:00
Dario Nieuwenhuis
fcaa7de87e
stm32/rcc: make ClockMux non_exhasutive.
2024-04-15 01:12:28 +02:00
Dario Nieuwenhuis
65c085ce91
Add stm32u0 support.
2024-04-14 22:29:07 +02:00
Dario Nieuwenhuis
87b79d4499
Merge pull request #2807 from chemicstry/rcc_methods
...
Expose RCC enable and disable methods
2024-04-14 20:14:46 +00:00
Dario Nieuwenhuis
4079a8acf8
stm32/adc: update g4 for new pac.
2024-04-14 22:06:41 +02:00
Dario Nieuwenhuis
1f3b690f76
stm32/flash: remove otp flash regions (removed in newer metapacs).
2024-04-14 22:06:41 +02:00
Michael Zill
ffc61f78b0
stm32/spi,crc: update for new PAC
2024-04-14 22:06:41 +02:00
Dion Dokter
e224e6cef4
Add CRC
2024-04-14 01:10:20 +02:00
Dion Dokter
ca84be80bc
Add wdt and flash
2024-04-14 00:45:53 +02:00
Dion Dokter
b659e3d529
Add ADC
2024-04-14 00:04:13 +02:00
Dion Dokter
5f23e39052
Add some examples.
...
- usart works
- dac works
- rng gets stuck on while loop
- usb_serial works, but cannot test due to lack of user usb port
- adc needs work and does not work yet
2024-04-13 18:40:46 +02:00
Dario Nieuwenhuis
ec6ff217ca
Add stm32u0 support.
2024-04-13 03:57:21 +02:00
Dario Nieuwenhuis
52bd24499c
stm32/adc: update g4 for new pac.
2024-04-13 03:34:28 +02:00
Dario Nieuwenhuis
d9426549c3
stm32/flash: remove otp flash regions (removed in newer metapacs).
2024-04-13 03:33:16 +02:00
Michael Zill
9f4d320d67
stm32/spi,crc: update for new PAC
2024-04-13 03:33:04 +02:00
chemicstry
64b806db0b
Expose RCC enable and disable methods
2024-04-12 18:07:44 +03:00
Dario Nieuwenhuis
499c6e84a3
stm32/otg: fix OTG_HS in FS mode.
2024-04-12 03:33:20 +02:00
Boris Faure
98b4eb4491
stm32: fix typo in doc
2024-04-11 22:51:34 +02:00
Andres Vahter
6e24dc58c6
stm32 adc: use fn blocking_delay_us(us: u32)
2024-04-10 22:23:49 +03:00
Andres Vahter
68b1a840c6
stm32 adc: remove DelayNs
2024-04-10 10:33:15 +03:00
Andres Vahter
fd802ffdfd
stm32: use embedded_hal_1::delay::DelayNs
...
This makes delay compatible with https://lib.rs/crates/rtic-monotonics .
2024-04-09 22:32:09 +03:00
Dillon McEwan
2ad82c2adf
Fix 'clocok' typo in RCC docs
2024-04-05 10:07:15 -07:00
Torin Cooper-Bennun
c953b9045b
stm32: adc: v3: [h5] set OR.OP0 to 1 when ADCx_INP0 is selected, per RM
2024-04-05 13:00:33 +01:00
Dario Nieuwenhuis
c2b8ddaa83
stm32/qspi: autodeduce transfer len from buffer len.
...
mirrors change made in #2672 .
2024-04-05 01:41:47 +02:00
Dario Nieuwenhuis
3d7d3e0286
stm32/time-driver: always use CC interrupt.
...
This avoids cfg's, because it works both for timers that have a a dedicated CC interrupt
line, and timers where all interrupts go to a single interrupt line.
2024-04-05 00:56:21 +02:00
eZio Pan
5dc3738bc2
add missing interrupt for timer
2024-04-05 00:51:20 +02:00
eZio Pan
78b9cb98d4
"separate CC interrupt" is for AdvCh4 only
2024-04-05 00:51:20 +02:00
eZio Pan
348a46b110
move enable_outputs
to private trait ...
...
... to avoid API leaking.
2024-04-05 00:51:20 +02:00
Dario Nieuwenhuis
d597815c9a
stm32: remove last few mod sealed's.
2024-04-05 00:48:46 +02:00