Flashing a bricked or empty board
Last modified by Jakub Klama on 2021/10/25 19:18
Introduction
Flashing a board that doesn't have any valid boot code in QSPI and eMMC memories requires a JTAG probe capable of performing RCW override operation. In principle, this operation involves loading ATF and U-Boot into RAM and bootstrapping flash memories from there.
Currently, following JTAG probes are supported:
- CodeWarrior TAP
- Lauterbach TRACE32
Bare-board flashing scripts are available here: https://gitlab.conclusive.pl/devices/whle-ls1/whle-ls1
Flashing using TRACE32
- Connect JTAG probe using developer cable connector
- Open scripts/lauterbach/recovery.cmm script in TRACE32
- Run the script by clicking "Do" button
- After few seconds, U-Boot prompt should appear on the serial console
- From this point you can follow this guide to flash an image to eMMC: https://wiki.conclusive.pl/bin/view/WHLE-LS1/Installing%20Ubuntu%20image/
Flashing using CodeWarrior TAP
- Connect JTAG probe using developer cable connector
- Start CCS. It can be normally found at C:\Freescale\CCS\bin\ccs.exe
- Find CCS icon in the system tray, right-click on it and select "Show console"
- Determine IP address of your CWTAP. You can use findcc cwtaps command to do this.
- Load the recovery script and start recovery process as shown below. Replace the path shown below with path to the scripts/ccs/recovery.tclscript from whle-ls1 repository and IP address with the IP address of your CWTAP.
(bin) 71 % source C:/Users/Jakub/Documents/git/whle-ls1/scripts/ccs/recovery.tcl
(bin) 72 % recovery::recovery cwtap:10.0.3.121
Initializing CWTAP
Overriding Hardcoded RCW
Resetting to debug
(...)
(bin) 72 % recovery::recovery cwtap:10.0.3.121
Initializing CWTAP
Overriding Hardcoded RCW
Resetting to debug
(...)