aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* removed unused variablesfix-input-sync-bypassdiogo4642025-12-191-2/+2
|
* embassy-rp: fix set_input_sync_bypass pin offsetdiogo4642025-12-191-1/+6
| | | | | | | | currently this function causes a crash in debug mode when used with pins greater than 32 (available on the rp235xb variant) because it overflows when doing the shift. this commit applies the offset to pin value before doing the shift. this assumes that when using a pin greater than 32 the GPIOBASE has already been set to 16.
* Merge pull request #5061 from ericseppanen/pio_dividerHEADmainDario Nieuwenhuis2025-12-191-6/+55
|\ | | | | | | embassy_rp: improve calculate_pio_clock_divider
| * clock_divider: use core::assert in const fnEric Seppanen2025-12-131-3/+3
| | | | | | | | defmt::assert gives a compile error in const context.
| * improve pio clock divider mathEric Seppanen2025-12-131-11/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure that the fractional part of the clock divider is accurately calculated. This does additional u32 division/mod operations, which I think is better than using u64 for its extra precision. Also: - Add additional asserts to catch out-of-bounds results. - Make the version that accepts the system clock as a parameter const and public, so if anyone wants to hardcode the system frequency they can avoid any runtime computation. - Remove the `inline` attributes because the function has grown quite a bit.
| * add unit test for calculate_pio_clock_dividerEric Seppanen2025-12-131-1/+29
| | | | | | | | | | The test will fail, because the current implementation doesn't calculate the fractional part.
* | Merge pull request #5108 from liebman/low-power-stm32wl5xxoviat2025-12-1911-21/+170
|\ \ | | | | | | | | | low-power: stm32wl5x
| * | update low-power: stm32wl5x update stm32-metapacliebman2025-12-192-5/+5
| | |
| * | low-power: stm32wl5xliebman2025-12-1910-19/+168
|/ /
* | Merge pull request #5100 from bugadani/fallible-from-waker2Dario Nieuwenhuis2025-12-194-4/+20
|\ \ | | | | | | executor: Add fallible from_waker getter
| * | executor: Add fallible from_waker getterDániel Buga2025-12-184-4/+20
| | |
* | | Merge pull request #4745 from embassy-rs/io07Dario Nieuwenhuis2025-12-1955-75/+223
|\ \ \ | | | | | | | | Update to embedded-io 0.7
| * | | Update to embedded-io 0.7Dario Nieuwenhuis2025-12-1955-75/+223
|/ / /
* | | Merge pull request #5110 from Sha0S/mainxoviat2025-12-198-0/+63
|\ \ \ | | | | | | | | | | | | stm32: disable HSI48 if not in use
| * | | rustfmtBernát Süli2025-12-191-2/+2
| | | |
| * | | stm32: disable HSI48 if not in useBernát Süli2025-12-198-0/+63
|/ / /
* | | Merge pull request #5090 from xoviat/wpanxoviat2025-12-193-31/+138
|\ \ \ | | | | | | | | | | | | add fus fw upgrade methods
| * | | fus: add fw upgrade methodsxoviat2025-12-183-31/+138
|/ / /
* | | Merge pull request #5107 from jamesmunns/james/spllJames Munns2025-12-183-81/+555
|\ \ \ | | | | | | | | | | | | [MCXA]: Add SPLL/PLL1 support
| * | | SPLL needs to ensure LDO is activeJames Munns2025-12-181-0/+3
| | | |
| * | | Cleanups, docsJames Munns2025-12-183-131/+167
| | | |
| * | | First basic test worksJames Munns2025-12-183-20/+103
| | | |
| * | | Pre-testJames Munns2025-12-182-16/+368
| | | |
* | | | Merge pull request #5105 from felipebalbi/mcxa/reset-reasonJames Munns2025-12-182-38/+153
|\ \ \ \ | | | | | | | | | | | | | | | [MCXA] reset_reason: process multiple bits
| * | | | [MCXA] reset_reason: process multiple bitsFelipe Balbi2025-12-182-38/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After testing with the pending watchdog driver, I noticed that more than one bit got set (Warm and Wdog0), changing my original assumption of this register being one-hot. Update the `reset_reason()` function and example according to James Munns' MCXA DMA Error implementation.
* | | | | Merge pull request #5106 from felipebalbi/mcxa/dmaJames Munns2025-12-181-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | [MCXA] dma: fix typo
| * | | | | [MCXA] dma: fix typoFelipe Balbi2025-12-181-1/+1
| |/ / / / | | | | | | | | | | | | | | | Should be an and, not or.
* | | | | Merge pull request #5104 from embassy-rs/nrf54-now-initDario Nieuwenhuis2025-12-182-0/+6
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | fix: avoid hang if calling now() before syscounter is enabled
| * | | | fix: avoid hang if calling now() before syscounter is enabledUlf Lilleengen2025-12-182-0/+6
| |/ / / | | | | | | | | | | | | | | | | | | | | If the time driver now() is called before the syscounter is enabled on nrf54, it would hang. The fix checks if syscounter is enabled, and returns 0 if not.
* | | | Merge pull request #5103 from Sha0S/mainxoviat2025-12-183-0/+15
|\ \ \ \ | | | | | | | | | | | | | | | stm32: disable HSI if not used
| * | | | stm32: disable HSI if not usedBernát Süli2025-12-183-0/+15
| | | | |
* | | | | Merge pull request #5101 from xoviat/low-power-rtcxoviat2025-12-185-92/+45
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | stm32: use datemath to resume time
| * | | | Merge branch 'main' of github.com:embassy-rs/embassy into low-power-rtcxoviat2025-12-1824-91/+284
| |\ \ \ \ | |/ / / / |/| | | |
* | | | | Merge pull request #5071 from jamesmunns/james/bad-soscJames Munns2025-12-187-55/+239
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | [MCXA]: Add support for SOSC/clk_in
| * | | | Update example to not explicitly configure rangeJames Munns2025-12-151-2/+1
| | | | |
| * | | | Add SOSC supportJames Munns2025-12-157-55/+240
| | | | |
* | | | | Merge pull request #5098 from xoviat/low-powerxoviat2025-12-1815-30/+34
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | make stm32wb examples use low-power-pender
| * | | | ci: remove mac and ble testxoviat2025-12-181-2/+2
| | | | |
| * | | | stm32: cleanup low-power featuresxoviat2025-12-1814-28/+32
| | | | |
* | | | | Merge pull request #5093 from rukai/fix_rp_web_usb_example_on_windowsDario Nieuwenhuis2025-12-182-5/+10
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | Fix rp webusb example on windows
| * | | | Fix rp webusb example on windowsLucas Kent2025-12-182-5/+10
| | | | |
| | | * | stm32: use datemath to resume timexoviat2025-12-185-92/+45
| |_|/ / |/| | |
* | | | Merge pull request #5092 from felipebalbi/imxrt/dmaFelipe Balbi2025-12-172-5/+7
|\ \ \ \ | |/ / / |/| | | | | | | [iMXRT] dma: fix potential underflow bug
| * | | [iMXRT] dma: fix transfer count computationFelipe Balbi2025-12-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | count should be defined as the integer div_round_up of buffer length and word size, otherwise transferring small buffers will cause a panic due to underflow: if we let from = [0u32; 1]; then calling dma::write() will result in: let count = ((1 / 4 as usize) - 1) = 0 - 1 // underflow Rounding up results in 1 - 1 as expected.
| * | | [iMXRT] dma: define MAX_CHUNK_SIZE constantFelipe Balbi2025-12-162-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | Instead of adding magic constants all over the place, let's just define DMA MAX_CHUNK_SIZE in a single constant that be referenced by the various users.
* | | | Merge pull request #5088 from oddlama/fix-nrf54-pin-countDario Nieuwenhuis2025-12-161-9/+6
|\ \ \ \ | |/ / / |/| | | | | | | fix: use correct pin count for the nrf54 chip family
| * | | fix: use correct pin count for the nrf54 chip familyoddlama2025-12-161-9/+6
|/ / /
* | | Merge pull request #4726 from RaulIQ/mainxoviat2025-12-162-0/+43
|\ \ \ | | | | | | | | | | | | [embassy-stm32] add DMA-based input capture for timer channels
| * \ \ Merge branch 'main' into mainRaul Alimbekov2025-12-161024-12312/+63082
| |\ \ \
| * | | | style: cargo fmtRaulIQ2025-10-021-1/+2
| | | | |