* Add the `xtensa-lx` package
* Add the `xtensa-lx-rt` and `xtensa-lx-rt-proc-macros` packages
* Exclude new packages from workspace, add to `xtask::Package`
* rustfmt
* clippy
* Introduce public DmaChannel trait
* Use DmaChannel trait in all peripherals
* Simplify ChannelTypes trait
* changelog
* Rename things
* missed a spot
---------
Co-authored-by: Dominic Fischer <git@dominicfischer.me>
* Use published versions of all dependencies, update dependencies as needed
* Fix `embassy_usb_serial` example build errors after updating `embassy-usb`
* New package releases
* gpio: DummyPin + hub75_i8080 example
* changelog
* cmall cleanup in the example
* reduce memory usage by 50% by using i8080 pixel clock
* updated to latest git hal version
* remove complex hub75 example
* remove complex hub75 example dep
* support dma chunk sizes other than 4092
* fmt
* update CHANGELOG
* fix 0 size static assert
* review changes:
- `.div_ceil()`
- return errors for bad chunk size and buffer sizes in Mem2Mem constructors
- correct 0 chunk size check in descripter macros
* dma: clear the mem2mem bit when channel is configured instead of in Drop
* Build HIL tests for ESP32 in CI, fix resulting build errors
* Fix some warnings in the `hil-test` package
* Fix warnings in examples
* Remove "esp_" prefix from Wi-Fi example file names
* Resolve the last of the known warnings
* 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
GPIO pins 19 and 20 had USB D- and D+ swapped. This change fixes which pin is which USB data line according to the pin descriptions in the ESP32-S2 and ESP32-S3 data sheets (sections 2.2 and 2.3.2 respectively). Since these GpioPins are only used by Usb for lifetime tracking, and UsbDp and UsbDm are always used as a pair, this change is only semantic and doesn't affect functionality.
* interstate
* Use type-state over creating new struct
* Getting revert_trng function into the driver
* Finish revert functions
* More progress
* Adjust for new driver release
* Small fixes
fmt
* Fmt + clippy + changelog
* Comments, `RngCore` trait for `Trng`
* fmt
* Make ADC work correctly on TRNG drop, PAC functions instead of raw regs
* Get docs buildable
rustfmt
* Doc comments fix
fmt
* Fix docs for esp32
* Small fixes + exclude `downgrade` and `drop` for `esp32c6`
Downgrade for `esp32c6` is not implemented so far
* TRNG/ADC on `esp32c6` warning comment
* dma: add Mem2Mem to support memory to memory transfer
* fmt
* update CHANGELOG
* removed some debugging
* use "gdma" as the selector for support
* fix empty else
* clippy
* Mem2Mem::new now accepts the peripheral to use
* mark Mem2Mem::new() unsafe
* fmt :-/
* add Mem2MemN values for gdma on non-esp32s3
tested on esp32c3,esp32c6 (will have an esp32h2 in a few days)
* support the esp32c2 (esp8684)
* DmaEligible trait providing dma peripheral value & safe constructor for Mem2Mem dma.
* added hil-test for Mem2Mem
* fmt dma_mem2mem test
* remove `debug!()`
* reset the mem2mem bit (mem_trans_en) in in_conf0 on drop