Dániel Buga
571760884b
Update our time driver for upcoming embassy changes ( #2701 )
...
* Add a timer-driven task
* Spawn another timer
* Log
* foo
* Do not access current time on each schedule
* Update generic queue
* Minimize alarm priorities
* Point to github with patches
* Fix build without any queue impl selected
* Remove explicit generic-queue features
* Define cfgs, fix calling something uninitialized
* Clean up RefCell+generic queue
* Fix arg order
* Feature
* Fix single integrated-timer queue
* Fix next expiration when arming
* Add note
* Adjust impl to latest changes
* Local patch
* Refactor the refactor refactor
* Track the timer item's owner
* Clear owner on dequeue
* Clean up
* Point at the right branch
* Fix panic message
* Hide private function
* Remove integrated-timer references
* Point at upstream embassy
* Configure via esp-config
* Document, clean up, fix
* Hack
* Remove patches
* Update config separator, test the complex variant
* Undo esp-config hack
* Remove trouble example, update edge-net
* Update test deps
* Document
* Update bt-hci.
* Fix generic queue
* Fix panic message
* Fix UB
* Fix rebase
* Resolve UB
* Avoid mutable reference in interrupt executor
---------
Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>
2025-01-14 16:17:58 +00:00
Dániel Buga
848029b152
Test all feature sets ( #2901 )
...
* Mark interconnect as unstable
* Explicitly set unstable feature in HIL tests
* WIP append feature set name to artifact
* Add name to feature sets, build all combinations
* Fix tests
* Provide a looping executor for stable async tests
* Fix usb serial jtag
* Hide interconnect types
2025-01-09 13:58:14 +00:00
Juraj Sadel
8a7f8361a6
UART: Move RX/TX pin assignment from constructor to builder functions ( #2904 )
...
* Add with_rx() and with_tx() methods to UART drivers
* changelog
* migration guide
* forgotten tests
* fmt
* fix H2 example
* Use the same calling order of calling TX and RX as before
2025-01-08 16:35:22 +00:00
Juraj Sadel
d54f8440a5
HIL(QOL): Use global timeout instead of timeout macros ( #2489 )
...
* HIL(QOL): Add missing timeouts to various tests
* Increase timeouts for ECC
* Use global timeout in hil tests
* sha: increase test_digest_of_size_1_to_200 timeout from 10 to 15 seconds
2024-12-04 12:03:39 +00:00
Dániel Buga
92910bf1cb
Constructor consistency update ( #2610 )
...
* UART: only implement constructors with config, define ConfigError
* UART: only implement interrupt functions for Blocking
* I2C: fallible constructors
* Lcd/Cam
* SPI
* Update tests and examples
* Changelog
* Add note about ConfigError
* Fmt
2024-11-28 09:28:50 +00:00
Dániel Buga
fbc57542a8
Remove pins from Io
( #2508 )
...
* Split pins off of Io
* Remove the GPIO peripheral
* p.GPIO
2024-11-12 10:36:25 +00:00
Dániel Buga
40c0a6944e
into_async
(#2430 )
...
* Remove configure_for_async
* Add into_async and into_blocking to I2c
* Add into_async and into_blocking to UsbSerialJtag
* Rework LCD_CAM
* Rmt
* RSA
* TWAI
* Uart
* Documentation
* Disable interrupts set on other core
* Move configure into RegisterAccess
* Disable interrupts on the other core
* Use EnumSet in RMT
2024-11-04 09:32:12 +00:00
Dániel Buga
681f4ef0aa
Implement UART type erasure ( #2381 )
...
* Simplify test
* Remove unnecessary refs
* Improve readability
* Require Instance: PeripheralMarker
* Take &self
* Avoid unsafe code on non-s2
* SImplify drain_fifo
* Simplify read_bytes
* Avoid a register read on ESP32
* Deduplicate is_idle functions
* Add missing inlines
* Move code out of trait
* Erase UART instances
* Disable LTO
2024-10-25 08:03:20 +00:00
Dániel Buga
c7a2368845
Print test panics using semihosting
( #2257 )
...
* Print panic messages using semihosting
* Don't use defmt's asserts
* Make RA_OFFSET available without panic-handler
* Re-add defmt imports where missing
* Revert unintended test change
* Initialise hal in critical-section test
* Disable defmt in tests by default
2024-10-04 06:31:39 +00:00
Juraj Sadel
f374d6a102
Enable SPI_DMA_XX_ASYNC and _PCNT tests on ESP32 and S2, remove GPIO usage from description ( #2140 )
2024-09-11 10:23:07 +00:00
Sergio Gasquez Arcos
b5f0246129
Reordered RX-TX pairs to be consistent ( #2074 )
...
* feat: Update rx-tx order in i2s
* feat: Update rx-tx order in dma macros
* feat: Update rx-tx order in spi
* feat: Update rx-tx order in aes
* feat: Update rx-tx order in mem2mem
* feat: Update rx-tx order in twai and split methods
* feat: Update rx-tx order in twai
* feat: Update rx-tx order in twai and uart docs
* docs: Add sentence about order
* docs: Update changelog
* feat: Update rx-tx order in embassy_interrupt_spi_dma tests
* style: Rustfmt
* docs: Migrating guide
* fix: Typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
* fix: Diff
Co-authored-by: Dániel Buga <bugadani@gmail.com>
* fix: Tests rx-tx order
* fix: Update new_with_default_pins order
* feat: Update rx/tx order in hil_test::common_test_pins!
* feat: Update dma_extmem2mem example
* fix: Revert deleted input arg
* style: rustfmt
* feat: Disable test_asymmetric_dma_transfer for S2
---------
Co-authored-by: Dániel Buga <bugadani@gmail.com>
2024-09-06 09:56:10 +00:00
Juraj Sadel
17daa464ba
Enable ESP32 HIL ( #1977 )
...
* Enable ESP32 HIL
* RMT fixed
* SPI DMA partially works, _pcnt tests not working
* bckup
* finish
* readme and cleanup
* rebase + cleanup
* RMT S2 pin typo + clean forgotten comments
* review comments
* update 10000
* indentation
* replace cfg gate with cfg_if
2024-09-06 08:53:27 +00:00
Dániel Buga
99bf346898
Remove the need to manually pass clocks around ( #1999 )
...
* Clean up passing clocks to drivers
* Update changelog
* Initialise Clocks in a critical section
* Fix calling now() before init
* Fix doc
* Fix esp-wifi migration guide
* Add safety comment
* Update tests
2024-09-04 14:13:51 +00:00
Kirill Mikhailov
9bec6a1806
Adding I2C
HIL test ( #2023 )
...
* i2c hil test
* pin
* fmt
* Test
* WIP (gpio test left)
* Finalize the CODE part (to be cleaned up)
fmt
* Smaller cleanup
* cleanup
* rebase
* fix
* getting last chips ready
* Addressing reviews
2024-09-04 12:45:58 +00:00
Dániel Buga
447411fb58
Rework hal initialization ( #1970 )
...
* Rework hal initialization
* Turn sw interrupt control into a virtual peripheral
* Return a tuple instead of a named struct
* Fix docs
* Remove SystemClockControl
* Move software interrupts under interrupt
* Re-document what's left in system
* Update time docs
* Update sw int docs
* Introduce Config
* Fix tests
* Remove redundant inits
* Doc
* Clean up examples&tests
* Update tests
* Add changelog entry
* Start migration guide
* Restore some convenience-imports
* Remove Config from prelude
2024-09-02 13:38:46 +00:00
Dániel Buga
b4ccb359ef
HIL: Multiple featuresets & conditionally enable generic-queue feature ( #1989 )
...
* Conditionally enable generic-queue feature
* Allow specifying multiple feature sets and run all of them
2024-08-26 06:19:03 +00:00
Dániel Buga
ec130877b7
Disable RTT polling in HIL tests by default ( #1960 )
...
* Disable defmt-rtt by default
* Update i2s test based on changes done to async
* fmt
* Update readme
* Update more tests
2024-08-19 13:47:22 +00:00
Sergio Gasquez Arcos
e46e80b8c1
Enable C2 HIL ( #1680 )
...
* ci: Enable c2 hil
* docs: Update pins and add C2
* feat: Update C2 probe-rs args
* test: Update pins and disable failing tests
* docs: Update S3 wires
* ci: Enable C2 hil tests
2024-06-26 14:17:40 +00:00
Sergio Gasquez Arcos
a33159a021
Rework Uart constructors, add UartTx and UartRx constuctors. ( #1592 )
...
* feat: Add with_pins methods for UART
* feat: Remove configure_pin methods
* docs: Update changelog
* fix: Update tests and examples
* style: Fix format
* Add UartTx/Rx constructors
* feat: Add new_with_default_pins methods
* docs: Update changelog
* feat: Remove optional cts/rts arguments
* feat: Add UartTx/Rx::new_async methods
* fix: Attach interrupt handler to new_ascyn UartRx/Tx
* style: Avoid long module paths
* feat: Make flush_tx public
* test: Use Uart async instead of UartTx/Rx async
* test: Add tests for UartTx/UartRx
* feat: Add configuration method to constuctors
* feat: Move set_rx_fifo_full_threshold and set_rx_timeout to UartRx
* docs: Fix changelog
* test: Fix executor
* feat: Configure UartRx threshold and timeout
* docs: Update changelog
* test: Update uart instance
* feat: Add default_uart0_pins macro to simplify examples
* feat: Address feedback pt1
* feat: Address feedback pt2 - Make constructors fallible
* fix: Doctest
2024-06-11 13:07:17 +00:00