2011 Commits

Author SHA1 Message Date
Dániel Buga
75ca8b6e3b
Do not enable unstable features by default (#3136)
* Do not enable unstable features by default

* Add to changelog and MG

* Update esp-hal/MIGRATING-0.23.md

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>

---------

Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
2025-02-17 12:09:48 +00:00
PascalKoe
7c6e28a8d4
TWAI: make async transmission abortable and wait for actuall transmission (#3132)
* Add future for transmitting TWAI frames.

Compared to the previous implementation, the future cancels the pending transmission and only resolves when the transmission is done.

* update the changelog
2025-02-17 09:19:10 +00:00
Björn Quentin
0138d462b7
Rethink WiFi API (#3027)
* Rethink WiFi API

* Fix
2025-02-14 10:02:35 +00:00
Dániel Buga
1e58278a6a
Remove redundant macro syntax (#3135) 2025-02-14 08:04:07 +00:00
Björn Quentin
68c660f1c5
CI optimizations (#3129)
* CI Improvements

* Fix

* Lint with stable

* Fix

* Xtensa

* cleanup
2025-02-13 15:20:10 +00:00
Easyoakland
d1fd24fc32
fix #3051: pass attributes through heap_allocator macro (#3133)
* pass attributes through heap_allocator macro

* Update changelog

* use global path in macro

* fix typo.

use 64*1024B of dram2_uninit not 72

* Fix doc example

* Add PR number to changelog
2025-02-13 09:24:01 +00:00
Jesse Braham
15f2e914d6
Patch generated documentation to include a version selector (#3131)
* Refactor all documentation-related functions into their own module

* Rename `Package::should_document` to `Package::is_published`

* Patch the generated documentation to include a version selector

* Only try to fetch package manifest if `deploy-docs` feature is enabled
2025-02-13 08:33:25 +00:00
Easyoakland
65caa3b596
fix: ethernet frame header is 14 not 18 (#3025)
* ethernet frame header is 14 not 18

* resize buffer to match MTU.
smoltcp doesn't transmit larger packets
2025-02-12 08:28:15 +00:00
Kaspar Schleiser
853e3aacc2
esp-wifi: support using an external scheduler (#3115)
* support using an external scheduler

* update changelog for `preempt-extern` feature

* change to "extern trait impl" scheme

* make built-in scheduler use the `Scheduler` trait

* pull timer tick out of  trait

* lint `esp-wifi` with `builtin-scheduler`

* esp-wifi: silence warning when not using `builtin-scheduler`

* enable timer tick before scheduler

* esp-wifi: fix preempt.rs type `now` -> `know`
2025-02-11 08:12:19 +00:00
Jesse Braham
ca8cfe6a1f
Fix nightly CI errors (#3123)
* Update nightly CI workflow

* Fix nightly clippy errors
2025-02-10 09:42:05 +00:00
Dániel Buga
0344b14db1
Change the main example to work with stable esp-hal (#3113) 2025-02-10 07:28:41 +00:00
Dániel Buga
392d5ccdc1
Unstabilize CPU-related functionality, merge modules (#3099)
* Move Cpu to a new module

* Move cpu_control's contents into cpu

* Merge raw_core functions

* Hide cpu control APIs

* Move reset into cpu

* Fix software_reset_cpu

* Allow inlining cpu functions

* Changelog

* Mark software_reset no-return

* Move WakeupReason

* Remove PeripheralIter

* Move cpu into system

* Mark system stable
2025-02-07 14:15:26 +00:00
Dániel Buga
bb92715f6b
Don't enable the interrupt when waiti isn't used (#3116) 2025-02-07 13:29:33 +00:00
Kaspar Schleiser
235ee624f8
refactor esp-wifi to ease using external task scheduler (#3106)
* esp-wifi: untangle `setup_timer_isr`

* esp-wifi: bundle scheduler functions into `preempt`

* esp-wifi: split `timer` into `preempt::timer`, `radio` and `time`

* move more deinit stuff into `preempt::disable()`

* move getter of `thread_semaphore` into `preempt`
2025-02-07 09:55:56 +00:00
Louis
d6bc83c189
Format PanicInfo with defmt (#3112)
Remove use of Display2Format to format PanicInfo. Format has been implemented on PanicInfo.
2025-02-07 08:24:04 +00:00
Dominic Fischer
5003ae6047
Use correct Crypto DMA interrupt (#3111)
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2025-02-07 08:19:51 +00:00
Dominic Fischer
b30b60063f
Fix auto writeback on CryptoDMA (#3108)
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2025-02-07 07:55:37 +00:00
Dominic Fischer
aa0d78db18
Add auto-writeback support to DMA buffers (#3107)
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2025-02-07 07:50:56 +00:00
Dániel Buga
dc4daa9217
Clean up clocks_ll (#3101) 2025-02-06 16:48:41 +00:00
Kirill Mikhailov
477e1d6521
More validation and # Errors entries (#3074)
* WIP

* updates

* upd

* +spi

* fmt + lint

* rework `Exact` setting

* Reviews + spi failed experiment

* clean

* address reviews, roll back SPI changes

* rebase

* small fixes

* address reviews

* reviews

fmt

Rebase

dumb

* address reviews

unstable: macro -> feat
2025-02-06 14:40:26 +00:00
Scott Mabin
6f5c48e54c
Allow more baud rates (#3104)
* merge change_baud impls

* merge further with pac updates

* avoid overflow when calculating uart clk divider

* xfmt

* avoid u64 ops

* changelog

* reword comment
2025-02-06 11:05:54 +00:00
Dániel Buga
715e447a47
Radio clock refactor (#3100)
* Move RadioClockController impls to clock

* Replace trait with driver

* Remove docs that are no longer meaningful

* Update esp-ieee802154

* Refcount phy clock
2025-02-05 16:58:36 +00:00
Dániel Buga
3bca047086
Fix waiting for short periods (#3093)
* Shorten test delays

* Fix TIMG

* Fix systimer

* Changelog

* Use a single future implementation

* Explain level interrupts
2025-02-05 14:53:58 +00:00
Dániel Buga
f0faa61a92
Read more bytes in one go in BleConnector (#3098) 2025-02-05 10:57:42 +00:00
Dániel Buga
806215fa43
Add xtal frequency configuration (#3054)
* Try to avoid pointer read in time conversion

* Explain Other(0)
2025-02-05 10:45:25 +00:00
Dániel Buga
c21e50e850
Fix BLE controller test (#3097) 2025-02-05 10:19:36 +00:00
Björn Quentin
f46f862495
ESP32-S2: Fix creation of .rwdata_dummy section (#3096)
* ESP32-S2: Fix creation of .rwdata_dummy section

* CHANGELOG.md
2025-02-05 09:05:34 +00:00
Dániel Buga
8c69e8cb51
Newtype fugit Rate, Instant and Duration (#3083)
* Newtype fugit Rate, Instant and Duration

* Document, remove time::now

* Fix perf

* Tweak docs
2025-02-04 17:23:08 +00:00
Dominic Fischer
fe53061931
Migrate PARL_IO driver to newer DMA API (#3033)
* Migrate PARL_IO driver to newer DMA API

* Register waker when necessary

* Basic HIL test

* fmt

* oops

* return resources on error

* Invert sampling edge

* Attempt manual formatting

---------

Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2025-02-03 11:58:20 +00:00
Juraj Sadel
8ba212c717
Create an issue when nightly-ci fails (#3080)
* Create an issue when nightly-ci fails

* cleanup

* Use GitHub CLI instead of action, link failed job
2025-02-03 11:51:12 +00:00
Dániel Buga
9ff40f94ff
Use self-hosted mac mini for the small, auxiliary tasks (#3072)
* Delegate smaller tasks to mac runner

* Build xtasks on the same runner

* Test the toolchian action
2025-02-03 11:46:51 +00:00
Dániel Buga
28e935a27d
Remove set_priority (#3088) 2025-02-03 10:38:03 +00:00
Dániel Buga
17255ac0ab
Enable async ADC for C2 and H2 (#3082)
* Enable async ADC for H2

* Enable for C2

* Prevent disabling interrupt if an async ADC is in use

* Introduce adc1/2 symbols
2025-02-03 09:41:04 +00:00
Björn Quentin
9a34d0e931
Allow set_power_saving even for coex (#3081)
* Allow `set_power_saving` even for coex

* CHANGELOG.md

* Remove useless migration guide entry
2025-02-03 09:08:11 +00:00
Dominic Fischer
4739a67ad7
Migrate AES driver to DMA move API (#3084)
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
2025-02-03 09:00:45 +00:00
Björn Quentin
23dfcf6560
Have a very basic BLE hil test (#3073)
* Have a very basic BLE hil test

* don't try to run BLE test on S2, but do on H2

* Don't enable esp-wifi/wifi for H2

* Explain
2025-01-31 11:59:36 +00:00
Jesse Braham
c74d614785
Generate a landing page linking to each package's documentation (#3076) 2025-01-31 09:06:00 +00:00
Davo
9a28bdfdbd
ADC: Add async support for oneshot reads for esp32c3 and esp32c6 (#2925)
* ADC: Add async support for oneshot reads for esp32c3 and esp32c6

* ADC: change interrupt waking logic

- fix migrating document
- add ADC2 reading qa example and fix sensor reading

* ADC: run `cargo xtask fmt-packages`

* ADC: remove TODO comment
2025-01-31 07:52:47 +00:00
Dániel Buga
6aa17819a5
DMA test: Avoid starving out thread-mode executor (#3064)
* Avoid looping without delay

* Avoid starving out thread-mode executor

* Clean up a bit
2025-01-30 17:14:54 +00:00
Juraj Sadel
e513f1ba8a
Use #[instability::unstable] where possible, cleanup and improve consistency (#3055)
* Use #[instability::unstable] where possible, cleanup and improve consistency

* De-duplicate marking SpiDma as unstable

* Remove #[unstable] from private structs, functions and inherent impl blocks, address review comments

* Don't mark uWrite as unstable

* API guidelines entry

* mark uWrite unstable again

* Make SetConfig and InterruptConfigurable consistent and add inherent set_interrupt_handler functions vol.2

* warnings
2025-01-30 16:40:14 +00:00
Dániel Buga
0ddcbf5647
Fix async SPI with ESP32 (#3057)
* Fix async SPI on ESP32

* Add note
2025-01-30 12:16:14 +00:00
Björn Quentin
6c2fd59e0b
Avoid unwrap in examples (#3050)
* Avoid `.unwrap`

* Less `unwrap` in examples

* de-noise UART interrupt example code

* Weaken the precalculation recommendation a bit
2025-01-30 11:08:11 +00:00
Dániel Buga
5206436243
Rename api-guidelines and add config sturct guidelines (#3049)
* Rename api-guidelines and add config sturct guidelines

* Relax BuilderLite guideline
2025-01-30 10:08:06 +00:00
Dániel Buga
af6ee36d93
Ability to precompute/cache config register values (#3011)
* Cache bus clock register and support clock source

* Recalculate eagerly to keep Config Copy

* Destabilize UART clock source

* Update I2C

* Changelog

* Refactor builder lite helpers for more flexibility

* Flatten config structs

* Add getters, hide fields

* Hide all config fields

* Fix changelog

* Document the precomputation
2025-01-30 09:44:52 +00:00
Björn Quentin
bb1ad1485a
I2C: Make non-async fn available in async-mode (#3056)
* I2C: Make non-async fn available in async-mode

* PR number
2025-01-29 13:30:35 +00:00
Kirill Mikhailov
2ff28b14b5
Resolve C-FAILURE violations (#3036)
* progress towards C-FAILURE issues

fmt

* reviews

dumb0

* I2C: FIFO cannot be exceeded

fmt
2025-01-28 08:55:06 +00:00
Dániel Buga
ad1b645b0f
Don't register waker if the DMA is done (#3045)
* Don't register waker if the DMA is done

* Update embassy-executor in HIL tests
2025-01-28 08:45:28 +00:00
Dániel Buga
fbca764c85
Don't enable unstable for stable SPI tests (#3047) 2025-01-28 08:19:35 +00:00
Dániel Buga
ce750b5fe4
Remove OutputOpenDrain (#3029)
* Remove OutputOpenDrain

* Remove input-related functions from Output

* Fix documentation

* Improve docs
2025-01-27 16:41:58 +00:00
Dániel Buga
6495130492
Fix build-documentation-index UX (#3043) 2025-01-27 16:30:18 +00:00