Commit Graph

927 Commits

Author SHA1 Message Date
Dániel Buga
fabb631b7d
Fix tick rates not being applied (#1124) 2024-01-29 17:53:35 +00:00
Kirill Mikhailov
be7b461ae2
RngCore trait is implemented (#1122)
* WIP

made randomness ensuring function
implemented RngCore trait (final version i guess)

* Revert part of changes and leave TODO comment

Changelog entry

Get rid of warning
2024-01-29 17:51:53 +00:00
Bryant Chandler
3eb296c892
Allow for splitting of the USB Serial JTAG peripheral into tx/rx components (continuation) (#1116)
* Allow for splitting of the USB Serial JTAG peripheral into tx/rx components

* Update `CHANGELOG.md`

* Split single waker into tx/rx wakers

* Fix interrupt bug and update embassy example

The wakers were written to trigger opposite, so the rx waker
would trigger for tx interrupts and vice versa.

Also update the embassy example to run read/write in
separate tasks.

* rustfmt

---------

Co-authored-by: Jesse Braham <jesse@beta7.io>
2024-01-26 14:09:09 +00:00
Sergio Gasquez Arcos
6ffce31250
docs: Update lp cores crates (#1119) 2024-01-26 14:02:53 +00:00
Jesse Braham
9bf70ff792
Combine the esp-ulp-riscv-hal and esp32c6-lp-hal packages (#1115)
* Combine `esp-ulp-riscv-hal` and `esp32c6-lp-hal` into a single package

* Update LP core examples

* Update CI workflow

* Fix `LP_UART` example
2024-01-26 13:46:51 +00:00
Jesse Braham
f52aa1351c
Refactor the analog module (#1100)
* Create virtual peripherals for `ADC`/`DAC`

* Refactor the `analog::dac` module

* Refactor the `analog::adc` module

* Decouple the ADC driver from the `embedded-hal` traits

* Update `CHANGELOG.md`

* Seal the `AdcCalScheme` trait, reduce visibility of `AdcCalEfuse` trait

* Remove `APB_SARADC`/`SENS` peripherals from the `Peripherals` struct
2024-01-25 16:46:27 +00:00
Björn Quentin
43f212dc72
ESP32-P4: Enable efuse (#1114)
* ESP32-P4: Enable efuse

* CHANGELOG.md entry
2024-01-25 16:45:45 +00:00
Juraj Sadel
bc96351c17
C6: Basic LP_UART driver (#1113)
* WIP

* Add basic LP_UART C6 driver

* Add lp-uart example for C6

* modify entry macro and fmt

* final cleanups

* revert lp_core_basic example and add lp_core_uart and uart examples

* changelog

* review changes

* second changelog

---------

Co-authored-by: Jesse Braham <jesse@beta7.io>
2024-01-25 16:22:14 +00:00
Björn Quentin
de54a17275
Initial support for CLIC (#1112)
* Initial support for CLIC

* CHANGELOG.md entry

* Explain MCAUSE CSR for CLIC
2024-01-25 15:29:37 +00:00
Björn Quentin
f542eb48bb
ESP32-P4: Initial GPIO support (#1109)
* ESP32-P4: Initial GPIO support

* CHANGELOG.md entry
2024-01-23 17:56:01 +00:00
Jesse Braham
c793f99e30
Update documentation/comments in soc::peripherals modules (#1108) 2024-01-23 16:09:09 +00:00
Jesse Braham
5391e68668
Use the document-features crate instead of manually writing package feature docs (#1107)
* Add `document-features` dependency to all HAL packages

* Update package-level documentation for each chip-specific HAL package

* Document package features for all chip-specific HALs
2024-01-23 15:49:06 +00:00
Remmirad
76b5d77505
Implement embedded_hal 1 pwm traits for ledc channel (#1097)
* Implement eh_1 pwm traits for ledc channel

* Add changelog entry

* Update CHANGELOG.md

---------

Co-authored-by: Remmirad <remmirad@posteo.net>
2024-01-23 14:15:50 +00:00
Jesse Braham
e5cd1bd33e
Add initial support for the ESP32-P4 (#1101)
* Add `esp32p4` feature to `esp-hal-procmacros`

* Add `esp32p4` feature to `esp-hal-common`

* Create the `esp32p4-hal` package

* Add ESP32-P4 to CI workflow

* Fix a silly typo :)

* Update `CHANGELOG.md`
2024-01-22 15:28:05 +00:00
Scott Mabin
8ac075a0aa
Add USB_EXCHG_PINS efuse workarounds for esp32c3 and esp32s3 (#1104)
* Add USB_EXCHG_PINS efuse workarounds for esp32c3 and esp32s3

* changelog
2024-01-22 10:32:56 +00:00
Jesse Braham
c448680054 Begin next release cycle 2024-01-19 15:00:11 +00:00
Jesse Braham
567a44f28c
New package releases (#1098) 2024-01-19 14:40:16 +00:00
Jesse Braham
a5a58291e3
Do not invert ADC readings when using ESP32 (#1093)
* Do not invert ADC readings when using ESP32

* Update `CHANGELOG.md`
2024-01-19 07:13:27 +00:00
Jesse Braham
99c46d6a4e Update CHANGELOG.md 2024-01-18 17:30:30 +00:00
Jesse Braham
d3674f5724 Update to latest smart-leds-trait and smart-leds packages 2024-01-18 17:30:30 +00:00
Jesse Braham
0e927d25cf
No longer depend on embassy-time (#1092)
* No longer depend on `embassy-time`

* Update `CHANGELOG.md`
2024-01-17 16:45:11 +00:00
Björn Quentin
ebe4149c39
Fix time-driver-timg timer1 (#1091)
* Fix time-driver-timg timer1

* CHANGELOG.md entry

* Fix examples

* Fix CHANGELOG.md
2024-01-17 16:20:46 +00:00
Scott Mabin
4ea4a809fd Document msrv toolchain per chip hal 2024-01-17 15:30:48 +00:00
Sycrosity
842eb7c92e
Update embassy to its embedded-* v1.0.0 versions (#1076)
* update embassy in Cargo.toml and add embassy-time-driver

* fix embassy-time for esp-hal-common

* update CHANGELOG.md

* fix clippy warning by removing manual adc implimentation for esp32

* undo change, fixing clippy error by removing unused use statement

* remove embassy crates-io patches

* remove a remaining embassy patch

* Update embassy-time version in esp-hal-common/Cargo.toml

Co-authored-by: Scott Mabin <scott@mabez.dev>

* remove the remaining embassy patches

* remove embassy-time as a dependency for esp*-hal

---------

Co-authored-by: Scott Mabin <scott@mabez.dev>
2024-01-16 20:25:22 +00:00
Björn Quentin
a23d6a05a6
Fix stack-top calculation for app-core (#1081)
* Fix stack-top calculation for app-core

* CHANGELOG.md entry
2024-01-15 14:46:34 +00:00
yanshay
0f9e2466ec
Add support for 80Mhz psram, selected using 'psram-80mhz' feature (#1073)
* Add support for 80Mhz psram, selected using 'psram-80mhz' feature

Default stays 40 MHz

* Added changelog regarding 80MHz PSRAM support

* Add 80Mhz support also to octal psram

* Add documentation for 80Mhz psram in lib.rs

* Linker script adjustments needed for wifi drivers (#1074)

* Add `embedded-io` feature to each chip-specific HAL (#1072)

* Add `embedded-io` feature to each chip-specific HAL

* Update `CHANGELOG.md`

* Update to `1.0.0` releases of `embedded-hal-*` packages (#1068)

* Update to `1.0.0` releases of `embedded-hal-*` packages

* Update `CHANGELOG.md`

* Added changelog regarding 80MHz PSRAM support

---------

Co-authored-by: Björn Quentin <bjoernQ@users.noreply.github.com>
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2024-01-12 14:12:47 +00:00
Torben Hansing
944ce9a33e
Make GPIO4 an InputOutputAnalog pin on ESP32 (#1079)
* Make GPIO4 an InputOutputAnalog pin on ESP32

* Add the change to the CHANGELOG.md

* Use nightly rustfmt to format the file
2024-01-12 13:49:07 +00:00
Jesse Braham
63408cf8a3
Update to 1.0.0 releases of embedded-hal-* packages (#1068)
* Update to `1.0.0` releases of `embedded-hal-*` packages

* Update `CHANGELOG.md`
2024-01-11 14:33:23 +00:00
Jesse Braham
c53f3095ec
Add embedded-io feature to each chip-specific HAL (#1072)
* Add `embedded-io` feature to each chip-specific HAL

* Update `CHANGELOG.md`
2024-01-11 14:03:04 +00:00
Björn Quentin
df1374dd1a
Linker script adjustments needed for wifi drivers (#1074) 2024-01-11 11:04:36 +00:00
Jesse Braham
6afc988f88
Ignore changes to CHANGELOG.md files for the CI workflow (#1070) 2024-01-10 13:47:09 +00:00
Kirill Mikhailov
fdc1dbfa1d
Unify the low-power peripheral names (RTC_CNTL and LP_CLKRST to LPWR) (#1064)
* WIP

* Adjusting to changes in driver

* Adding CHANGELOG entry
2024-01-08 14:00:26 +00:00
Jesse Braham
cf66cc05fc
Move initialization functions into esp-hal-common package's soc module (#1049)
* Move initialization functions into `esp-hal-common` package's `soc` module

* Simplify module paths
2024-01-03 15:38:33 +00:00
Dániel Buga
e9d6a2157a
C6 deep sleep driver MVP (#918)
* Restructure sleep-related files

* Port most of esp-idf deep sleep code

* Add example

* Remove extra newline

* Hide RtcioWakeupSource from esp32 api

* Explain commented constants

---------

Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2024-01-03 15:14:17 +00:00
Jesse Braham
62ae9dc05c
Add rt-riscv and rt-xtensa features to esp-hal-common (#1057)
* Add `rt-riscv` and `rt-xtensa` features to `esp-hal-common` to allow enabling/disable runtime support

* Update the CI workflow to check the chip-specific HAL packages without default features

* Update `CHANGELOG.md`
2024-01-03 14:24:05 +00:00
liebman
2e2d67f315
correct errata36() for gpio 32 and 33 (#1053)
* correct errata36() for gpio 32 and 33

* update changelog
2023-12-28 07:26:48 +00:00
Juraj Sadel
07b2b0d9ea
Check missing embassy_XX examples to the CI (#1048)
* CI: add missing examples

* H2: remove embassy-time-systick feature from embassy_i2c example
2023-12-20 14:24:15 +00:00
Kamil Koczurek
2b2c001e7a
efuse: allow overriding base mac (#1044)
ESP-IDF defines several kinds of mac addresses, but this doesn't map
well to the esp-hal design, because:
1. This isn't actually required by hardware.
2. Wifi / Ble drivers are external to esp-hal.

Hence this patch only allows overriding the base mac and does not
introduce the concept of other types of mac addresses.
2023-12-20 13:58:31 +00:00
Juraj Sadel
244c74776a
Don't enable async interrupts without async feature (#1042)
* only enable interrupts if the async feature is present

* remove warnings and fmt

* changelog
2023-12-19 16:34:17 +00:00
Björn Quentin
8b01421c8e
Fix/c6 h2 interrupt disabling (#1040)
* Remove debug print

* C6/H2: Fix interrupt disabling

* CHANGELOG.md entry
2023-12-19 13:39:25 +00:00
Björn Quentin
36954e740d
Merge .text_init into .text on RISC-V (#1038)
* Merge `.text_init` into `.text`

* Only merge `init.*` into `.text` for RISC-V
2023-12-18 15:15:59 +00:00
Dániel Buga
260c882b08
C6 PMU startup configuration (#974)
* Implement a bunch of missing startup code

* Extract peripheral address retrieval

* Clean up manual register manipulation

* Add missing PMU related setup

* Changelog

* Clean up revision check

* Fix build

* Add note about PMU setup code source

* Use macros to deduplicate hp/lp system setup

* Clean up a bit

* Initialize the correct register in modem_clock_hal_select_wifi_lpclk_source
2023-12-15 16:18:37 +00:00
ripytide
9084d1eeaf
remove double &mut for SetDutyCycle impl on PwmPin (#1033)
* remove double &mut for SetDutyCycle impl on PwmPin

* add entry to changelog
2023-12-15 14:39:56 +00:00
Jesse Braham
82c579eb14
Clean up example imports (#1027)
* Don't import directly from `esp-hal-common` in examples

* Do no alias the HAL packages in examples
2023-12-14 15:56:04 +00:00
Jesse Braham
58baecc0d2
Assert that the hardware and software digests match for SHA examples (#1026) 2023-12-14 15:04:46 +00:00
Jesse Braham
1e875c9e9e Begin next release cycle 2023-12-13 18:38:13 +00:00
Jesse Braham
bb58446f91 New patch release for esp-hal-common 2023-12-13 18:34:38 +00:00
Sergio Gasquez Arcos
c40f75d976
Fix SHA (#1021)
* fix: Update dst_ptr with offset

* feat: Use PACs with fixes

* docs: Update changelog
2023-12-13 16:56:15 +00:00
Jesse Braham
9dd3df273e Begin next release cycle 2023-12-12 18:37:34 +00:00
Jesse Braham
990a76852e Bump package versions which were missed in previous commit 2023-12-12 18:37:34 +00:00