Dario Nieuwenhuis
e3fe08428f
stm32/rcc: fix build for some f0 and l4 chips.
...
Fixes #2531
2024-02-04 22:07:17 +01:00
Grant Miller
87a52f5ead
stm32/usart: Add doc links to buffered uarts
2024-02-03 17:04:20 -06:00
Caleb Garrett
1f940bf9e8
Merge branch 'main' into hash
2024-02-03 17:28:20 -05:00
Caleb Garrett
72bbfec39d
Added hash DMA implementation.
2024-02-03 16:10:00 -05:00
Stefan Gehr
b9d0069671
correct spelling of the word "receive"
2024-02-03 14:56:31 +01:00
Dario Nieuwenhuis
9866847375
stm32: autogenerate clocks struct, enable mux for all chips.
2024-02-02 23:24:34 +01:00
Dario Nieuwenhuis
a099084bff
Merge pull request #2520 from Ecco/stm32wba-rcc-v3
...
Migrate STM32WBA to RCCv3
2024-02-02 20:48:39 +00:00
Romain Goyet
92690d8590
Migrate STM32WBA to RCCv3
2024-02-02 14:12:26 -05:00
Dario Nieuwenhuis
e05c8e2f44
stm32/dac: use autogenerated RCC impls.
2024-02-01 23:47:30 +01:00
Caleb Garrett
1027530902
Added hash interrupts for async.
2024-02-01 17:27:25 -05:00
Dario Nieuwenhuis
e7d1119750
stm32: automatically use refcounting for rcc bits used multiple times.
2024-02-01 23:15:17 +01:00
Joonas Javanainen
7e0f287431
Fix ADC max frequency for F2
2024-02-01 21:58:36 +02:00
Joonas Javanainen
21024e8638
Fix F2 temperature sensor ADC channel
...
On all F2 devices (F205/207/215/217) the sensor is connected to
ADC1_IN16, and is not shared with VBAT which is connected to ADC1_IN18.
2024-02-01 21:48:29 +02:00
Romain Goyet
aa767272a8
STM32WBA's high speed external clock has to run at 32 MHz
2024-02-01 13:42:48 -05:00
Caleb Garrett
1dbfa5ab72
Added hash v1/v2 configs.
2024-02-01 10:28:12 -05:00
Caleb Garrett
6e9ddd4626
Added hash module with blocking implementation. Included SHA256 example.
2024-01-31 21:21:36 -05:00
Dario Nieuwenhuis
7e02389995
Merge pull request #2410 from eZioPan/waveform-on-CHx
...
impl waveform with TIM OC Channel DMA
2024-02-01 01:02:01 +00:00
Dario Nieuwenhuis
e613324e16
stm32/eth: rename new_rmii to new, update metapac to fix issues with PC2_C.
2024-02-01 01:39:52 +01:00
Simon B. Gasse
42d8f3930a
Implement MII interface
...
- Extend the eth/v2 module to support MII besides RMII.
- Replace `Ethernet::new` with `Ethernet::new_mii` and
`Ethernet::new_rmii`.
- Update ethernet examples.
- Add example for MII ethernet.
2024-02-01 01:33:34 +01:00
Corey Schuhen
1de78d0490
Initial FDCAN driver implementation.
...
Original author:
Torin Cooper-Bennun <tcbennun@maxiluxsystems.com>
Cleanup and documentaion by:
Tomasz bla Fortuna <bla@reactor.local>
Corey Schuhen <cschuhen@gmail.com>
Use new PAC method now that the names are common.
Use broken out definitions that can be shared with bxcan
Populate Rx struct with an embassy timestamp.
Remove use of RefCell.
As per review comment. - THis will probably get squashed down.
Fix
2024-01-31 05:40:05 +10:00
Tomasz bla Fortuna
03ba45065e
Add FDCAN clock registers to G4 RCC.
...
Author: Adam Morgan <adam@luci.com>
Break definitions out of bxcan that can be used innm fdcan.
Typo
2024-01-31 05:40:05 +10:00
Tomasz bla Fortuna
a91a7a8557
Add FDCAN dependency in correct flavor based on selected chip.
...
Author: Torin Cooper-Bennun <tcbennun@maxiluxsystems.com>
Change from review.
2024-01-31 05:40:05 +10:00
Dario Nieuwenhuis
5b2293e2b1
update stm32-metapac.
2024-01-30 02:34:12 +01:00
Dario Nieuwenhuis
3387ee7238
stm32/gpio: remove generics.
2024-01-22 21:31:06 +01:00
Dario Nieuwenhuis
43b6258a69
Merge pull request #2416 from andresv/stm32-fix-buffered-uart-flush
...
stm32: fix buffered uart flush
2024-01-20 01:50:55 +00:00
Dario Nieuwenhuis
67159d80bb
Merge pull request #2429 from jr-oss/stm32_simple_pwm_add_set_output_compare_mode
...
stm32/simple_pwm: add set_output_compare_mode
2024-01-20 01:33:49 +00:00
Dario Nieuwenhuis
326bff322e
Merge pull request #2415 from hdoordt/patch-1
...
Make adc::Resolution::to_max_count const
2024-01-20 01:31:22 +00:00
Andres Vahter
ec2e3de0f4
stm32 uart: fix buffered flush for usart_v1, usart_v2
...
There is one caveat. For some reason with first send using usart_v1/usart_v2 TC flag appears right after first byte from buffer is written to DR. Consecutive transfers work as expected - TC flag appears when last byte is fully transferred to wire.
2024-01-20 00:15:40 +01:00
Andres Vahter
534c53c901
stm32 uart: remove unwrap
...
unwraps take more space because of panics
2024-01-20 00:15:40 +01:00
Andres Vahter
c936d66934
stm32 uart: fix flush
for non usart_v4 variants
...
Byte was written to TDR and right after that waker was called. This means `flush` would see that `tx_buf` is empty and can return Ready although actually hardware was still writing this last byte to the wire.
With this change non `usart_v4 ` variants would also use TC interrupt to check when last byte was sent out.
2024-01-20 00:15:39 +01:00
Andres Vahter
17d6e4eefe
stm32 uart: do not wake after sending each byte
...
usart_v4 uses TC interrupt to see if all bytes are sent out from the FIFO and waker is called from this interrupt. This minimises unnecessary wakeups during sending.
2024-01-20 00:15:39 +01:00
Andres Vahter
ec47e931ac
stm32: fix buffered uart flush
...
usart_v4 uses internal FIFO and therefore actually all bytes are not yet sent out although state.tx_buf.is_empty()
2024-01-20 00:15:39 +01:00
Harry Brooke
d781e231cd
make usart::State private
2024-01-19 23:20:20 +01:00
Dario Nieuwenhuis
9cd0beaee3
Merge pull request #2450 from shufps/feat/timer-driver-tim22-tim23
...
adds timer-driver for tim21 and tim22 (on L0)
2024-01-15 12:01:22 +01:00
shufps
e969b88e5a
fixed trailing white spaces
2024-01-15 11:23:41 +01:00
shufps
2b64913664
fixed tim21
2024-01-15 08:11:35 +01:00
shufps
4e2361c024
adds timer-driver for tim21 and tim22 (on L0)
2024-01-15 08:11:22 +01:00
Dario Nieuwenhuis
583555bc8a
Suppress "unused" warnings.
2024-01-14 23:20:51 +01:00
shufps
018c48cf1c
changes to get usb working on a L1. Adds a usb_serial example too
2024-01-14 22:43:22 +01:00
Dario Nieuwenhuis
4c23f197b3
Fix invalid "async" crates.io category.
2024-01-12 00:39:01 +01:00
Dario Nieuwenhuis
6a1c415a4c
Complete cargo.tomls more.
2024-01-12 00:32:47 +01:00
Dario Nieuwenhuis
9f6517e408
stm32,nrf: add warning on docs.rs directing the user to docs.embassy.dev.
2024-01-11 23:43:17 +01:00
Dario Nieuwenhuis
5304994363
Add docs.rs metadata to all crates.
2024-01-11 23:17:02 +01:00
Dario Nieuwenhuis
22197320ff
bump embassy-time 0.3, embassy-executor 0.5, embassy-net 0.4.
2024-01-11 23:01:24 +01:00
Dario Nieuwenhuis
b3ab2d91f7
stm32: use released metapac.
2024-01-11 22:05:01 +01:00
Dario Nieuwenhuis
e18d673721
More readme fixes.
2024-01-11 21:23:07 +01:00
Barnaby Walters
557399e2d6
Included README.md in docs
2024-01-11 20:00:33 +01:00
Barnaby Walters
1697386820
Correction from review
2024-01-11 19:57:24 +01:00
Barnaby Walters
ccf61f50fe
Corrections from review
2024-01-11 19:55:15 +01:00
Barnaby Walters
4caafe10ae
Expanded readme for crates release
2024-01-11 19:49:05 +01:00
Dario Nieuwenhuis
15f94fb0fc
time: split driver into a separate embassy-time-driver crate.
2024-01-11 16:56:08 +01:00
Ralf
db776c9623
stm32/simple_pwm: add set_output_compare_mode
2024-01-10 18:48:26 +01:00
Dario Nieuwenhuis
3bc6e414f7
stm32: update metapac.
2024-01-10 18:06:47 +01:00
Dario Nieuwenhuis
495b8b739a
Change GPIO inherent methods back to &self
.
...
With the embedded-hal rc3 update I changed them to require `&mut self`, but
in retrospect I think `&self` is better, for extra flexibility.
This PR reverts the changes from the rc3 update to inherent methods.
2024-01-10 00:00:10 +01:00
Dario Nieuwenhuis
c9ac39df94
Update embedded-hal to v1.0
2024-01-09 23:37:14 +01:00
Henk Oordt
45b7645525
Make adc::Resolution::to_max_count const
2024-01-08 13:56:21 +01:00
eZio Pan
b16cc04036
bug fix
2024-01-08 19:18:24 +08:00
eZio Pan
890a1269d0
refactor with clippy
2024-01-06 22:48:21 +08:00
eZio Pan
424ddaf3d9
impl waveform with TIM Channel
2024-01-06 22:22:38 +08:00
Dario Nieuwenhuis
294046cddb
Merge pull request #2405 from Sizurka/stm32g0-usb
...
stm32: Add G0 USB RCC and example
2024-01-06 00:03:54 +00:00
Dario Nieuwenhuis
208ad8fbfc
stm32/flash: add support for f1.
2024-01-05 23:49:10 +01:00
Derek Hageman
801a36c7b4
stm32: Add G0 USB RCC
...
Add configuration for STM32G0 USB clock.
2024-01-05 07:56:22 -07:00
Dario Nieuwenhuis
03ba4ae386
stm32: update metapac.
2024-01-03 18:39:22 +01:00
Tyler Gilbert
7944e854dd
Fix formatting of comments
2024-01-03 11:07:57 -06:00
Tyler Gilbert
994b77e684
Add write_immediate() function to STM32 DMA ringbuffer API to pre-fill the buffer before starting the DMA
2024-01-03 11:06:03 -06:00
Tyler
727906fa04
Update u5.rs
...
Update comments on p and q divider values to correctly describe what the clock outputs are used for.
2024-01-03 11:04:48 -06:00
Tyler Gilbert
31bf127807
Update STM32 RCC U5 to support P and Q dividers
2024-01-03 10:46:45 -06:00
Dario Nieuwenhuis
5fb6ad9a6a
update stm32data, fixes missing interrupts.
2024-01-03 02:10:42 +01:00
Adin Ackerman
d372cba266
additional chip variants required more clocks
2024-01-02 16:25:51 -08:00
Adin Ackerman
34713b4910
fix g0 being left out of some clock controls
2024-01-02 16:03:23 -08:00
Christian Enderle
7f00d7aa0c
allow unused variable
2024-01-02 23:29:33 +01:00
Christian Enderle
6da3db1190
low-power: add feature for stm32l5
2024-01-02 23:07:16 +01:00
Christian Enderle
f1c077ed2e
low-power: add stop support for stm32l5
2024-01-02 23:05:47 +01:00
Christian Enderle
cbdd570ad5
dbgmcu: add stm32l5 support
2024-01-02 22:21:59 +01:00
Christian Enderle
92995e8bb1
update metapac to stm32-data PR 333
2024-01-02 22:13:06 +01:00
Dario Nieuwenhuis
79ce34931d
Merge pull request #2367 from eZioPan/simplepwm-dma
...
implement PWM waveform generating with DMA
2024-01-02 16:32:06 +00:00
Dario Nieuwenhuis
638aa313d4
stm32/pwm: simplify impl blocks.
2024-01-02 17:28:23 +01:00
Dario Nieuwenhuis
cad4efe57f
stm32/timer: add missing supertrait bounds.
2024-01-02 17:28:08 +01:00
eZio Pan
c276da5fcb
ask a DMA Channel only when use .gen_waveform()
2024-01-02 14:01:09 +08:00
Ben V. Brown
26c0e5d439
Extend RTC low power mode for STM32G0
2024-01-02 16:15:11 +11:00
eZio Pan
f5a218a018
Merge branch 'embassy-rs:main' into simplepwm-dma
2024-01-02 11:55:09 +08:00
Dario Nieuwenhuis
9c2d2ff64d
Merge pull request #2358 from lights0123/half-duplex
...
stm32: add half duplex USART driver
2024-01-01 22:55:06 +00:00
eZio Pan
873ee06151
some trivial fix
...
use less #[cfg] macro; reuse same variable
2023-12-30 12:01:08 +08:00
eZio Pan
24f569821c
record&restore TIM OC to it's earlier state
2023-12-29 23:22:10 +08:00
Dario Nieuwenhuis
90e96d281f
Merge pull request #2373 from embassy-rs/jamesmunns-patch-2
...
stm32: Add breadcrumb to i2cv1 investigation
2023-12-28 23:58:19 +01:00
James Munns
a780339103
stm32: Add breadcrumb to i2cv1 investigation
...
Adds an in-code breadcrumb for https://github.com/embassy-rs/embassy/issues/2372
2023-12-28 23:57:10 +01:00
Dario Nieuwenhuis
a2faa9e14a
Merge pull request #2364 from embassy-rs/james/reenable-stm32-i2cv1-ints
...
STM32: Re-enable I2Cv1 Interrupts if poll-fn is not ready
2023-12-28 23:56:40 +01:00
Dario Nieuwenhuis
750aa3ceec
Merge pull request #2368 from chrenderle/l5-rtc
...
Add low-power support for stm32l5
2023-12-28 12:44:46 +00:00
Dario Nieuwenhuis
551c864012
Merge pull request #2369 from chrenderle/dbgmcu
...
dbgmcu: set bits to false when disabled
2023-12-28 12:38:24 +00:00
eZio Pan
8c2a6df03b
implement PWM waveform generating with DMA
2023-12-28 20:09:12 +08:00
Christian Enderle
da31aa44c0
dbgmcu: set bits to false when disabled
2023-12-28 10:52:23 +01:00
James Munns
a142be8bb8
Seems to help
2023-12-27 19:12:44 +01:00
Ben Schattinger
87b23f9037
stm32: fix USB wait_enabled IN messages
2023-12-26 18:26:01 -05:00
Ben Schattinger
211f3357b7
stm32: USB IN endpoints use IN wakers
...
fixes #2360
2023-12-26 18:22:54 -05:00
lights0123
dc295fa1db
stm32: add half duplex USART driver
2023-12-26 16:35:36 -05:00
Christian Enderle
30023c3bcc
Add low-power support for stm32l5
2023-12-26 11:58:38 +01:00
eZio Pan
d90a97aa4c
update metapac after stm32-data PR323
...
and refactor a few code with cargo clippy
2023-12-25 22:03:32 +08:00
Scott Mabin
487a6324ef
stm32: make time provider public again
2023-12-23 00:14:10 +00:00
Ulf Lilleengen
530ead5fde
Merge pull request #2339 from embassy-rs/make-static-remove
...
Replace make_static! macro usage with non-macro version
2023-12-21 10:02:11 +00:00
Ulf Lilleengen
0acf7b09c3
chore: replace make_static! macro usage with non-macro version
2023-12-21 10:29:57 +01:00
eZio Pan
745d618ab7
note on circular mode DMA
2023-12-21 17:03:10 +08:00
Ulf Lilleengen
1c3cf347cb
remove embedded-sdmmc
...
Remove support for embedded-sdmmc due to lack of maintainership. Bring
it back once the upstream includes the async functionality.
2023-12-20 13:25:36 +01:00
dragonn
871ed538b1
fix stm32 rtc year from 1970 base 2000
2023-12-19 21:17:42 +01:00
Dario Nieuwenhuis
c8c8b89104
stm32: doc everything else.
2023-12-19 18:03:20 +01:00
Dario Nieuwenhuis
189b15c426
stm32/timer: docs.
2023-12-19 17:35:38 +01:00
Dario Nieuwenhuis
7ec1ed4de3
Merge pull request #2324 from barnabywalters/stm32-usart-docs
...
stm32: Documented usart public API
2023-12-19 16:58:27 +01:00
Barnaby Walters
f97ef61ef8
Documented usart public API
2023-12-19 16:41:00 +01:00
Dario Nieuwenhuis
71584409d9
Merge pull request #2321 from embassy-rs/stm32-docs
...
stm32: document hrtim, qspi, sdmmc, spi.
2023-12-19 15:29:26 +00:00
Dario Nieuwenhuis
1ea87ec6e7
stm32: document hrtim, qspi, sdmmc, spi.
2023-12-19 16:21:51 +01:00
Dario Nieuwenhuis
7d9a76da00
Merge pull request #2313 from eZioPan/update-metapac6
...
match up with "DMA cleanup" metapac change
2023-12-19 15:20:15 +00:00
eZio Pan
3e2e109437
update metapac dep
2023-12-19 19:09:06 +08:00
Priit Laes
fc724dd707
stm32: i2c: Clean up conditional code a bit
...
By moving conditional code inside the functions, we can
reduce duplication and in one case we can even eliminate one...
2023-12-19 11:48:58 +02:00
eZio Pan
254d587385
match up with metapac change
2023-12-19 17:12:34 +08:00
Dario Nieuwenhuis
e1f588f520
stm32/sai: fix typo.
2023-12-19 00:36:50 +01:00
Dario Nieuwenhuis
49534cd405
stm32: more docs.
2023-12-19 00:10:36 +01:00
Dario Nieuwenhuis
138318f611
stm32/sai: docs, remove unused enums.
2023-12-19 00:06:30 +01:00
Dario Nieuwenhuis
c45418787c
stm32/sai: remove unused Word trait.
2023-12-19 00:06:30 +01:00
Dario Nieuwenhuis
4deae51e65
stm32/sai: deduplicate code for subblocks A/B.
2023-12-19 00:06:30 +01:00
Dario Nieuwenhuis
c952ae0f49
stm32/sai: remove unimplemented SetConfig.
2023-12-19 00:06:30 +01:00
Dario Nieuwenhuis
124478c5e9
stm32: more docs.
2023-12-18 19:11:23 +01:00
Dario Nieuwenhuis
87c8d9df94
stm32/can: docs.
2023-12-18 18:44:51 +01:00
Dario Nieuwenhuis
21fce1e195
stm32/can: cleanup interrupt traits.
2023-12-18 18:44:51 +01:00
Dario Nieuwenhuis
7044e53af4
stm32/i2c: remove _timeout public API, share more code between v1/v2.
2023-12-18 18:24:55 +01:00
Dario Nieuwenhuis
c0cfd68c0c
Merge pull request #2297 from embassy-rs/stm32-docs
...
stm32: add some docs.
2023-12-17 23:59:29 +00:00
Dario Nieuwenhuis
80c9d04bbd
stm32: add some docs.
2023-12-18 00:53:18 +01:00
RobertTDowling
b857334f92
STM32: Fix race in alarm setting, which impacted scheduling.
...
Detect potential race condition (should be rare) and return false back
to caller, allowing them to handle the possibility that either the
alarm was never set because it was in the past (old meaning of false),
or that in fact the alarm was set and may have fired within the race
window (new meaning of false). In either case, the caller needs to
make sure the callback got called.
2023-12-17 15:35:35 -08:00
Adam Greig
f6bc96dfbd
STM32: Enable flash support for STM32G4
2023-12-16 03:50:34 +00:00
Piotr Esden-Tempski
3568e4a5ff
STM32 QSPI: Fix flash selection.
2023-12-15 16:47:56 -08:00
Oliver Rockstedt
560e728132
STM32H7: adjust flash latency and programming delay for series in RM0468
2023-12-15 14:14:30 +01:00
Oliver Rockstedt
c17fee27bb
STM32H7: limit max frequency to 520MHz until cpu frequency boost option is implemented
2023-12-15 13:53:06 +01:00
Oliver Rockstedt
a8d0da91dc
STM32H7: adjust frequency limits for series in RM0468
2023-12-15 12:22:17 +01:00
Oliver Rockstedt
e5e85ba02b
STM32H7: Allow PLL1 DIVP of 1 for certain series
2023-12-15 11:42:58 +01:00
Dario Nieuwenhuis
138ed87b95
Merge pull request #2287 from embassy-rs/eh-rc3
...
Update embedded-hal to 1.0.0-rc.3
2023-12-14 15:29:48 +00:00
Dario Nieuwenhuis
d81395fab3
Update embedded-hal to 1.0.0-rc.3
2023-12-14 16:19:32 +01:00
eZio Pan
879c0ad989
after stm32-metapac update, TIM CR1 ARPE enum to bool
2023-12-14 21:33:35 +08:00
lights0123
dfba51d3f2
stm32: usart pin inversion
2023-12-10 18:39:45 -05:00
Carlos Barrales Ruiz
78f709a362
* Add GP TIM9 and TIM11 to be used as time_driver
2023-12-09 14:14:34 +01:00
Dario Nieuwenhuis
e99649e37d
Merge pull request #2271 from embassy-rs/update-metapac4
...
stm32: update stm32-metapac. Fixes USB on STM32WB.
2023-12-08 23:01:26 +00:00
Dario Nieuwenhuis
4051aead0f
stm32: update stm32-metapac. Fixes USB on STM32WB.
2023-12-08 23:45:12 +01:00
Kaitlyn Kenwell
5973e69244
Conditionally compile line for all stm32wb chips
2023-12-08 17:20:23 -05:00
Kaitlyn Kenwell
4d3fcd8d2d
Assert CR2.USV on stm32wb55, wb35 series chips
...
ref RM0434 p. 175
2023-12-08 17:06:37 -05:00
Dario Nieuwenhuis
6c746dcf39
Document how to bind multiple interrupts and handlers in bind_interrupts!
.
2023-12-08 21:26:28 +01:00
Dario Nieuwenhuis
a9ec623622
Merge pull request #2246 from CaptainMaso/adc_f3_v1_1
...
stm32: add ADC f3_v1_1
2023-12-08 19:30:50 +00:00
Dario Nieuwenhuis
c27459c052
Update stm32-metapac.
2023-12-08 20:07:59 +01:00
Dario Nieuwenhuis
881cb16d28
stm32/adc: move convert resolution from PAC to version-specific mod.
2023-12-08 20:07:06 +01:00
Jesse Braham
925f5cbc26
Update all references to embasy-executor
to the latest version
2023-12-06 12:05:47 +01:00
James Munns
18e89d7410
Add implementation note for embassy-stm32's time-driver
...
This is a detail I didn't originally understand when hoping to use TIM16/17 as alternative embassy-time driver providers.
Adding my note here to hopefully save the next person a little time.
2023-12-04 15:57:46 +01:00
Dario Nieuwenhuis
5f7cd821b5
Merge pull request #2249 from MathiasKoch/embassy-stm32/revert-day-of-week-fix
...
fix(embassy-stm32): Revert "fix day of the week conversion"
2023-12-04 13:35:27 +00:00
Mathias
e9fa79bd77
Revert "fix day of the week conversion"
...
This reverts commit 59a5e84df5
.
2023-12-04 14:19:30 +01:00
Scott Mabin
334900752a
update release version in examples and other crates
2023-12-04 13:15:10 +00:00