Zgarbul Andrey
b8b041b51a
SOC_ETM cleanup ( #1365 )
...
* SOC_ETM cleanup
* changelog
* review catch
Co-authored-by: Scott Mabin <scott@mabez.dev>
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
2024-03-31 17:54:53 +00:00
Zgarbul Andrey
c2279a28d3
TIMG clusters ( #1364 )
2024-03-31 12:05:28 +00:00
Dániel Buga
f0d6dc4bee
Fix GPIO numbers ( #1362 )
2024-03-30 16:41:44 +00:00
Zgarbul Andrey
9b048f4c99
MCPWM clusters ( #1360 )
2024-03-30 16:19:43 +00:00
Mateusz
bd1e1fab1a
C3: Fix the number of GPIO pins ( #1361 )
...
* C3: Fix the number of GPIO pins
* update changelog
2024-03-30 16:04:34 +00:00
Björn Quentin
6f01b5aba3
Runtime ISR binding crypto accelerators ( #1354 )
...
* Runtime ISR binding for ECC,SHA,RSA
* CHANGELOG.md
* CHANGELOG.md
* Fix examples
* Remove obsolete `free` from ECC driver
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
2024-03-29 23:13:19 +00:00
Pietro
5037447a0a
Properly disable USB pullups/pulldowns on esp32c3/esp32s3 ( #1358 )
...
* fix usb pullup/pulldown interfering with GPIO
* fix formatting
* update changelog
* fix typo in changelog
2024-03-29 22:52:17 +00:00
Zgarbul Andrey
9f035d40a9
update pac ( #1357 )
2024-03-29 22:51:48 +00:00
Jesse Braham
7d5372f57d
Decouple the twai driver from the embedded-hal traits ( #1355 )
...
* 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`
2024-03-28 14:44:09 +00:00
Björn Quentin
d5abc3fc85
Test open-drain-output, test GPIO interrupts ( #1349 )
...
* Test open-drain-output, test GPIO interrupts
* Make GPIO interrupt test less flaky
* Don't ignore hil-tests in CI
2024-03-27 15:21:52 +00:00
Juraj Sadel
cf143972b6
UART: Allow the change of baudrate after instantiation ( #1350 )
...
* UART: Allow the change of baudrate after instantiation
* changelog
* forgot to change LP_UART
* docs: add docs for public API
2024-03-27 15:20:46 +00:00
Zgarbul Andrey
344cc95e65
use DMA channels ( #1330 )
...
* use DMA channels & use const generics
* usize -> u8
2024-03-27 12:50:39 +00:00
dimpolo
b9ba657dc4
optimize ADC::read and add ADC::read_blocking ( #1293 )
2024-03-26 15:22:24 +00:00
Björn Quentin
4077734c3c
Runtime DMA interrupt binding ( #1300 )
2024-03-26 13:56:48 +00:00
Jesse Braham
65dca0025b
Update module documentation for UART driver, make some more methods public ( #1347 )
2024-03-26 13:50:47 +00:00
yanshay
f18e8ae33c
Fix LCD_CAM i8080 potentially sending garbage data to display ( #1301 )
2024-03-26 10:57:51 +00:00
Jesse Braham
9b64e648e5
Add async UART HIL test ( #1345 )
...
* wip
* Clean up Cargo config/manifest, update dependencies
* Remove TODO comment from test
---------
Co-authored-by: Scott Mabin <scott@mabez.dev>
2024-03-26 10:10:17 +00:00
Jesse Braham
7792d67b47
Seal all Instance traits ( #1346 )
...
* Seal all `Instance` traits
* Update `CHANGELOG.md`
2024-03-26 03:06:15 +00:00
Jesse Braham
f060582f0b
Clear the UART's TX/RX FIFOs at initialization ( #1344 )
...
* Clear the UART's TX/RX FIFOs at initialization
* Update `CHANGELOG.md`
2024-03-25 16:54:53 +00:00
Björn Quentin
fd4f5592a4
RMT: allow driver to init as blocking or async ( #1341 )
...
* RMT: allow driver to init as blocking or async
* CHANGELOG and minor fixes
2024-03-25 13:54:03 +00:00
Jesse Braham
d761ec4def
Address clippy lint warnings from latest Xtensa toolchain ( #1343 )
2024-03-25 13:50:18 +00:00
Jesse Braham
ace679f13b
Make examples less dependent on embedded-hal where able ( #1342 )
...
* 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
2024-03-25 13:14:22 +00:00
Jesse Braham
8da8425907
Update READMEs, housekeeping ( #1339 )
...
* 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`
2024-03-22 17:11:20 +00:00
Sergio Gasquez Arcos
3efdbe9420
docs: Fix i2c pins ( #1340 )
2024-03-22 15:09:20 +00:00
Ghislain MARY
d50290e9dd
Fix I²C frequency for esp32 and esp32s2. ( #1333 )
...
Co-authored-by: Ghislain MARY <ghislain@ghislainmary.fr>
2024-03-22 09:37:32 +00:00
Anthony Grondin
1b2dab1dff
Add missing #[doc(hidden)] attributes for embassy proc macros ( #1302 )
...
Fixes https://github.com/esp-rs/esp-hal/issues/1233
2024-03-21 22:10:15 +00:00
Scott Mabin
d5e4995777
uart: allow driver to init as blocking or async ( #1294 )
...
* 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
2024-03-21 21:51:09 +00:00
Jesse Braham
bc74a446a4
Add dummy CI jobs to (hopefully) make our HIL testing work with merge queues ( #1331 )
2024-03-21 16:57:51 +00:00
Scott Mabin
93d31e76d8
Add InterruptHandler wrapper ( #1299 )
...
* Add InterruptHandler
* Which takes the handler and a prio.
* Updates the `#[handler]` macro to create this for us.
* changelog
2024-03-21 15:45:35 +00:00
Scott Mabin
25f509ce74
discard interrupt symbols from lto so that lto doesn't end up rebinding them ( #1327 )
2024-03-21 15:38:07 +00:00
Jesse Braham
0cb5e4e82d
Add the esp-build package, update esp-hal and esp-lp-hal to use it in their build scripts ( #1325 )
...
* Create the `esp-build` package
* Update `esp-hal` and `esp-lp-hal` to use `esp-build`
2024-03-21 15:36:33 +00:00
Björn Quentin
4e5020f83f
Enable TWAI for ESP32-C6 ( #1323 )
...
* Enable TWAI for ESP32-C6
* CHANGELOG.md
* Make Clippy happy, again
* Make Clippy happy. For real this time
* Remove debug code
2024-03-21 15:16:44 +00:00
Sergio Gasquez Arcos
baea915935
Add HIL testing ( #1297 )
...
* Create the `hil-test` package
* Add a simple integration test to verify basic GPIO functionality
* WIP
* feat: Update with esp-hal unification
* build: Update dependencies
* feat: Add a simple CI workflow test
* ci: Avoid using a gh-hosted-runner to build
* ci: Remove building bins in gh-hosted-runner
* ci: Remove HIL Gpio CI test
* ci: Test all the available tests
* test: Add spi_full_duplex test
* docs: Add documentation
* test: Add uart test
* style: Remove unused imports
* docs: Update wiring, document H2 VM
* ci: Enable H2 tests
* ci: Add rust-cache action
* docs: Document H2 vm
* test: Add timeout
* ci: Enable ESP32-C3 tests
* feat: Add timeouts
* feat: Add aes test
* ci: Avoid running CI workflow when we change hil-test stuff
* test: Remove warnings
* feat: Address feedback
* feat: Update features names and spi methods
* ci: Remove rust-cache action
* Update HIL to probe-rs#2292 (#1307 )
* feat: Update probe-rs/embedded-test to probe-rs#2292
* feat: Remove lib
* ci: Use a matrix
* ci: Enable ESP32C3
* feat: Add a way to cfg away test for unsuported peripherals
* ci: Update trigger conditions
* feat: Update pins to make it work on s3
* feat: Changes enabling S3
* feat: Remove log feature
* feat: Adapt for rebase
* feat: Remove env
* feat: enable S3
* chore: Remove todo
* build: Pin dependencies
* feat: Add target alias
* docs: Update readme
* fix: Fix traits imports after rebase. Use debug
* build: Remove lto
* feat: Build tests on release mode
---------
Co-authored-by: Jesse Braham <jesse@beta7.io>
2024-03-21 14:28:27 +00:00
Scott Mabin
1444b62777
ensure we don't strongly define cpu int handlers ( #1324 )
2024-03-21 13:46:49 +00:00
Scott Mabin
2cc7a8ccbd
document usb port differences and recommend usb_serial_jtag example ( #1321 )
2024-03-21 13:41:46 +00:00
Björn Quentin
33c7c32c53
Async-TWAI ( #1320 )
...
* Apply changes from https://github.com/esp-rs/esp-hal/pull/951
Co-authored-by: Paul Paterson <ptpaterson@gmail.com>
* Fix ESP32-S3 async-twai
* Fix ESP32-C6, prepare ESP32, ESP32-S2
* Whitelist twai examples on ESP32-S2
* Fix copy+paste introduced bug
---------
Co-authored-by: Paul Paterson <ptpaterson@gmail.com>
2024-03-21 12:37:43 +00:00
Zgarbul Andrey
4a0a19e253
Delay::delay ( #1298 )
...
Co-authored-by: Jesse Braham <jessebraham@users.noreply.github.com>
2024-03-20 23:45:02 +00:00
Scott Mabin
e98cf71b67
Fix up docs and features; default to enabling eh1 instead of eh02 ( #1313 )
...
* Fix up docs and features; default to enabling eh1 instead of eh02
* Changelog
* Fix twai example
* Fixup from defaulting to eh1
2024-03-20 17:12:33 +00:00
Scott Mabin
a61ffef909
RISCV: remove the direct-vectoring & interrupt-preemption features and enable them by default ( #1310 )
...
* 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
2024-03-20 16:19:22 +00:00
Björn Quentin
1f155cf301
ESP32: Apply Errata 3.6 fix in more places ( #1315 )
...
* ESP32: Apply Errata 3.6 fix in more places
* CHANGELOG.md entry
2024-03-20 15:46:38 +00:00
Jesse Braham
e5b393fe4d
Use task arena instead of embassy-executor's nightly feature ( #1314 )
2024-03-20 14:36:05 +00:00
Kirill Mikhailov
6d9048a873
Update PR Template ( #1281 )
...
* Update `PR Template`
* Minor improvements
2024-03-19 14:54:10 +00:00
sisoteuz
1846543873
Add ETM support for general purpose timers ( #1287 )
...
* 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
2024-03-15 14:03:21 +00:00
Jesse Braham
3a9c248f11
Fix package metadata for esp-hal
2024-03-15 00:18:46 +00:00
Jesse Braham
b402692c72
Create safe wrappers for some ROM functions in the rom module ( #1290 )
...
* Create safe wrappers for some ROM functions in the `rom` module
* Replace transmute in ESP32-S3's `cpu_control` module with ROM function
* Inline *all* the things!
* Remove duplicate of `rom::regi2c_write` with ROM function
2024-03-14 16:45:06 +00:00
Jesse Braham
3079d9cc49
Feature gate embedded-hal@0.2.x implementations, rename eh1 feature to embedded-hal ( #1273 )
...
* 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`
2024-03-14 15:40:44 +00:00
Jesse Braham
1983a74cb1
Correct doc comment regarding effective measurement range of ADC for given attentuations ( #1291 )
...
#1229
2024-03-14 15:16:11 +00:00
Scott Mabin
de19bb0446
Fix core1 startup ( #1286 )
...
* 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
2024-03-14 13:39:28 +00:00
Scott Mabin
7947cecd93
Reserve esp32 ROM stacks and adjust dram2 accordingly ( #1289 )
...
* reserve esp32 rom stacks and adjust dram2 accordingly
* changelog
2024-03-14 13:38:48 +00:00
Jesse Braham
7983923b16
Simplify building documentation, automatically generate documentation index ( #1279 )
2024-03-13 17:02:13 +00:00