Jesse Braham
ad74108e00
New package releases
2023-09-05 07:47:49 -07:00
Jesse Braham
ea5a8226fb
Create separate CHANGELOG.md files for esp-riscv-rt and esp32c6-lp-hal
2023-09-05 06:57:05 -07:00
Jesse Braham
ce3933cf6d
Fix number of ADC attenuations for ESP32-C6 ( #771 )
...
* Fix number of ADC attenuations for ESP32-C6
* Update CHANGELOG
2023-09-05 06:31:45 -07:00
Dániel Buga
7866896b70
Add defmt support, make log optional ( #773 )
...
* Executor related touchups
* Make log optional
* Add defmt feature and derive on Debug structs
* Test both log drivers
* Update esp-println
* Document defmt msrv
2023-09-04 11:29:44 +01:00
Kirill Mikhailov
2f5ebad9fe
Update Clock module documentation ( #774 )
...
Added a record to Changelog
Fix typo
2023-09-01 09:51:22 -07:00
Jesse Braham
4dd9fbdb7b
Disable all watchdog timers at startup by default ( #763 )
...
* Rework watchdog timer drivers to allow enabling/disabling and feeding without traits
* Disable all watchdogs prior to `main` using the `__post_init` hook
* Update all watchdog-related examples
* Update CHANGELOG
* Address review comment
2023-08-30 08:54:01 -07:00
Dániel Buga
32d1ea0d42
Add missing conversion ( #764 )
2023-08-30 09:16:57 +02:00
Dániel Buga
92a2cc7c31
Update to embassy-executor 0.3 ( #756 )
2023-08-29 10:39:17 -07:00
Björn Quentin
9a894879a7
PARL_IO RX for ESP32-C6 / H2 ( #760 )
...
* PARL_IO RX for ESP32-C6 / H2
* Add PARL_IO RX to README.md
* Remove logger-init from PARL_IO_RX examples
2023-08-29 18:48:37 +02:00
Dániel Buga
e082d47a87
Multicore-aware executors ( #723 )
...
* Implement multicore-aware executors
* Add examples
* Use pre-defined config to import SystemPeripheral
* Use static_cell::make_static
2023-08-28 10:05:42 -07:00
Anthony Grondin
91b9b51426
feat(hmac): Add HMAC driver for hardware acceleration ( #755 )
...
* feat(hmac): Add HMAC driver for hardware acceleration
Driver code taken from: a9807ae67d
* fix build for target without hmac support.
2023-08-28 08:54:41 +02:00
Anthony Grondin
5a8be302b4
Move alignment helper to its own module in preparation of HMAC module ( #753 )
...
* Move alignment helper to its own module.
* fix wrong endian on ESP32
- Add CHANGELOG.md entry
- Change reg_access module visibility
2023-08-24 12:26:30 -07:00
Dániel Buga
6c2659f9e4
S3: GPIO wakeup source with RTC_IO pins ( #690 )
...
* Remove unnecessary Pin bounds
* S3: Add RTC_IO wakeup source
* Add s3 example
* Add changelog entry
---------
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2023-08-23 10:54:51 -07:00
Björn Quentin
95a1255c3b
PARL_IO TX driver ( #733 )
...
* PARL_IO TX driver
* Update CHANGELOG.md
* Update esp-hal-common/src/dma/mod.rs
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
---------
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2023-08-23 10:32:13 -07:00
Jesse Braham
9acb915fb9
Implement the ufmt_write::uWrite trait for the USB Serial JTAG driver ( #751 )
...
* Implement the `ufmt_write::uWrite` trait for the USB Serial JTAG driver
* Update CHANGELOG
2023-08-23 08:24:47 -07:00
Dániel Buga
bf4efcfd7f
Take FnOnce closure by value in start_app_core ( #739 )
2023-08-22 16:33:32 +02:00
Jesse Braham
7fce6e32f2
Update to 1.0.0-rc.1 version of embedded-hal-* crates ( #747 )
...
* Update a bunch of dependencies
* Implement `embedded-io` and `embedded-io-async` traits for USB Serial JTAG
* Implement `embedded-io` and `embedded-io-async` traits for UART
* Fix `embassy_serial` examples
* Update CHANGELOG
* Address review comments
2023-08-22 14:53:41 +01:00
Dániel Buga
db62ad5948
Timer driver improvements ( #737 )
...
* Slightly refactor systimer driver
* Remove redundant check
* Start timer on init
* Delete semicolon for consistent styling
* Add to changelog
* Remove unused code
* Remove unsafe code
2023-08-22 12:20:05 +01:00
Dániel Buga
eb8acaf4d4
Set alarm on correct timer ( #730 )
2023-08-16 12:54:54 +01:00
M4tsuri
9d5afbf1f5
Fixed wrong dram_seg length in esp32s2-hal linker script ( #732 ) ( #734 )
...
* Fix size of ram_seg in ld script
* Update CHANGELOG.md
2023-08-16 13:26:52 +02:00
Jesse Braham
2dee0110be
[ESP32-C6-LP] Add input support for IO driver, implement more embedded-hal output traits ( #720 )
...
* Add input support for IO driver, implement more `embedded-hal` output traits
* Update CHANGELOG
2023-08-14 07:45:17 -07:00
Dániel Buga
a2ae6f37d1
Implement RTCIO pu/pd and hold control
2023-08-14 07:27:31 -07:00
Björn Quentin
92bda00296
Remove heap related symbols, use all remaining memory for the stack ( #716 )
...
* Use all remaining memory for stack(s)
* Remove HEAP related code from RISCV linker scripts
* Fix direct-boot / mcu-boot linker scripts
* Use a statically allocated stack for core-1
2023-08-14 13:38:36 +02:00
Jan Sosulski
659cdffcba
Fix psram check in esp-hal-common build.rs ( #718 )
...
* Fix psram check in esp-hal-common build.rs
* Update changelog.
2023-08-13 13:42:51 +00:00
Björn Quentin
bbe1e5df59
ESP32-C6 LP CORE delay and basic gpio ( #715 )
...
* ESP32-C6 LP CORE delay and basic gpio
* CHANGELOG.md, build LP examples in release mode
2023-08-12 14:04:25 +00:00
Jesse Braham
64556da803
Create the esp32c6-lp-hal package ( #714 )
...
* Create the `esp32c6-lp-hal` package
* Update CHANGELOG
2023-08-10 09:48:46 -07:00
Jesse Braham
846f3b0b50
New package releases ( #713 )
...
* Add/update `rust-version` to manifests where it is missing or out of date
* Use latest versions of published PACs
* New package releases
2023-08-10 08:44:15 -07:00
Scott Mabin
47b987fb66
Add FlashSafeDma wrapper for eh traits which ensure correct DMA transfers from flash ( #678 )
2023-08-09 13:07:20 -07:00
Björn Quentin
4ba618c875
Make sure to use wrap-mode for RMT TX (ESP32/S2) ( #710 )
...
* Make sure to use wrap-mode for RMT TX (ESP32/S2)
* Update CHANGELOG.md
2023-08-09 06:56:10 -07:00
Kirill Mikhailov
2bd10526a7
Documenting a number of peripherals and packages ( #680 )
...
* Initial documentation improvements
* More documentation improvements
* More documentation improvements
More modules documented
* Finished SOC documentation for esp32 + TWAI
* Fix: fix incorrect formatting
* Adding more documentation to rom, and soc peripherals for multiple chips
* Adding documentation for multiple peripherals
* Adding SOC module documentation
* Analog and clock modules are documented
* Adding module-level documentation for DMA and INTERRUPT peripherals
* Finishing job + minor fixes
* Fix unopened HTML break
* Rustfmt adjustment
formatting
Fix typo
* Add CHANGELOG record
Fix typo
* Fix typos, mistakes, improving docs
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Fix typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Fix typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Fix typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
fix typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Fix typo
Co-authored-by: Dániel Buga <bugadani@gmail.com>
Fix typo
Co-authored-by: Scott Mabin <scott@mabez.dev>
Fixing typos, mistakes, improving docs.
* Fix formatting, mistakes and typos
* Fixing a bunch of logical, grammatical and formatting mistakes
2023-08-09 06:33:50 -07:00
Dániel Buga
4baf0b96c6
Fix ESP32 radio clock code writing incorrect registers ( #709 )
...
* Fix ESP32 radio clocks
* Blanket-enable radio clocks
2023-08-08 08:22:07 +02:00
Dániel Buga
da497c8833
Fix ESP32-{S2/C2/C3} radio clocks ( #681 )
...
* Fix ESP32S2 radio clocks
* Fix C2
* Fix C3
* Fix changelog
2023-08-07 17:13:49 +02:00
Dániel Buga
544a966b40
Fix esp32s3 radio clocks ( #679 )
2023-08-07 15:37:03 +02:00
Scott Mabin
2f091161b4
Add ClockControl::max helper ( #701 )
...
* Add `ClockControl::max` helper
* Add changelog
* remove unneeded allow(unused)
---------
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2023-08-02 06:47:32 -07:00
onsdagens
d6d5e0c86b
Adding direct vector table hooking support for RISC-V's ( #621 )
...
* direct vectoring support added
* provide minimal handlers for hooking the vector table directly
* changed direct vectoring interrupt enable interface to map to CPU interrupt
* direct vectoring interrupt nesting
* removed unused dependency
* added tentative c2 and c6 support for direct vector table hooking
* added direct vectoring examples
* added direct vectoring examples
* updated changelog
* added direct vectoring to CI
* Added H2 support and example, moved helpers to esp-hal-common
* Added H2 direct vectoring example to CI
* Removed remnants of removed feature
* C6 and H2 examples fixed
* C6 and H2 examples fixed
* C6 and H2 examples fixed
* Comment fixed
* Added preemption flag to RT
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
2023-08-01 16:28:40 +01:00
Dániel Buga
822497b989
Clean up register access ( #696 )
2023-08-01 15:31:35 +01:00
Scott Mabin
18e803075b
Switch to micros instead of millis in set_periodic ( #686 )
...
* Switch to micros instead of millis
* Add changelog entry
2023-07-31 05:50:51 -07:00
Dániel Buga
fedd2ad0bc
Pin and RTCPin improvements ( #687 )
...
* Make Pin a supertrait
* Make Pin object-safe
* Add to changelog
2023-07-28 11:59:36 +01:00
Dániel Buga
c529d82599
Deep sleep: Decouple pin and slice lifetime ( #689 )
...
* Decouple pin and slice lifetime
* Add PR to changelog
2023-07-28 11:54:23 +01:00
Jesse Braham
00fac71b68
Update the PACs and resolve breaking changes, simplify rmt driver ( #695 )
...
* Update to latest (unreleased) versions of PACs
* Update `SDMCC` peripheral to `SDHOST` for ESP32
* Fix `USB_DEVICE` interrupts
* Fix references to various renamed GPIO fields for ESP32-S2
* Update and re-organize the `rmt` driver
* Update CHANGELOG
2023-07-27 23:16:39 +01:00
Jesse Braham
a95f6efb35
Update esp-hal-smartled to use the new rmt driver, remove old pulse_control driver ( #694 )
...
* Remove the old `pulse_control` driver
* Update `esp-hal-smartled` to use the new `rmt` driver instead
* Update the `hello_rgb` example for each chip
* Update CHANGELOG
2023-07-27 16:07:15 +01:00
Alex Johnson
debe2b8004
fixed async read w/o at_cmd ( #652 )
...
* fixed async read w/o at_cmd
* configurtion checks for async `read`
* remove fifo thrhd check
2023-07-25 12:19:59 +01:00
Dániel Buga
9f5e2b59de
ESP32-S3 deep sleep ( #660 )
...
* Add changelog entry
* Copy esp32 impl, update RtcSleepConfig
* implement apply
* extract rtc_sleep_pu
* Implement base_settings based on esp-idf rtc_init
* Hide CPU-specific sleep code
* Set base_settings when constructing Rtc
* Add s3 deep sleep defaults
* Implement finish_sleep
* Turn magic constant into enum
* Clear ext1 wakeup status
* Add wakeup source impls
* Add examples
2023-07-24 20:20:30 +01:00
Dániel Buga
2472b6d7a9
Implement calibrated ADC API for S3 ( #641 )
...
* adc_cal: s3: Add efuse functions for reading calibration
* Add changelog entry
* Implement calibrated ADC API for S3
* adc_cal: s3: Add calibrated ADC reading example
* Clean up
* Prefer where clauses
* Clean up unnecessary unsafe blocks
* Fix autolinks
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
2023-07-24 17:45:19 +01:00
C2D
d4f5afac67
MCPWM DeadTime configuration ( #406 )
...
* Add Initial MCPWM DeadTime configuration
* Add option to use other channel for action trigger
* Fix build for non-esp32s3 (register name difference)
* Fix changelog build & add a way to update RED/FED after construction
* Fix regs
2023-07-24 08:39:10 -07:00
Kirill Mikhailov
211fc0f8a0
Implementing async feature for USB Serial/JTAG peripheral. ( #632 )
...
* Implementing ASYNC features for USB_SERIAL_JTAG (work in progress)
Fix: Interrupt name
* Async works for USB Serial/JTAG
PS. : Yet only for esp32c3, we need to update PACs
Temporary example fix
* Adjustment for different chips
+ Update examples according to upstream
+ Code cleaning
Rust format
* Add record to the CHANGELOG
* Code cleaning, getting rid of useless generic argument
Typo fix
Fix fmt
2023-07-24 07:33:15 -07:00
Björn Quentin
170d590b67
Make in-progress DMA transfers potentially fallible ( #665 )
2023-07-22 20:14:57 +01:00
Dániel Buga
b0126243c0
Fix GPIO interrupt status not being cleared ( #670 )
...
* Fix clearing interrupt status
* Use simpler way to clear bits
* Add note about xtensa
* Add to changelog
2023-07-22 20:03:35 +01:00
Dániel Buga
d89bd546e9
Fix RMT spelling ( #667 )
2023-07-21 11:43:52 +02:00
Scott Mabin
28ac202f1a
esp32s3: usb-serial-jtag interrupt ( #664 )
2023-07-19 15:48:08 -07:00