* Replace old BLOCK_SIZES with definitions of the blocks themselves
The actual block definitions only exist within Python classes so this
commit uses PyO3 to import the esptool.py eFuse block definitions and
generates arrays of the length and read address of each eFuse block.
We need the actual read address here rather than using the old offset
method because not all eFuse blocks are sequential. (On ESP32 the block
0 read registers are followed by the block 0 write registers.)
* xtask: Move efuse generator behind a feature
This prevents Python being necessary to build the xtask binary for other
purposes.
* feat: Initial test
* feat: Initial HIL tests in xtask
* refactor: End test if possible before timeout
* rebase
* Add checking for output from monitor
* CI: use xtask command instead of bash scripts
* clippy
* help find cargo
* Try increase duration for failing test
* remove bash tests
* reviews
* simplify
* Add a local_espflash flag to allow running espflash without re-building (CI) and re-building (locally)
* reviews
---------
Co-authored-by: Sergio Gasquez <sergio.gasquez@gmail.com>
* fix: Only change baud if neccesary
* feat: Only change baudrate if required
* docs: Udpate changelog
* test: Add high baudrate test
* feat: Increase timeout
* Create the `xtask` package
* Implement and xtask subcommand to generate eFuse field definitions from YAML files
* Generate eFuse field definitions
* Update `target` module to provide new eFuse reading API
* All non-problematic chips working with new eFuse API
* ESP32 is now working
* ESP32-S2 is now (mostly) working
* Very necessary change :)
* Clean up the mess I made of the imports
* Address clippy lints
* Update `CHANGELOG.md`
* Perform fewer raw eFuse field reads for ESP32
* Address review comment regarding `xtask` package
* Verify that `xtask` package builds in CI
* Fix block offset calculation
* Add the ability to create a `Chip` from its corresponding chip ID
* Attempt to detect chip using security info first, and use magic value if this fails
* Update timeouts in HIL workflow
* Update `CHANGELOG.md`
* Increase more timeouts for HIL
* feat: Update the way we pad bins
* tests: Add HIL test for writting bins
* ci: Fix timeouts
* test: Fix HIL write-bin test
* docs: Update changelog
* docs: Remove outdate file
* feat: Avoid vec allocation
* Enable serialport for cli through its feature
* Add flashing feature, disable feature-specific dependencies
* Make strum optional
* Make toml optional
* Oops
* Changelog
* Merge flashing back into serialport
* Remove rppal mention
* Move things back
* Only enable miette/fancy for the CLI
* feat: Initial HIL test
* ci: Use esp-hal example instead of themplate
* ci: Expand the matrix to cover all targets
* feat: Update ESPFLASH_PORT
* feat: Check that it flashed properly
* feat: Add asserts to the board-info check
* ci: Enable other targets
* ci: Update flash test
* ci: Avoid building espflash on self-hosted-runner
* feat: Add non-interactive mode for monitoring
* ci: Add erase/read flash test
* ci: Add save-image/write-bintest
* chore: Code cleanup
* ci: Enable C2
* chore: Code cleanup
* ci: Update esp32c2 hosted runner name
* ci: Avoid building test apps
* docs: Update changelog
* Adopt fork of gha-ubuntu-cross with apt update fix.
* Fix new clippy warning. We really do want an array with a single Range member.
* Update to better fix for gha-ubuntu-cross
* Avoid updating clap to newer minor versions
* Resolve incorrect_partial_ord_impl_on_ord_type clippy error
---------
Co-authored-by: Dániel Buga <bugadani@gmail.com>