* Clean up `embedded-hal-02` related imports
* Clean up some random warnings
* Update various examples to no longer depend on `embedded-hal-02` feature
* Build `esp-hal` without default features enabled in CI
* Decouple the TWAI driver from the `embedded-hal` and `embedded-can` packages
* No longer require `embedded-hal`/`embedded-can` for the TWAI example
* Update `CHANGELOG.md`
* Add support for building a package without its default features to `xtask`
* Do not require `embedded_hal_02` traits in examples where they are not required
* Do not require `embedded_hal_02` traits for filling a buffer with random bytes
* 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`
* uart: allow driver to init as blocking or async
* adds a mode type param to Uart types
* remove #[interrupt] usage
* add constructor for blocking and async modes
* blocking constructor takes optional interrupt
* async chooses the correct handler to bind at runtime
* moves interrupt enable for uart into the driver
* changelog
* Remove the `direct-vectoring` feature
* Enables the feature by default
* renames the old direct_vectoring enable function `enable_direct`
* Make enable_direct safe, move it out of vectored module
* enable interrupt preemption by default for riscv
* remove pub from cpu intr handlers
* add enable_direct for Xtensa too
* Fix flip-link feature
* Fix up interrupt docs
* changelog
* fix clippy suggestions
* Disable P4 workflow
* Implement ETM for general purpose timers
* Revert changes to timer_interrupt example
* Add an example for ETM for general purpose timers
* Add newly introduced generic const param for Timer0
* Use id function on TimerGroupInstance instead of const parameter
* Revert const parameter on Timer1
* Specify supported chips
* Update CHANGELOG.md
* Update CHANGELOG.md
* Fix example
* Assign configured ETM channel to a variable to prevent drop
* Fix comments
* Move declaration of delay after critical section
* Use delay_millis instead of delay_ms
* Remove mut from delay
* Add documentation
* Create an `embedded-hal-02` feature and gate implementations, rename `eh1` to `embedded-hal`
* Use native `Delay` APIs in examples where applicable
* Fix example imports, be explicit about about `embedded-hal-02` feature requirements
* Update `CHANGELOG.md`
* Fix core1 startup
The original code tried to set the stack pointer and call the closure
_in the same stack frame_. This isn't possible, so the actual stack
being used was the 8K stack setup by ROM code. If this stack overflowed,
it could corrupt the ROM function .bss and .data which is why I was
seeing intermittent panic messages. I still don't understand all the
failure cases, but I know that now we are using the correct stack
properly.
* Improve multicore example
* Change log
* apply fix to esp32
* 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
* Un-pin the `defmt` package's version for `esp-hal` and `esp-hal-smartled`
* Bump `esp-println` and `esp-backtrace` versions in the `examples` package
* Mention lack of MSRV guarantees when using `defmt` feature
* 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>