JuliDi
f3aa0cfe5a
remove debug code, add some comments
2023-10-02 09:33:10 +02:00
JuliDi
6ea5aa347d
feature-gate errata workaround for h7
2023-10-02 09:30:58 +02:00
JuliDi
8c13126cff
make push/pull settings for pins explicit
2023-10-02 09:30:58 +02:00
JuliDi
81da9ca621
Bump stm32-metapac, add flash selection
2023-10-02 09:30:58 +02:00
JuliDi
729338875c
support QSPI BK2
2023-10-02 09:30:57 +02:00
Dion Dokter
561126b0d6
stm32: Add the ability to center-align timers
2023-10-01 23:09:01 +02:00
Dario Nieuwenhuis
2af97e7595
rcc/f4: fix build on stm32f446
...
fixes #1989
2023-10-01 23:01:58 +02:00
xoviat
05218a52e6
stm32: update set_config
2023-10-01 09:39:10 -05:00
xoviat
a7b1e51650
Merge pull request #1987 from tyler-gilbert/issue-1986-add-sai-receiver-driver
...
Issue 1986 add sai receiver driver
2023-10-01 14:06:25 +00:00
JuliDi
93adbb9922
update stm32-metapac
2023-10-01 12:41:08 +02:00
JuliDi
e80df91e02
update stm32-metapac revision
2023-10-01 12:34:26 +02:00
JuliDi
5cb58754d4
skip _C pins for pin impls if split_feature not enabled.
2023-10-01 12:32:47 +02:00
JuliDi
5c83179071
change split_features from array to Vec
2023-10-01 12:32:47 +02:00
JuliDi
49608714aa
cleanup, fix pushing to pins_table
2023-10-01 12:32:47 +02:00
JuliDi
f116ca83e0
check whether split-feature is valid
2023-10-01 12:32:47 +02:00
JuliDi
6e5f3f9515
update to testing pr #1889
2023-10-01 12:32:46 +02:00
JuliDi
5924cc8b49
handle _C pins
2023-10-01 12:30:34 +02:00
Tyler Gilbert
0d49aaf8ca
Issue #1986 fix ci build errors
2023-09-30 22:51:23 -05:00
Tyler Gilbert
5dd9e9b3b7
issue #1986 separate blocks to prevent unsafe user code
2023-09-30 22:48:49 -05:00
Tyler Gilbert
d42cfda2db
Issue #1986 add PartialEq to SyncEnable to fix build error on sai_v4
2023-09-30 19:51:00 -05:00
Tyler Gilbert
d1f4511cd1
Issue #1986 update the SAI driver with receiver capability
2023-09-30 19:43:44 -05:00
xoviat
7bc57ca3f7
Merge pull request #1975 from tyler-gilbert/issue-1974-add-sai-driver
...
Issue 1974 add sai driver
2023-09-30 20:04:26 +00:00
xoviat
4999de6f82
rustfmt
2023-09-30 12:53:17 -05:00
Daniel Berlin
9b8bdad403
Fix clippy error exposed by moving out of macros
2023-09-30 13:07:11 -04:00
Daniel Berlin
3c3fb0a529
Remove unused imports
2023-09-30 12:20:31 -04:00
Daniel Berlin
dc4c27aead
Move one more method out of macros
2023-09-30 12:16:47 -04:00
Daniel Berlin
74eb519810
Move trait impls out of macros
2023-09-30 12:14:20 -04:00
Daniel Berlin
61dc36b1f2
Fix small formatting issue
2023-09-30 11:36:32 -04:00
Daniel Berlin
55a0a15be2
Fix trait inconsistency between sealed traits and implementations
2023-09-30 11:19:09 -04:00
Tyler Gilbert
1be5f193c3
#Issue 1974 more whitespace fixes
2023-09-29 21:53:01 -05:00
Tyler Gilbert
4a632e08b7
#Issue 1974 fix extra whitespace
2023-09-29 21:46:19 -05:00
Tyler Gilbert
6cdee93934
#Issue 1974 fix more warnings treated as errors
2023-09-29 21:27:15 -05:00
Tyler Gilbert
5c8c1b2146
#Issue 1974 fix warnings
2023-09-29 21:16:20 -05:00
Tyler Gilbert
2addfc4b86
Merge branch 'issue-1974-add-sai-driver' of https://github.com/tyler-gilbert/embassy into issue-1974-add-sai-driver
2023-09-29 21:08:21 -05:00
Tyler Gilbert
92df87781d
Issue 1974 add sai/mod file
2023-09-29 21:08:07 -05:00
Tyler
a35d149cb1
Revert metapac change in Cargo.toml
2023-09-29 21:07:09 -05:00
Tyler
2f9b59c5cf
Merge branch 'main' into issue-1974-add-sai-driver
2023-09-29 20:02:24 -06:00
Tyler Gilbert
ce91fb2bfc
Issue #1974 add SAI driver
2023-09-29 20:57:59 -05:00
Daniel Berlin
dffdb9268b
Revert "Forgot set_count_direction and set_clock_division in 32 bit instance"
2023-09-28 21:56:18 -04:00
Dario Nieuwenhuis
22e820b743
Merge pull request #1969 from dberlin/main
...
Forgot set_count_direction and set_clock_division in 32 bit instance
2023-09-29 00:38:45 +00:00
xoviat
39f1b26a39
stm32: update metapac and remove sbs
2023-09-28 19:21:02 -05:00
Daniel Berlin
e70143ef8f
Forgot set_count_direction and set_clock_division in 32 bit instance
2023-09-28 20:01:04 -04:00
xoviat
d6654bf8b5
Merge pull request #1966 from xoviat/hrtim
...
stm32/hrtim: move traits out of macro def'n
2023-09-28 20:53:55 +00:00
xoviat
322a4a8401
stm32/hrtim: move traits out of macro def'n
2023-09-28 15:48:46 -05:00
Daniel Berlin
23f3889167
Add support for STM32 input capture filter
2023-09-28 09:35:43 -04:00
xoviat
a72a91ab06
Merge pull request #1963 from Mirror0/restore-f7-rtc
...
Restore RTC configuration for `STM32F7` boards
2023-09-28 11:32:50 +00:00
Dario Nieuwenhuis
e538aeacc8
Merge pull request #1960 from embassy-rs/test-eth-2
...
Net fixes
2023-09-28 03:39:10 +00:00
Dario Nieuwenhuis
6200d22438
stm32/eth: fix receiving large frames on v2.
2023-09-28 05:12:35 +02:00
xoviat
901d31e8f8
Merge pull request #1933 from xoviat/adc
...
stm32: more adc cleanup
2023-09-28 01:59:51 +00:00
xoviat
79146c4bd5
stm32/adc: cleanup f1, f3, v1, and v2
2023-09-27 20:58:46 -05:00
Daniel Berlin
f866735802
Add support for input capture function
2023-09-27 20:15:57 -04:00
Mateusz Butkiewicz
e1951f3ddf
feat(stm32f7): restore rtc configuration for stm32f7 series
2023-09-27 16:08:05 +02:00
Dario Nieuwenhuis
a57e48459e
stm32/rcc: remove bad limits on l5.
2023-09-26 05:15:09 +02:00
Dario Nieuwenhuis
c604d8a8f1
stm32/rcc: add voltage_scale, flash waitstates.
2023-09-26 05:15:09 +02:00
Dario Nieuwenhuis
44bb405683
stm32/usart: enable fifo mode on usartv4.
2023-09-26 04:38:53 +02:00
Dario Nieuwenhuis
5d8817d109
stm32/usart: return error instead of panicking on bad baudrate.
2023-09-26 00:19:27 +02:00
xoviat
96edbd84fb
rtc: use enable on known working chips only
2023-09-25 16:38:30 -05:00
xoviat
dc400a0539
stm32/rtc: always set wakeup alarm
2023-09-25 16:27:08 -05:00
xoviat
04b09a2acb
stm32/rtc: use rccperi enable
2023-09-25 16:26:29 -05:00
Dario Nieuwenhuis
bd9021ca1d
Make irq token Copy+Clone
2023-09-25 22:35:31 +02:00
xoviat
2543bcafaf
Merge pull request #1945 from xoviat/bd-2
...
stm32: fix bd lsi
2023-09-24 23:41:04 +00:00
xoviat
9f2fc04caa
stm32: fix bd lsi
2023-09-24 18:37:09 -05:00
Dario Nieuwenhuis
e03239e88d
stm32: centralize enabling pwr, syscfg, flash.
2023-09-25 01:07:55 +02:00
xoviat
c849620cd6
stm32/lp: clamp requested_duration to avoid overflow
2023-09-22 15:35:20 -05:00
xoviat
7cf327130e
stm32/low-power: create one critical-section for all time ops
2023-09-21 19:32:48 -05:00
Dario Nieuwenhuis
47175198c0
stm32: update metapac.
2023-09-22 00:13:57 +02:00
Dario Nieuwenhuis
83b4c01273
stm32/rcc: unify h5 and h7.
2023-09-21 23:47:56 +02:00
Christian Enderle
ad64d7b20b
fix low-power: APB1 needed for LSE
2023-09-21 17:17:58 +02:00
xoviat
5626a28af2
Merge pull request #1930 from xoviat/adc
...
stm32/adc: make v1 async
2023-09-20 22:45:51 +00:00
Dario Nieuwenhuis
00b9f9acef
stm32/h7: fix bad PWR reg versions.
2023-09-21 00:23:56 +02:00
xoviat
d46920dce6
stm32/adc: make v1 async and leave en
2023-09-20 16:07:35 -05:00
Sebastian Goll
2405aff11f
Add get_level() to ExtiInput
2023-09-20 00:03:39 +02:00
Sebastian Goll
561696dfad
Fix typo in F2 RCC voltage ranges
2023-09-19 10:20:25 +02:00
xoviat
b1abaa380f
Merge pull request #1919 from xoviat/adc
...
adc/f3: add async conversion
2023-09-18 21:32:59 +00:00
xoviat
e640933e2f
stm32/adc: add async conversion
2023-09-18 16:31:20 -05:00
Dario Nieuwenhuis
4bfbcd6c72
stm32: use PAC enums for VOS.
2023-09-18 03:15:15 +02:00
xoviat
feaeee1e83
stm32: misc. cleanup
2023-09-17 18:47:22 -05:00
xoviat
a6ef314be1
stm32: update configure_ls as agreed
2023-09-17 18:41:45 -05:00
Scott Mabin
88eb5cca71
stm32: Implement set_config
for Uart structs
2023-09-17 18:38:03 +01:00
Scott Mabin
087ef918bf
stm32: Add RtcTimeProvider struct to Rtc module
...
This struct allows users to acquire the current time without putting `Rtc`
in a mutex and passing that around. This is allowed because reading from the
rtc registers is atomic.
2023-09-17 18:04:05 +01:00
Dario Nieuwenhuis
bbe1d96045
stm32/rcc: use AHBPrescaler div impls in stm32wba
2023-09-17 02:30:50 +02:00
xoviat
de2773afdd
stm32/rcc: convert bus prescalers to pac enums
2023-09-16 17:41:11 -05:00
xoviat
ad0a306ea5
stm32: fix wpan_ble test
2023-09-16 10:19:09 -05:00
Dario Nieuwenhuis
8315cf064e
stm32: add stm32wba support.
2023-09-16 04:04:45 +02:00
xoviat
f27620cc0b
Merge pull request #1909 from xoviat/adc
...
stm32: generate adc_common and misc.
2023-09-15 23:49:41 +00:00
xoviat
6da75ea285
stm32: rtc/low-power cleanup
2023-09-15 18:41:33 -05:00
xoviat
aa2fa29b89
stm32: fix adc f3 startup time
...
closes #1888 .
2023-09-15 17:36:21 -05:00
xoviat
c28a6bdd0b
stm32: generate adc_common
2023-09-15 17:35:53 -05:00
Christian Enderle
45e9e51bdc
Fix low-power feature for STM32L0
2023-09-15 16:36:51 +02:00
xoviat
9fb14379c3
stm32: add lp to l0
2023-09-14 18:53:27 -05:00
xoviat
309c3d6b47
update metapac
2023-09-14 18:36:03 -05:00
Ulf Lilleengen
1b20ba27b1
feat: bump embassy-sync version to 0.3.0
...
Update changelog in preparation for release
2023-09-14 18:26:00 +02:00
Dario Nieuwenhuis
b118c4cc1b
Merge pull request #1899 from tarfu/bump-fmc
...
stm32: bump fmc version
2023-09-14 12:34:19 +00:00
Tobias Breitwieser
dcd1a91966
stm32: bump fmc version
2023-09-14 14:07:15 +02:00
Mathias
49847ff432
Implement blocking embedded-io::Write for Uart & UartTx
2023-09-14 10:09:09 +02:00
cumthugo
582ef90994
stm32/usart: fix usart not wake up issue
2023-09-13 23:47:46 +08:00
xoviat
d36e7abb71
adc/f3: fix delay calculation
2023-09-11 18:52:52 -05:00
xoviat
44a5c32ea4
adc/f3: fix startup bug
2023-09-11 17:27:47 -05:00
xoviat
b9889ad3b5
stm32: add g4 adc345 and misc.
2023-09-11 17:12:54 -05:00
xoviat
e308286f3c
Merge pull request #1881 from MabezDev/sdmmc-stbiterr
...
Handle stbiterr in 4bit wide mode for sdmmc_v1
2023-09-10 19:52:47 +00:00
Scott Mabin
268da2fcde
Handle stbiterr in 4bit wide mode for sdmmc_v1
2023-09-10 20:27:38 +01:00
xoviat
1bae34d37c
stm32: fix docs
2023-09-10 13:50:28 -05:00
xoviat
08415e001e
stm32/f3: add high res for hrtim and misc.
2023-09-10 13:33:17 -05:00
xoviat
70a4a193c5
stm32: fix adc f3 and example
2023-09-09 22:01:51 -05:00
xoviat
11a78fb1e4
rcc: more cleanup
2023-09-08 18:20:58 -05:00
xoviat
4550452f43
rustfmt
2023-09-06 17:53:02 -05:00
xoviat
08410432b5
stm32: fix rcc merge
2023-09-06 17:51:40 -05:00
xoviat
3cf3caa3ab
Merge branch 'main' into rcc-bd
2023-09-06 17:49:29 -05:00
xoviat
c21ad04c2e
stm32: extract lse/lsi into bd mod
2023-09-06 17:48:12 -05:00
xoviat
d097c99719
stm32/rcc: add lsi and lse bd abstraction
2023-09-06 17:33:56 -05:00
Olle Sandberg
c356585a59
update metapac tag
2023-09-06 11:49:18 +02:00
Olle Sandberg
0d3ff34d80
adc: enable ADC and clock selection for STM32WLx
2023-09-06 06:57:30 +02:00
Olle Sandberg
bb2d6c8542
adc_v3: replace cfg(stm32g0) + friends with cfg(adc_g0)
...
Since any MCU (not just STM32G0) using adc_g0 should probably be handled the same way.
2023-09-06 06:57:28 +02:00
xoviat
a05afc5426
Merge pull request #1867 from xoviat/adc-g4
...
Adc g4
2023-09-05 23:31:03 +00:00
xoviat
50116e5b27
remove paste dependency
2023-09-05 18:20:17 -05:00
Scott Mabin
6770d8e8a6
Allow the RTC clock source to be configured with the new RTC mechanism
2023-09-06 00:04:09 +01:00
xoviat
7307098780
stm32: don't generate adc5
2023-09-05 17:50:45 -05:00
xoviat
f4601af2a4
stm32: don't generate adc4 for g4
2023-09-05 17:48:20 -05:00
xoviat
fd22f4fac5
stm32: remove paste and use refcount statics
2023-09-05 17:45:52 -05:00
xoviat
7622d2eb61
stm32: fix merge issues
2023-09-05 17:10:15 -05:00
xoviat
7573160077
Merge branch 'main' of https://github.com/embassy-rs/embassy into adc-g4
2023-09-05 17:02:28 -05:00
xoviat
f502271940
stm32: add initial adc f3 impl
2023-09-05 16:46:57 -05:00
Daehyeok Mun
49ba9c3da2
initial support for STM32G4 ADC
2023-09-04 23:36:41 -07:00
xoviat
d19e1c1dd1
stm32: only refcount usart and use kind direclty
2023-09-04 16:18:31 -05:00
xoviat
6dc56d2b35
stm32: include uart-named peripherals
2023-09-04 16:04:29 -05:00
xoviat
bfb4cf775a
remove adc refcount
2023-09-04 15:54:00 -05:00
xoviat
274f63a879
stm32: fix refcounts for usart, spi, and i2c
2023-09-04 15:47:33 -05:00
xoviat
3466c9cfa9
stm32: refcount peripheral enable/disable
2023-09-04 13:47:02 -05:00
xoviat
2e6f4237f2
stm32: cleanup psc design
2023-09-03 11:40:34 -05:00
xoviat
1d87ec9cc3
stm32/qei: fix struct naming ( #1852 )
...
Co-authored-by: xoviat <xoviat@users.noreply.github.com>
2023-09-02 00:30:27 +02:00
xoviat
56351cedcb
Merge pull request #1844 from xoviat/rtc
...
stm32/rtc: autocompute prescalers
2023-08-30 23:28:00 +00:00
xoviat
0823d9dc93
Merge pull request #1845 from xoviat/qei
...
stm32: add qei
2023-08-30 23:16:33 +00:00
xoviat
c10fb7c1c4
stm32: implement qei
2023-08-30 18:10:26 -05:00
Dion Dokter
36ec9bcc1d
Stm32 timer prevent hardfault
2023-08-30 19:35:15 +02:00
xoviat
416ecc73d8
add qei draft
2023-08-29 20:06:53 -05:00
xoviat
27dfced285
stm32: fix rcc wb
2023-08-29 19:51:21 -05:00
xoviat
21681d8b4e
rustfmt
2023-08-29 19:44:43 -05:00
xoviat
989c98f316
stm32/rtc: autocompute prescalers
2023-08-29 19:41:03 -05:00
Dario Nieuwenhuis
5e613d9abb
Sync all fmt.rs files.
2023-08-30 01:37:18 +02:00
xoviat
a4d78a6552
Merge pull request #1835 from oll3/fix/stm32-rng
...
stm32: fix wait for RNG data
2023-08-28 21:38:54 +00:00
xoviat
f503417f4c
Merge pull request #1833 from xoviat/rtc
...
stm32: misc rtc fixes
2023-08-28 21:18:42 +00:00
xoviat
6b8b145266
stm32: revert changes to rcc f4
2023-08-28 16:17:42 -05:00
xoviat
e07f943562
rustfmt
2023-08-28 15:52:13 -05:00
xoviat
70a5221b2e
stm32/bd: consolidate enable_rtc
2023-08-28 15:34:08 -05:00
xoviat
b315c28d4e
stm32/rtc: remove rtc-debug and asbtract exti wakeup
2023-08-28 15:30:29 -05:00
Jesse Braham
1f63bf4153
Release embassy-time v0.1.3
2023-08-28 08:00:18 -07:00
Olle Sandberg
fd739250ea
stm32: fix wait for RNG data
...
If no data was available to read then the loop would wait for an interrupt and skip to the next chunk without writing the current one.
This could cause the given slice to only be partially filled with random data.
Fixed by moving the wait to before actually writing data to the chunk.
2023-08-28 11:44:05 +02:00
xoviat
2c80784fe6
stm32/rtc: feature-gate instant
2023-08-27 21:26:29 -05:00
xoviat
538001a4bc
stm32/rtc: fix psc div
2023-08-27 21:24:16 -05:00
xoviat
e981cd4968
stm32: fix rtc wakeup timing and add dbg
2023-08-27 21:15:57 -05:00
xoviat
9f928010a8
stm32/rtc: use psc to compute instants
2023-08-27 16:06:33 -05:00
xoviat
f77a7fe4bf
Merge branch 'main' of https://github.com/aidant/embassy into rtc
2023-08-27 15:23:25 -05:00
xoviat
cbc92dce05
stm32/bd: fix errors
2023-08-27 15:18:34 -05:00
xoviat
531f51d0eb
rcc/bd: consolidate mod
2023-08-27 15:01:09 -05:00
xoviat
f28ab18d7b
stm32: fix l4 re-export
2023-08-27 09:50:02 -05:00
xoviat
3bf6081eb5
stm32: fix wl re-export
2023-08-27 09:41:31 -05:00
xoviat
fb942e6675
stm32: re-export rtcclocksource
2023-08-27 09:25:14 -05:00
xoviat
10ea068027
stm32/bd: allow dead code
2023-08-27 09:12:04 -05:00
xoviat
4caa8497fc
stm32: extract backupdomain into mod
2023-08-27 09:07:34 -05:00
xoviat
48085939e7
stm32/rcc: rename common to bus
2023-08-27 08:35:13 -05:00
aidant
59a5e84df5
fix day of the week conversion
2023-08-27 18:36:35 +10:00
xoviat
94de1a5353
stm32: feature-gate wakeup alarm
2023-08-26 20:40:21 -05:00
xoviat
db71887817
tests/stm32: add stop and cleanpu
2023-08-26 20:37:01 -05:00
xoviat
1e430f7413
stm32: complete stop impl.
2023-08-26 20:31:12 -05:00
xoviat
2897670f24
stm32: get the basic lp working
2023-08-26 19:23:25 -05:00
xoviat
3023e70ccf
stm32: clenaup lp executor
2023-08-25 18:41:51 -05:00
xoviat
cda4047310
stm32: flesh out lp executor
2023-08-24 19:29:11 -05:00
xoviat
ecc305bbfe
stm32: fix executor version
2023-08-23 20:28:41 -05:00
xoviat
00aadf6085
stm32/lp: pipe through lp ready
2023-08-23 20:22:11 -05:00
xoviat
83f224e140
stm32/lp: add refcount
2023-08-23 20:18:34 -05:00
xoviat
e987259716
rtc: cleanup
2023-08-23 20:01:35 -05:00
xoviat
fc04d2a33c
rtc: get wakup irq working
2023-08-23 19:52:32 -05:00
xoviat
1ea4c58c39
stm32: impl. draft cfgr pwr
2023-08-22 20:00:00 -05:00
xoviat
faab2d0d53
stm32: add executor to low-power mod
2023-08-22 17:31:40 -05:00
xoviat
6d35bcc3d9
stm32: add low-power mod
2023-08-22 17:00:00 -05:00
xoviat
7d6edd7b15
Merge branch 'main' of https://github.com/embassy-rs/embassy into rtc-lp
2023-08-22 16:58:43 -05:00
xoviat
9e3266b745
rtc: make fns private
2023-08-22 16:58:19 -05:00
xoviat
7bff2ebab3
Merge pull request #1766 from xoviat/rtc-w
...
stm32/rtc: add start/stop wakeup
2023-08-22 21:50:53 +00:00
xoviat
048bdf6968
stm32/rtc: allow dead code
2023-08-22 16:48:08 -05:00
Dario Nieuwenhuis
b3212ae383
Merge pull request #1763 from rubdos/sender-receiver-with-ctx
...
Refactor Channel/Sender/Receiver poll methods
2023-08-22 21:25:29 +00:00
Dion Dokter
a5484cd119
Modified the brr calculation to be fully 32-bit
2023-08-22 20:52:02 +02:00
Ruben De Smet
c39671266e
Deprecate *recv* in favor of *receive*
2023-08-22 16:58:31 +02:00
xoviat
8878ce046c
rtc: fix rtcinstant delay computation
2023-08-21 18:33:10 -05:00
xoviat
5bfddfc9b6
stm32/rcc: add rtc to f410
2023-08-21 18:10:10 -05:00
xoviat
7148397771
stm32/rtc: misc fixes
2023-08-21 18:00:49 -05:00
xoviat
8c12453544
stm32/rcc: set rtc clock on f4
2023-08-21 17:50:18 -05:00
xoviat
f723982bec
rtc: impl. draft rtcinstant api
2023-08-21 17:44:38 -05:00
Dario Nieuwenhuis
cc400aa178
stm32: fix f37x build.
...
originally broke in https://github.com/embassy-rs/embassy/pull/1762
2023-08-19 01:15:32 +02:00
Dominik Sliwa
5bc0175be9
configure flash latency after axi clock and handle different flash in STM32H7A/B devices
2023-08-18 23:44:56 +02:00
Aurelien Jacobs
2ea17d2783
stm32: allow setting the PWM output polarity
2023-08-18 16:45:50 +02:00
Aurélien Jacobs
78bb261246
stm32: allow setting PWM duty cycle to 100%
...
Setting the compare_value to max_compare_value make the PWM output
go low when the timer reach the max_compare_value and go high again
on the next timer clock, when the value roll back to 0.
So to allow a 100% PWM that never goes low, the compare_value must
be set to max_compare_value + 1.
2023-08-18 16:10:49 +02:00
Dario Nieuwenhuis
94fa95c699
Merge pull request #1793 from ARizzo35/stm32l4-rtc-pwren
...
stm32l4: set pwren in rcc regardless of clock source
2023-08-18 10:19:54 +00:00
Adam Rizkalla
62e66cdda3
stm32l4: set pwren in rcc regardless of clock source
2023-08-17 19:16:03 -05:00
Olle Sandberg
c80c323634
stm32-wl: set RTC clock source on RCC init
2023-08-16 14:41:00 +02:00
Sebastian Goll
df6952648e
Make sure to check RCC settings for compatibility before applying
2023-08-16 14:11:09 +02:00
Dario Nieuwenhuis
f26dd54f63
Update embedded-hal to 1.0.0-rc.1 ( #1783 )
2023-08-16 00:40:56 +02:00
Ruben De Smet
f9d251cd5c
Channel poll methods return Poll instead of bool
2023-08-11 12:13:46 +02:00
xoviat
3a3f3b492f
rustfmt
2023-08-10 19:14:55 -05:00
xoviat
b69861013a
stm32/rtc: implement stop_wakeup_alarm
2023-08-10 19:13:48 -05:00
xoviat
a0c69ffe02
stm32/rtc: autocompute wakeup psc.
2023-08-10 18:59:18 -05:00
Dario Nieuwenhuis
3b43b00867
Merge pull request #1762 from dreilly1982/adc-f3-build-rs-updates
...
don't generate adc peripheral for f3 series
2023-08-10 15:45:21 +00:00
Dario Nieuwenhuis
95262ad559
Merge pull request #1743 from xoviat/dma-2
...
stm32/dma: consolidate ringbuf
2023-08-10 15:21:31 +00:00
Don Reilly
c312884692
added exclusion for adc v4 as well
2023-08-10 08:21:03 -05:00
Lucas Granberg
bc156afbb2
fix rng ced toggling sequence on reset.
2023-08-10 16:16:45 +03:00
Don Reilly
8a9622ec2e
update metapac tag
2023-08-10 08:03:35 -05:00
xoviat
0705152105
stm32/rtc: add start/stop wakeup
2023-08-09 20:15:14 -05:00
Dario Nieuwenhuis
820852be28
fmt mod must not be public.
2023-08-09 18:33:20 +02:00
xoviat
fcb77f3f96
Merge pull request #1753 from xoviat/rtc-wb
...
stm32/rtc: enable in rcc mod
2023-08-09 01:48:11 +00:00
xoviat
32fdd4c787
tests/stm32: fix rtc test
2023-08-08 20:33:24 -05:00
xoviat
6a73ab1afa
stm32/l4: set rtc clock source in rcc
2023-08-08 19:58:03 -05:00
xoviat
6fc5c608f8
stm32/rtc: remove generics and segregate clock sel
2023-08-08 19:47:01 -05:00
xoviat
d375c46590
Merge pull request #1751 from oro-os/add-pin-drop-docs
...
stm32: add note about Output/OutputOpenDrain drop behavior
2023-08-08 23:05:12 +00:00
Don Reilly
e31545860e
don't generate adc peripheral for f3 series
2023-08-08 16:46:30 -05:00
Dario Nieuwenhuis
5d5cd23715
Update to embedded-io 0.5 ( #1752 )
2023-08-07 13:43:09 +02:00
Grant Miller
d49f40dd5c
embassy-stm32: Misc clippy fixes
2023-08-06 15:00:39 -05:00
xoviat
ae608cf2fa
stm32: fix rtc and examples
2023-08-06 12:06:29 -05:00
xoviat
28618d12a1
stm32/rtc: restructure
2023-08-06 11:58:28 -05:00
xoviat
66c1712118
stm32/rtc: enable in rcc mod
2023-08-06 11:11:53 -05:00
Josh Junon
7b3d7a3826
stm32: add note about Output/OutputOpenDrain drop behavior
2023-08-06 05:58:38 +02:00
xoviat
a2fd7108ff
stm32: update metapac version
2023-08-04 19:08:53 -05:00
xoviat
e80db42061
stm32/dma: minor cleanup, optmization
2023-08-04 17:15:56 -05:00
xoviat
7e269f6f17
stm32/dma: consolidate ringbuf
2023-08-03 21:12:34 -05:00
Dario Nieuwenhuis
0d8a9b1e7a
Merge pull request #1729 from mattico/i2c-async-timeout
...
stm32: add async timeout functions to I2c and TimeoutI2c
2023-08-01 08:20:48 +00:00
Bartek
5fcebd28f4
Fix unlocking the backup domain when enabling LSE
...
Set PWREN bit to enable the power interface clock before enabling access to the backup domain.
2023-08-01 13:46:34 +09:30
xoviat
a1fce1b554
Merge pull request #1714 from xoviat/dma
...
stm32/dma: add writable ringbuf
2023-07-31 22:57:30 +00:00
xoviat
bbc8424a5b
stm32/dma: remove trace
2023-07-31 17:55:25 -05:00
Matt Ickstadt
036bc669cd
stm32: only enable async TimeoutI2c on V2 I2C peripheral
2023-07-31 14:17:50 -05:00
Matt Ickstadt
26cc0e634d
stm32: add async timeout functions to I2c and TimeoutI2c
2023-07-31 13:47:03 -05:00
Matt Ickstadt
1b0f4ee653
stm32: add outlives bounds to TimeoutI2c impl blocks
...
This should make usage and error messages more clear.
2023-07-31 13:35:06 -05:00
xoviat
4a9df60a7b
Merge pull request #1727 from embassy-rs/hrtim-v2
...
stm32: add hrtim v2
2023-07-31 17:04:51 +00:00
Dario Nieuwenhuis
5c2ba3b212
stm32: add hrtim v2
2023-07-31 15:42:03 +02:00
Dario Nieuwenhuis
6caf627262
Merge pull request #1704 from rubdos/ieee802154-fixes
...
Expose IEEE802.15.4 address in Driver
2023-07-31 12:30:33 +00:00
Ruben De Smet
4afdce4ec5
Introduce driver::HardwareAddress without smoltcp dependency
2023-07-31 14:21:26 +02:00
Dario Nieuwenhuis
036e00113e
stm32/flash: avoid pointless "if flag is set, set it".
2023-07-31 12:48:52 +02:00
Dario Nieuwenhuis
958cace36d
Merge pull request #1724 from bguruprasath5/stm32g0-flash-support
...
Added STM32G0 Flash Support
2023-07-31 10:35:28 +00:00
dev-guruprasath
42b21fd7ae
added flash support
2023-07-31 13:56:16 +05:30
chemicstry
ad85beb677
stm32/can: Add more derives for CAN Envelope
2023-07-31 10:32:17 +03:00
chemicstry
780569c08a
Merge remote-tracking branch 'origin/main' into bxcan_timestamp
2023-07-31 10:29:20 +03:00
xoviat
ffa0c08140
stm32/dma: fix condition check
2023-07-30 20:22:14 -05:00
xoviat
c38c85ef1f
stm32/dma: add traces
2023-07-30 19:39:17 -05:00
Dario Nieuwenhuis
6c6bd11c1a
Merge pull request #1606 from JcBernack/rng-update
...
STM32: RNG update
2023-07-30 23:44:11 +00:00
Dario Nieuwenhuis
4999b045df
stm32/rng: use bind_interrupts!.
2023-07-31 01:41:12 +02:00
Dario Nieuwenhuis
105aa8f452
Merge pull request #1718 from copterust/stm32-spi-set-freq-in-config
...
Move frequency to SPI config
2023-07-30 22:05:22 +00:00
Dario Nieuwenhuis
3aef5999d5
Merge pull request #1716 from xoviat/rcc-p
...
stm32/rcc: extract and combine ahb/apb prescalers
2023-07-30 20:43:54 +00:00
Scott Mabin
e8d3e86591
stm32f2: Avoid resetting rtc backup domain
...
Also ensure the pwr is enabled before trying to initialize. For the F2
series this is in a seperate clock control register.
2023-07-30 21:22:48 +01:00
Jan Christoph Bernack
d6c5c1772c
improve RNG polling
2023-07-30 22:19:34 +02:00
Jan Christoph Bernack
b65406791a
add RNG conditioning
2023-07-30 22:16:42 +02:00
xoviat
538cf2bc24
stm32/dma: fix condition check
2023-07-30 14:02:41 -05:00
bofh
1d815f4ba0
Fix typo
2023-07-30 18:20:36 +02:00
bofh
aef93246b4
Fix Spi::new_internal call in i2s
2023-07-30 18:11:39 +02:00
bofh
6b1d802caa
Move frequency to SPI config
2023-07-30 18:01:34 +02:00
xoviat
6f30e92c7a
stm32/dma: don't write to full ringbuf
2023-07-30 10:57:17 -05:00
xoviat
a8a491212b
stm32/rcc: cleanup merge
2023-07-30 10:18:54 -05:00
xoviat
2f18770e27
stm32/rcc: extract and combine ahb/apb prescalers
2023-07-30 09:52:30 -05:00
xoviat
087e649bc2
stm32/dma: fix typos
2023-07-30 09:28:02 -05:00
xoviat
fd9b6487e1
stm32/dma: impl. wringbuf for bdma
2023-07-30 09:25:58 -05:00
xoviat
603c4cb4fa
stm32/dma: complete initial ringbuf impl.
2023-07-30 09:18:33 -05:00
Dario Nieuwenhuis
8bed573b88
Merge pull request #1713 from MabezDev/stm32f2-pll-overflow
...
stm32f2 PLL overflow with crystal
2023-07-30 12:16:52 +00:00
xoviat
8064f4bfe0
stm32/dma: add draft writable dma buf
2023-07-29 20:10:29 -05:00
xoviat
6256a6c57c
fix comments
2023-07-29 19:27:16 -05:00
xoviat
bae31ebce7
stm32/dma: rename ringbuf
2023-07-29 19:25:18 -05:00
Scott Mabin
e0ce7fcde7
stm32f2 pll overflow with crystal
...
With a large enough HSE input frequency, the vco clock calculation will
overflow a u32. Therefore, in this specific case we have to use the
inner value and cast to u64 to ensure the mul isn't clipped before
applying the divider.
2023-07-30 01:00:53 +01:00
xoviat
a9f6e30bcd
rustfmt
2023-07-29 12:03:01 -05:00
xoviat
0d7b005252
stm32/pwm: add output type control
2023-07-29 12:01:32 -05:00
Dario Nieuwenhuis
fcbfd224a7
Merge pull request #1706 from mattico/timeouti2c-lifetime
...
TimeoutI2c: allow ref to live shorter than peripheral
2023-07-28 23:08:06 +00:00
xoviat
5bb5654d84
stm32/hrtim: pub instance
2023-07-28 17:39:01 -05:00
xoviat
a8d3bcbb75
stm32/hrtim: shorten names
2023-07-28 17:37:14 -05:00
xoviat
ec787d3518
stm32/hrtim: cleanup merge issues
2023-07-28 17:27:15 -05:00
xoviat
c7c701b3e3
Merge branch 'main' of https://github.com/embassy-rs/embassy into hrtim
2023-07-28 17:18:22 -05:00
xoviat
e495d606ec
stm32/hrtim: extract traits
2023-07-28 17:16:46 -05:00
xoviat
28136579e9
stm32/hrtim: extract into mod
2023-07-28 17:07:08 -05:00
Matt Ickstadt
5a8704b4d8
TimeoutI2c: allow ref to live shorter than peripheral
2023-07-28 11:16:43 -05:00
JuliDi
6dd2fc5941
add document-features
2023-07-28 16:59:13 +02:00
Dario Nieuwenhuis
3690af9bea
stm32/timer: merge pwm module into timer. ( #1703 )
...
The traits there are applicable to timer use cases other than PWM.
It doesn't make sense to keep them separated.
2023-07-28 15:29:27 +02:00
Dario Nieuwenhuis
8d8c642845
Merge pull request #1701 from chemicstry/bxcan_methods2
...
stm32/can: implement more convenience methods
2023-07-28 11:44:30 +00:00
Dario Nieuwenhuis
036e6ae30c
Rename embassy-hal-common to embassy-hal-internal, document it's for internal use only. ( #1700 )
2023-07-28 13:23:22 +02:00
chemicstry
38b5d1ee2b
stm32/can: implement more convenience methods
2023-07-28 14:22:24 +03:00
Dario Nieuwenhuis
2e4f89068a
Merge pull request #1686 from xoviat/usart
...
stm32/usart: fix error msg for lptim
2023-07-28 10:42:32 +00:00
xoviat
44c8db2911
Merge pull request #1681 from alexferro/feature/stm32-dma-read-exact
...
Add a STM32/DMARingBuffer::read_exact helper
2023-07-28 01:16:48 +00:00
chemicstry
a56ef685f3
stm32: forward defmt feature to embassy-time
2023-07-25 12:19:42 +03:00
chemicstry
62ab0bf2e7
stm32/can: implement proper RX timestamps
2023-07-25 12:12:45 +03:00
xoviat
77e34c5e8a
Merge pull request #1684 from xoviat/wpan
...
stm32/rcc: move rcc logic from ipcc
2023-07-25 01:22:07 +00:00
xoviat
270d1d59a0
stm32/rcc: use wpan default only for wpan
2023-07-24 18:25:15 -05:00
xoviat
3c41784de8
stm32/usart: fix error msg for lptim
2023-07-24 18:08:23 -05:00
xoviat
1425dda0a7
stm32/rcc: fix minor issues
2023-07-24 17:19:45 -05:00
Dario Nieuwenhuis
9f898c460f
Merge pull request #1685 from chemicstry/bxcan_async_enable
...
stm32/can: bxcan async enable
2023-07-24 15:24:18 +00:00
chemicstry
2a0fe73045
stm32/can: bxcan async enable
2023-07-24 17:53:23 +03:00
xoviat
bd60f003e0
stm32/rcc: move rcc logic from ipcc
2023-07-23 17:01:34 -05:00
Alex Ferro
4883fdd154
Add a STM32/DMARingBuffer::read_exact helper
...
This provides a helper function with an async implementation, that
will only return (or error) when it was able to read that many bytes,
sleeping until ready.
Additionally, corrected the documentation for Ringbuffer functions to use
"elements" instead of "bytes" as the types were already generic over the
word/element size.
2023-07-22 17:17:01 -06:00
xoviat
d42dff45de
Merge branch 'main' of https://github.com/embassy-rs/embassy into hrtim
2023-07-22 14:49:31 -05:00
JuliDi
8e230bf6ec
add missing TransferOptions fields for DMA
2023-07-22 21:36:03 +02:00
JuliDi
a56b3e9a44
update feature gates for v3
2023-07-22 19:47:36 +02:00
JuliDi
0378366e29
Merge remote-tracking branch 'xoviat/update-metapac' into fix-dac-example
2023-07-22 19:26:20 +02:00
JuliDi
80ce6d1fb7
update DAC triggers to incorporate v3
2023-07-22 19:25:02 +02:00
xoviat
ba8e5d8589
rustfmt
2023-07-22 12:10:50 -05:00
xoviat
192cdc2f85
stm32: suppress adc f3
2023-07-22 12:07:02 -05:00
xoviat
64f8a779ca
stm32: add dac fix
2023-07-22 11:54:54 -05:00
xoviat
5693ed1178
stm32: add minimal fdcan impl
2023-07-22 11:50:30 -05:00
xoviat
19c6c698b5
stm32: update metapac
2023-07-22 11:43:14 -05:00
Adam Greig
e5b4641f9e
stm32/dac: set pin mode to analog (ref #334 )
2023-07-22 13:19:26 +01:00
Alessandro Pezzato
36ff688fab
stm32/uart: optimize swap_rx_tx
2023-07-19 10:50:40 +02:00
Alessandro Pezzato
3df2c71e6c
stm32/uart: add swap_rx_tx
2023-07-19 10:26:47 +02:00
Dario Nieuwenhuis
10f5966787
Convert files to LF endings.
2023-07-18 14:24:58 +02:00
xoviat
55ac480cb0
stm32/eth: fix cfg(not(time))
2023-07-17 16:24:09 -05:00
xoviat
17d5e1c470
stm32/eth: add set_poll_interval
2023-07-15 12:02:08 -05:00
xoviat
975a780efe
stm32/eth: impl. poll interval
2023-07-15 09:57:09 -05:00
xoviat
c3774607a5
stm32/eth: convert static metho
2023-07-15 09:37:25 -05:00
xoviat
48b37aa2bf
stm32/eth: refactor genericsmi
2023-07-15 09:32:36 -05:00
Phil Markgraf
3bae533066
Enable RTC on STM32WL chips ( #1645 )
...
* Add clippy allow to not report if same then branch
* Support enabling RTC clock on STM32WL
* Add clippy allow to not report if same then branch
* Support enabling RTC clock on STM32WL
* Add rtc example for stm32wl
* Address code review feedback
2023-07-15 13:40:23 +02:00
Dario Nieuwenhuis
dff9bd9711
Remove trivial to remove uses of atomic-polyfill.
2023-07-12 18:30:43 +02:00
shakencodes
29f3d5b68d
Ensure I2C master_stop() called after error
2023-07-10 16:40:33 -07:00
David Purser
69b4e898b3
Correctly calculate target VCO frequency from multipliers
2023-07-07 20:52:44 -05:00
Dario Nieuwenhuis
f8d608093f
stm32/otg: implement EndpointError::Disabled
for reads.
...
It was implemented only for writes.
2023-07-07 03:55:57 +02:00
Dario Nieuwenhuis
ffeb40ff43
stm32/otg: change some info logs to trace.
2023-07-06 13:49:19 +02:00
Dario Nieuwenhuis
c421b7f5f0
Merge pull request #1624 from embassy-rs/release-embassy-time-v0.1.2
...
Release embassy-time v0.1.2
2023-07-05 23:34:04 +00:00
Dario Nieuwenhuis
d137286981
Release embassy-time v0.1.2
2023-07-06 01:29:44 +02:00
xoviat
864202a23a
Merge pull request #1578 from schphil/can-split
...
stm32 can split method
2023-07-05 23:27:53 +00:00
Mathias
1255d8a8ce
Merge branch 'main' of https://github.com/embassy-rs/embassy into embassy-stm32/rcc-rtc-l4
2023-07-05 12:36:42 +02:00
Dario Nieuwenhuis
eb57bb298f
Merge pull request #1617 from xoviat/const-rcc
...
stm32/rcc: allow const-propagation
2023-07-04 22:31:55 +00:00
xoviat
953c745ed8
stm32/rcc: allow const-propagation
2023-07-04 16:29:46 -05:00
Dario Nieuwenhuis
9c4df46c46
rustfmt.
2023-07-04 21:34:55 +02:00
Dario Nieuwenhuis
a101d9078d
update embedded-hal crates.
2023-07-04 19:59:36 +02:00
William Yager
0c4180cdd0
fmt
2023-07-03 19:39:58 -04:00
William Yager
d9824dfd64
Add bank 1 16 bit
2023-07-03 19:39:51 -04:00
Philipp Scheff
a96f30edf4
allow deed code can rx & clippy
2023-07-03 23:48:07 +02:00
Philipp Scheff
af15b49bfe
fmt
2023-07-03 22:57:33 +02:00
Mathias
60b2f075dc
Merge branch 'main' of https://github.com/embassy-rs/embassy into embassy-stm32/rcc-rtc-l4
2023-07-03 19:33:26 +02:00
xoviat
0c49e6747c
wip
2023-07-02 22:00:50 -05:00
Dario Nieuwenhuis
c9b9be5b81
hal-common: require DerefMut for peripherals, not just Deref.
...
Otherwise you can create multiple drivers on the same singleton like this:
```rust
let mut input = Input::new(&pin, Pull::None);
let mut output = Output::new(&pin, Level::Low, Speed::Low);
input.is_high();
output.set_high();
input.is_high();
output.set_high();
```
Thanks @pennae for reporting.
2023-07-02 22:16:01 +02:00
xoviat
2e6b813225
hrtim: add guardrails on bridge sec. duty
2023-07-02 09:17:12 -05:00
xoviat
aceba1c03f
hrtim: fix example and auto adjust psc.
2023-07-01 21:47:44 -05:00
xoviat
8141d53d94
Merge branch 'main' of https://github.com/embassy-rs/embassy into hrtim
2023-07-01 17:32:25 -05:00
xoviat
21a8653195
hrtim: minor cleanup
2023-07-01 17:32:16 -05:00
Mathias
d372df7ddb
L4: Switch to MSI to prevent problems with PLL configuration, and enable power to AHB bus clock to allow RTC to run
2023-07-01 12:16:23 +02:00
xoviat
6e13f5b387
rustfmt
2023-06-30 18:33:22 -05:00
xoviat
c07854fed8
stm32/hrtim: minor fixes
2023-06-30 18:22:02 -05:00
xoviat
8c4997c5fc
stm32/hrtim: impl. bridge, dead-time part. res.
2023-06-30 18:22:01 -05:00
xoviat
3252eaa060
stm32/hrtim: add example impl.
2023-06-30 18:21:59 -05:00
xoviat
348019e37f
stm32/hrtim: impl channel alloc type system
2023-06-30 18:21:58 -05:00
xoviat
b9eb3dfad7
stm32/hrtim: add api concept
2023-06-30 18:21:57 -05:00
xoviat
71513ccb39
stm32/hrtim: impl. draft frequency computation
2023-06-30 18:21:57 -05:00
xoviat
cdb3fb059f
stm32/hrtim: first draft
2023-06-30 18:21:42 -05:00
Dario Nieuwenhuis
6eb46c419c
Merge pull request #1565 from JuliDi/main
...
Implement DMA for DAC on STM32
2023-06-29 08:54:28 +00:00
Julian
96f1525ffe
Revert changes to dma.rs
2023-06-29 09:20:25 +02:00
Dario Nieuwenhuis
e892014b65
Update stm32-metapac, includes chiptool changes to use real Rust enums now.
2023-06-29 02:01:33 +02:00
Kevin Lannen
5666c56903
STM32G4: Add CRS support to RCC
...
Create working CRS USB Example
2023-06-28 16:53:16 -06:00
JuliDi
daedfbbd87
add dma is_running change doc
2023-06-28 15:39:36 +02:00
JuliDi
91c31d5e43
Update DAC examples, add DAC + DMA example
2023-06-28 11:58:25 +02:00
Dario Nieuwenhuis
ed493be869
stm32: update metapac, includes fix for OTG with 9 endpoints (H7)
2023-06-27 23:58:32 +02:00
JuliDi
9c81d63155
fix warnings
2023-06-27 22:33:17 +02:00