* Fix some styling issues in top-level README.md
* Update package dependencies and bump version numbers
* Update each `CHANGELOG.md` file for packages to be published
* Update `esp-hal` migration guide
* Fix typo in `esp-hal` changelog
* test ci
* fix ci with new compiler
* god bless clippy fix
* refmuts
* clippy
* tests work
* use new compiler
* use new compiler
* bump MSRV of esp-hal and crates that depend on esp-hal
* fix eyesore
* clippy again
* remove hardcoded compiler version
* bump rust-version as well
* note MSRV bump in changelog
* Add a derive procmacro to implement the Builder Lite pattern for a struct
* Add `#[non_exhaustive]` and derive `BuilderLite` where necessary in I2C module
* Add `#[non_exhaustive]` and derive `BuilderLite` where necessary in UART module
* Add `#[non_exhaustive]` and derive `BuilderLite` where necessary in SPI module
* Update `CHANGELOG.md`
* Fix build errors in HIL tests
* Fix generated doc comments
* Return a `ParseError` rather than panicking
* Add a method to set the value to `None` for `Option` types
* Rewrite time driver
* Don't store priority
* Changelog
* Fix doc example
* Use separate locks for Alarms
* Mention generic queues
* Cache the next wakeup timestamp
* Immediately repoll if timestamp is in the past
* Add benchmark
* Remove equality check for now
* Enable interrupts when allocating the alarm
* Clean up
* Use relaxed ordering
* wut
* Typo
* Move benchmar
* fmt
* Keep a single PinType trait
* Merge impl blocks
* Deduplicate usb pad workaround
* Deduplicate some bit manipulation
* Remove gpio dispatch proc macro
* Inline PinType into GpioProperties
* Update package dependencies and bump version numbers
* Update `CHANGELOG.md` for each package to be published
* Remember to update `xtensa-lx-rt` too :)
* Add and use TrapFrame::new() in esp-wifi
* Bump `xtensa-lx-rt` by minor instead of patch, as there are breaking changes
---------
Co-authored-by: Dániel Buga <bugadani@gmail.com>
* Re-export the `main` procmacro from `esp-hal-embassy` rather than `esp-hal`
* Fix documentation warnings
* Flatten the `time_driver` module
* clippy
* Update `CHANGELOG.md`
* Use published versions of all dependencies, update dependencies as needed
* Fix `embassy_usb_serial` example build errors after updating `embassy-usb`
* New package releases
* Fix warning in `esp-hal-procmacros` when building for `esp-lp-hal`
* Document cargo features, use `embedded-hal@1.x.x` by default
* Derive more traits on public types, assorted cleanup and improvements
* Implement `embedded-hal-nb` and `embedded-io` traits for UART
* Update `CHANGELOG.md`
* Silence `clippy` for now...
* Module documentation for UART
* Update module documentation format
* Check docs examples II
* rebase and update
* fix root crate macro expansion in doctest snippets
* clean up and fmt
* add xtask run-doc-test subcommand and check in CI
* address review comments
* remove commented printlns
* fix the host target check
* rebase and update
* hide docs for before_snippet macro and remove commented block code in twai
* Extract embassy support into `esp-hal-embassy` package
* Update relevant packages/examples/tests to get CI green again
* Add back `defmt` support
* Re-export `Executor` and `InterruptExecutor` rather than making `executor` module public
* Document the `esp-hal-embassy` package
* Update `CHANGELOG.md`
* Hack together a "fix" for the `SYSTIMER` time driver
* Make `clippy` shut up
* Remove TODO comments from linker scripts for ESP32-C6/H2
* Small refactor in Xtensa interrupt module to get rid of some allow attributes
* Remove unused function and attribute from `esp-hal-procmacros`
* Extract inner modules of `gpio` module into their own files
* Update `CHANGELOG.md`
* Add missing doc comment in `gpio::lp_io` module
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
* Remove patches and just use git dependency for PACs instead
* Various `README.md` normalization/updates for simpler packages
* Update `README.md` for `esp-hal` and `esp-lp-hal`
* Update repo-level `README.md`
* Interrupt runtime binding
* Add `set_interrupt_handler` for GPIO
* Fix
* Fix typo
* Make sure to produce a warning for an unused `#[handler]`
* Simplify GPIO interrupt handling
* Appease Clippy
* Make sure to patch the PACS in esp-hal
* Use latest PAC commit
* CHANGELOG.md entry
* New package releases
* Fix the `CHANGELOG.md` check in CI
* `defmt` is annoying
* Update documentation index to point to new version, correct release date
* Remove docs.rs badge from and update docs link in `README.md`
* Silence `clippy`
* Fix documentation link in `esp-hal/README.md`
* Remove the chip-specific HAL packages
* Update some doc comments which were missed, fix build script for ESP32/S2
* Refactor/update `esp-hal-procmacros`
* Create the `examples` package, add back all of the previously existing examples
* Use `xtask` automation package for checking examples and documentation in CI
* Combine the `rt-riscv` and `rt-xtensa` features into a single `rt` feature
* Bump MSRV to 1.76.0 (shocking!)
* Re-document the features for the HAL
* No need to re-export the `riscv` package like this
* Make clippy happy, improve CI clippy checks
* Update `CHANGELOG.md`
* riscv: zero bss
Co-authored-by: Björn Quentin <bjoernQ@users.noreply.github.com>
* Address a number of review comments
* Correct pin number in `hello_rgb` example for ESP32-C3
* Address the remaining review comments
* More small tweaks/improvements
* Fix RMT examples (#11)
* Fix RMT examples
* Remove logger-init
* Make I2S examples work on ESP32 (#12)
* Make I2S examples work on ESP32
* Remove logger init
* Fix the direct-vectoring examples on all RISCV chips (#10)
* Update GPIOs for some examples...
* Embassy timer example fixes (#13)
* Switch to generic queue instead of integrated for all examples
* changelog
* Update GPIO in another example, make `rustfmt` happy
* Fix ESP32-S2 PSRAM
* Avoid UART0 and SPI flash pins (#15)
* Avoid UART0 and SPI flash pins
* Fix spi_eh1_device_loopback for non-ESP32
* Update examples/src/bin/gpio_interrupt.rs
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
---------
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
Co-authored-by: Björn Quentin <bjoernQ@users.noreply.github.com>
Co-authored-by: bjoernQ <bjoern.quentin@mobile-j.de>
Co-authored-by: Juraj Sadel <jurajsadel@gmail.com>
* After more analysis and coding
* More work is done, writing/reading WIP
* `write` prototype done, small fixes. Read next
* pre-rebase
* Rebased and updated
* Pre-final state of driver
* More work (near-final state) done
* WIP
* WIP
* working
* cleanup
* changelog
* address review comments
* remove Option from conjure and improve lp-i2c example description
---------
Co-authored-by: Kirill Mikhailov <konnor1980@yandex.ru>
* RISC-V executors
* Add multiprio example to RISC-V SoCs
* Check new examples
* Hack in support for generic queue
* Reserve SoftwareInterrupt0 for multicore thread-mode executors
* Merge interrupt executors
* Merge thread-mode executors
* Document the new features and expand on time drivers
* Main tasks don't have to return !
* Unify multiprio examples
* Undo C6 log output change