This is dependent on #2213 (Lattice ECP5 JTAG Support), as Codeberg/Forgejo don't support stacked PRs, this will look a bit weird until that one is merged
and this branch can be rebased on main.
Detailed description
This PR is an extension to the Lattice ECP5 platform to support doing direct device SRAM programming.
Where the initial Lattice ECP5 support (#2213) supported transparent SPI mode to directly program attached SPI flash, it didn't support doing "hot-loading" of a bitstream onto a device. This PR attempts to rectify that to allow for quicker iteration times.
My commit messages provide a useful short description of what the commits do
> [!IMPORTANT]
> This is dependent on #2213 (Lattice ECP5 JTAG Support), as Codeberg/Forgejo don't support stacked PRs, this will look a bit weird until that one is merged
> and this branch can be rebased on main.
## Detailed description
This PR is an extension to the Lattice ECP5 platform to support doing direct device SRAM programming.
Where the initial Lattice ECP5 support (#2213) supported transparent SPI mode to directly program attached SPI flash, it didn't support doing "hot-loading" of a bitstream onto a device. This PR attempts to rectify that to allow for quicker iteration times.
## Your checklist for this pull request
* [x] I've read the [Code of Conduct](https://codeberg.org/blackmagic-debug/blackmagic/src/CODE_OF_CONDUCT.md)
* [x] I've read the [guidelines for contributing](https://codeberg.org/blackmagic-debug/blackmagic/src/CONTRIBUTING.md) to this repository
* [x] It builds for hardware native (see [Building the firmware](https://codeberg.org/blackmagic-debug/blackmagic?tab=readme-ov-file#building-the-firmware))
* [x] It builds as BMDA (see [Building the BMDA](https://codeberg.org/blackmagic-debug/blackmagic?tab=readme-ov-file#building-black-magic-debug-app))
* [x] I've tested it to the best of my ability
* [x] My commit messages provide a useful short description of what the commits do
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?