Will Glynn
38e7709a24
stm32: u5: implement >55 MHz clock speeds
...
This commit allows STM32U5 devices to operate at 160 MHz.
On STM32U5, MSIS can run at 48 MHz and HSE can reach 50 MHz. Faster
clocks require using PLL1's R output, though PLL1 can serve other
functions besides using the R output for the system clock. This commit
extracts a public `PllConfig` struct, primarily to place associated
constructors on that type, but also with an eye towards enabling the P
and Q outputs in a later commit.
STM32U5 PLLs have various frequency requirements on each stage: after
the `m` prescaler, after the `n` multiplier, and after the `r` divider.
This commit implements the associated checks as assertions.
This commit fixes clock calculation and PLL register configuration
errors in PLL initialization.
STM32U5 has a PWR peripheral which can be configured to push Vcore into
different voltage ranges. System clocks exceeding 55 MHz require range
2, and system clocks exceeding 110 MHz require range 1. This commit
adds `voltage_range` to `Config` and configures PWR as directed.
The voltage range implies different performance limits on various clock
signals, including inside a PLL. This commit implements voltage range
<-> frequency range checks as assertions, and extracts the
otherwise-repeated MSIS, HSI16, and HSE initialization into private
methods on `Config`.
STM32U5 frequencies above 55 MHz require using the PWR EPOD booster.
The EPOD booster requires configuring a second `m` term for PLL1,
`mboost`, such that it falls in a particular range. (Recall that >50
MHz cannot be reached without PLL1, so there is no scenario where EPOD
is needed but PLL1 is not.) This commit configures and enables the EPOD
booster automatically as required.
2023-10-05 22:13:27 -05:00
Ulf Lilleengen
65ed19aae2
Merge pull request #2014 from bugadani/udp
...
Reexport IpListenEndpoint for TCP
2023-10-05 16:13:10 +00:00
Dániel Buga
be9c05fbc9
Reexport IpListenEndpoint for TCP
2023-10-05 17:02:25 +02:00
xoviat
42176b1a3a
Merge pull request #2013 from xoviat/opamp
...
stm32: update metapac and fix opamp ch
2023-10-04 21:20:42 +00:00
xoviat
e1a0635ca3
stm32: update metapac and fix opamp ch
2023-10-04 16:15:08 -05:00
xoviat
b887b7516e
Merge pull request #2011 from glaeqen/input-pin
...
stm32/gpio: Implement `eh1::digital::InputPin` for `OutputOpenDrain`
2023-10-04 17:36:26 +00:00
Gabriel Górski
c6513f93fe
stm32/gpio: Implement eh1::digital::InputPin
for OutputOpenDrain
...
Pins in open-drain mode are outputs and inputs simultaneously.
2023-10-04 18:20:25 +02:00
Dario Nieuwenhuis
59f706ee2f
Merge pull request #2006 from embassy-rs/update-eio
...
update embedded-io, embedded-nal-async.
2023-10-03 22:27:06 +00:00
Dario Nieuwenhuis
ba7d74ac16
tests/stm32: increase tickrate for better precision.
2023-10-04 00:17:33 +02:00
Dario Nieuwenhuis
0324cee0ca
update embedded-io, embedded-nal-async.
2023-10-04 00:10:55 +02:00
xoviat
8ac5c1a963
Merge pull request #1973 from xoviat/opamp
...
stm32: add opamp
2023-10-03 22:01:46 +00:00
xoviat
e7ab044935
ci: remove wpan tests again
2023-10-03 16:59:18 -05:00
xoviat
0c4cddfafb
Merge branch 'main' of github.com:embassy-rs/embassy into opamp
2023-10-03 16:44:44 -05:00
xoviat
e561e673c2
stm32: add opamp mod and update pac
2023-10-03 16:34:13 -05:00
xoviat
09dfcd6b66
Merge pull request #2008 from xoviat/wpan
...
wpan: re-enable HIL tests
2023-10-03 21:02:48 +00:00
xoviat
bb8a1b7f1f
wpan: re-enable HIL tests
2023-10-03 15:53:22 -05:00
Dario Nieuwenhuis
b012a67df7
Merge pull request #2007 from embassy-rs/unverbose
...
Remove a few ultra-verbose logs.
2023-10-03 20:28:44 +00:00
Dario Nieuwenhuis
40f30fa4cd
Remove a few ultra-verbose logs.
...
They're heavily spamming logs for HIL tests, and I don't believe
they're valuable now that the thing they helped debug in their young
age is now solid and mature.
2023-10-03 22:22:16 +02:00
Dario Nieuwenhuis
f197aa9419
Merge pull request #2005 from embassy-rs/minor-doc-improvs
...
docs: minor doc improvements and cleanup
2023-10-03 19:37:39 +00:00
Ulf Lilleengen
80a740bc72
docs: minor doc improvements and cleanup
2023-10-03 21:35:31 +02:00
Dario Nieuwenhuis
ad524373ed
Merge pull request #1926 from m5p3nc3r/async_dtr
...
Add a signal for when the CDC control state changes
2023-10-03 02:13:12 +00:00
Dario Nieuwenhuis
9badf740d8
Merge pull request #2001 from embassy-rs/stm32-more-hil
...
stm32/hil: add f2, f3, f7, l49
2023-10-03 02:07:00 +00:00
Dario Nieuwenhuis
6e901846df
Merge pull request #1995 from JuliDi/quadspi
...
[STM32] QUADSPI support bank 2
2023-10-03 01:55:27 +00:00
Dario Nieuwenhuis
c0a6c78a14
stm32/hil: add f2, f3, f7, l49
2023-10-03 02:11:58 +02:00
xoviat
58280048e3
Merge pull request #2002 from embassy-rs/fix-stop
...
stm32: fix stop
2023-10-02 23:56:33 +00:00
xoviat
00824af82b
ci: remove wpan tests
2023-10-02 18:55:31 -05:00
xoviat
adf9ffb109
tests/stm32: use default clock config
2023-10-02 18:51:59 -05:00
xoviat
bc203ebe4b
Merge branch 'main' of github.com:embassy-rs/embassy into fix-stop
2023-10-02 18:30:41 -05:00
xoviat
e042b3056d
stm32: fix stop
2023-10-02 18:11:03 -05:00
Dario Nieuwenhuis
9dc927250c
Merge pull request #1959 from embassy-rs/test-eth
...
stm32: add eth tests
2023-10-02 20:41:31 +00:00
Dario Nieuwenhuis
b856d760f4
stm32/rcc: reset backup domain before enabling LSE.
2023-10-02 22:12:50 +02:00
Dario Nieuwenhuis
a742a80171
Merge pull request #1999 from KingCol13/rp-wifi-examples-fixes
...
cyw43: Update examples
2023-10-02 20:07:45 +00:00
KingCol13
90ade1b311
Add wait for DHCP in rp wifi_tcp_server
2023-10-02 20:10:52 +01:00
KingCol13
a931dfd9ad
Update firmware size in rp wifi examples
2023-10-02 20:10:45 +01:00
Dario Nieuwenhuis
eff61648fe
tests/stm32: add eth test.
2023-10-02 20:40:11 +02:00
Dario Nieuwenhuis
9228a6334b
Merge pull request #1996 from embassy-rs/update-nightly
...
Update Nightly.
2023-10-02 17:29:21 +00:00
Dario Nieuwenhuis
3c9dfbbc9d
enable wifi_esp_hosted_perf test, disable stm32f4 stop test.
2023-10-02 19:05:41 +02:00
Dario Nieuwenhuis
ce0add61f8
Merge pull request #1997 from dzamlo/main
...
stm32: avoid useless endian conversion in rng
2023-10-02 15:31:13 +00:00
Loïc Damien
bf6e06060b
stm32: avoid useless endian conversion in rng
2023-10-02 17:20:58 +02:00
Dario Nieuwenhuis
eb12114345
Remove impl_trait_projections.
2023-10-02 14:00:49 +02:00
Dario Nieuwenhuis
4b252586e5
Update Nightly.
2023-10-02 13:51:13 +02:00
Dario Nieuwenhuis
5f6a915a32
Merge pull request #1994 from jcdickinson/pin_params
...
feat (rp2040): allow schmitt, slew, and drive strength be set from Flex, Input, Output
2023-10-02 10:44:19 +00:00
JuliDi
923f1851ee
remove debug logging in build.rs
2023-10-02 09:36:11 +02:00
JuliDi
bd267a6479
move stm32h7 specific import
2023-10-02 09:34:59 +02:00
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
Jonathan Dickinson
f98c8886b2
feat: allow schmitt, slew, and drive strength be set from Flex, Input, Output
...
Allows the schmitt, slew and drive strength to be set from Flex. Input and Output[OpenDrain] also expose the appropriate setters.
2023-10-01 21:49:14 -04:00