Hi Brian
To elaborate on what Victor refers to, the process involves two things :
- initializing your board and DDR via JTAG
- running a code (e.g u-boot) out of RAM that is now initialized and
use it to program your QSPI flash.
As far as the JTAG adaptor design is concerned a standard design
should have no limitation on the above steps.
For the step one above, you might ask your JTAG probe vendor (e.g j-link)
and their support team to provide you an init script. We did something
similar for BDI3000 and iMX6 and documented here :
https://community.nxp.com/docs/DOC-106493
You would need something similar for iMX7. Then you would have to
use an app or bootloader (e.g. u-boot) that you load and run out of
RAM via your JTAG probe. You can then utilize the flash programming
features of the bootloader (if the controller and your flash type is supported)
to program your flash and recover your board.
There might also be JTAG debug probes that provide programming the
QSPI flash as part of their firmware. You would still need an init script
to initialize your board though.
Hope this gives some insight.
Regards
Sinan Akman