bjoernQ
fbd912a3a5
Finalize I2S RX Implementation
2022-11-24 10:16:08 -08:00
icedrocket
177d278223
Add more trait re-exports to prelude module ( #260 )
...
* Add more trait re-exports to prelude module
* Don't expose usb_serial_jtag module
* Add missing system module re-exports
2022-11-23 07:24:47 -08:00
Ryan Butler
8ab01225bd
Implemented ability to write bytes in UsbSerialJtag
2022-11-22 10:52:05 -08:00
Jesse Braham
096ff3439d
New releases for all HALs ( #265 )
...
* Update all dependencies to their latest versions
* Bump version numbers
2022-11-17 09:13:41 -08:00
bjoernQ
4afa8fda92
Preliminary I2S Implementation
2022-11-17 08:24:43 -08:00
Jesse Braham
d9135350e7
Add more configuration symbols and simplify the build script
2022-11-17 07:29:35 -08:00
Björn Quentin
9b3e644e30
Detangle I2C clock calculation ( #263 )
...
* Detangle I2C clock calculation
- fixes ESP32-C2 in release mode
- fixes the MPU6050 init problem
* Converted NOTE to FIXME
2022-11-16 11:31:04 +00:00
Josh Weberruss
5523a7b8b9
Fix UART unlisten calls so they clear the interrupt enable bit instead of setting it
2022-11-13 12:30:13 +11:00
Jesse Braham
86049a53de
Update all PACs ( #259 )
2022-11-10 09:02:18 -08:00
Scott Mabin
9064177e99
Initial embassy support ( #225 )
...
* wip: timg embassy driver
- read_raw on timg renamed to now()
- timg initialized and stored in static for use in the embassy driver
- timg sets alarm value
- untested whether alarms actually trigger
* TIMG timer driver for esp32, esp32s3
- Adds the timg timer block as a time driver for embassy
- Not enabled on the C3 as it only has one timer block, better to use
systimer
- s2 example added but can't build due to atomic requirements in
futures-core
* Add S2 atomic support with emulation, fixup embassy support for the S2
* Move executor & static-cell to dev deps. Make eha optional
* Add c2 support, run fmt
* Update to crates.io embassy releases
* Update eha
* update timg time driver to new trait
* Remove exception feature of esp-backtrace and use the user handler for backtracing
* Add async testing workflow
* Update systick example
* Fix S2 examples
* Update xtensa-toolchain
* set rustflags for s2 target
* Disable systick for esp32s2 until we can fix the noted issues
* review improvements
- Fix intr prio array being off by one
- emabssy time prio interrupt set to max prio
- use cfg instead of feature for systick detection
* Update example time delays
2022-11-09 08:04:38 -08:00
Björn Quentin
8bdf11b287
I2C Driver Refactoring ( #233 )
...
* I2C Driver Refactoring
* Improve I2C error handling and robustness
2022-11-09 06:34:55 -08:00
dimi
ece70e99a4
Add Mcpwm0 and Mcpwm1 to system::Peripheral
2022-11-07 13:24:17 -08:00
Björn Quentin
da3cbca61e
Merge pull request #251 from dimpolo/outputsignal
...
add/correct docs for gpio::OutputSignal and add PWM output signal to ESP32-S3
2022-11-07 10:21:58 +01:00
dimi
7df93cb359
add/correct docs for gpio::OutputSignal and add PWM output signal to ESP32-S3
2022-11-07 02:13:53 +01:00
Jesse Braham
ced5941871
Add LEDC support for ESP32-C2
2022-11-04 08:19:53 -07:00
Jesse Braham
251e60c20f
Update to newest PACs for C2/C3/S3 and clean up GDMA implementation
2022-11-03 11:17:51 -07:00
Juraj Sadel
f6ba237e76
ADC: Refactor, join S2 and S3 together and C2 and C3 as well ( #245 )
...
* ADC: Refactor, join S2 and S3 together and C2 and C3 as well
* S3: Update PAC version
2022-11-02 10:38:03 -07:00
bjoernQ
a876d8d344
Support USB-DEVICE on ESP32-S3 and ESP32-S2
2022-11-02 07:14:50 -07:00
Björn Quentin
fae2f1add3
Merge pull request #244 from bjoernQ/fix-esp32c2-apbclock
...
ESP32-C2 APB clock is 40MHz, not 80MHz
2022-11-02 13:59:26 +01:00
bjoernQ
ec60c4b5fe
ESP32-C2 APB clock is 40MHz, not 80MHz
2022-11-02 13:11:00 +01:00
icedrocket
e28a7d1ba0
Fix typo
2022-11-01 20:32:55 +09:00
bjoernQ
ad1970c6b7
Offer DMA channel 3 and 4 on ESP32-S3
2022-10-31 07:09:15 -07:00
dimi
2f3b6c843c
remove lifetime annotations from cpu_control::start_app_core
2022-10-31 14:46:31 +01:00
dimi
5cf6079054
cpu_control::start_app_core improvements
...
* add `Send` bound
* move `#[must_use]` to `AppCoreGuard`
* remove redundant `-> ()`
* document guard behaviour
2022-10-31 13:28:56 +01:00
Björn Quentin
8ec46df825
Merge pull request #234 from jessebraham/feature/dma
...
Add DMA support for ESP32-C2 and ESP32-S3
2022-10-28 16:15:28 +02:00
Jesse Braham
4f18e2c846
Update the priority enum and add missing channels for ESP32-S3
2022-10-28 06:51:10 -07:00
JCF
a7d561ec26
Added method to change bus frequency to Spi struct
2022-10-28 11:15:39 +02:00
Jesse Braham
c642c79297
Add DMA support for ESP32-S3
2022-10-27 12:08:23 -07:00
Jesse Braham
e2df98da52
Add DMA support for ESP32-C2
2022-10-27 11:22:30 -07:00
bjoernQ
3e4710b822
Add DMA support for ESP32-S2
2022-10-25 07:38:45 -07:00
Gustavo Henrique Nihei
3ff5da5aa7
esp-hal-common: Remove unnecessary unsafe block
...
Signed-off-by: Gustavo Henrique Nihei <gustavo.nihei@espressif.com>
2022-10-24 09:52:46 -03:00
playfulFence
4fb77df6ce
Fix lifetime error
2022-10-24 13:09:06 +02:00
Björn Quentin
9744d12484
SPI-DMA for ESP32 ( #216 )
...
* SPI-DMA for ESP32
* MSRV Fix
2022-10-20 09:12:31 -07:00
Juraj Sadel
d850b76246
ESP32S3: Add ADC support
2022-10-20 17:44:08 +02:00
Jesse Braham
00cba4485c
Update esp-hal-common to use the newest PACs
2022-10-19 07:00:20 -07:00
bjoernQ
9cb24bb79f
Basic DMA for ESP32-C3
2022-10-13 10:14:51 -07:00
Jesse Braham
f13c47f28f
Merge pull request #211 from jessebraham/feature/esp32c2
...
Add support for the ESP32-C2/ESP8684
2022-10-13 08:52:44 -07:00
Jesse Braham
908fb48e6c
Remove some unused constants
2022-10-13 07:34:02 -07:00
Jesse Braham
e2b2d55bf8
Fix a bunch of cfg gates, use published version of PAC
2022-10-12 12:25:15 -07:00
Jesse Braham
2880ca4ca0
More corrections to clocks
2022-10-12 09:28:34 -07:00
Jesse Braham
d3f92db2ec
Get the ADC example building, clean up some cfg gates
...
Note that this example still doesn't seem to be working correctly
2022-10-12 09:28:34 -07:00
Jesse Braham
312c41cee2
All examples building, many still have issues at runtime
2022-10-12 09:28:34 -07:00
Andreas Hartmann
159fe3b29b
common/spi: Use constructor in add_device
...
to create a new `SpiBusDevice` instead of directly instantiating the
struct. `SpiBusDevice::new` takes care of setting up the CS line to be a
default-high output, too, which the raw struct doesn't.
2022-10-12 08:52:02 +02:00
Jesse Braham
76f803ae63
Make some corrections to clock/RTC_CNTL (still not working)
2022-10-11 10:12:42 -07:00
Jesse Braham
05fd5a64de
Update dependencies, fix some errors after rebase, add RTC_CNTL
2022-10-11 10:12:42 -07:00
Jesse Braham
3019b78d6a
Fix clock and GPIO drivers, add analog GPIO pins
2022-10-11 10:11:36 -07:00
Jesse Braham
f5f475923f
Add startup code and build/linker scripts, add ADC, eFuse, GPIO, and TIMG
2022-10-11 10:11:36 -07:00
Jesse Braham
455965d471
Create the esp32c2-hal package and add it to the workspace
...
Add a feature for the ESP32-C2 to`esp-hal-common` and update some `cfg`s
Organize the `esp-hal-common` imports and exports and update to include the ESP32-C2
2022-10-11 08:03:43 -07:00
Andreas Hartmann
2b98932028
common/spi: Implement hardware CS
...
Removes a lot of generic arguments and hard-codes the `SpiBusController`
and `SpiBusDevice` to work with the `Spi<T>` defined in the HAL instead.
This allows us to access the `cs_signal()` trait function from `T:
Instance`, which we need to connect/disconnect the CS I/O as
appropriate.
2022-10-11 16:06:45 +02:00
Björn Quentin
af745ac7b0
Fix ESP32-C3 interrupt/exception handling ( #207 )
...
* Fix ESP32-C3 interrupt/exception handling
* Use riscv-atomic-emulation-trap 0.2.0
2022-10-05 14:15:17 +01:00