Difference between revisions of "Recovery U-Boot Image (Lizard)"

From DAVE Developer's Wiki
Jump to: navigation, search
(update to match the automatic recovery script)
Line 1: Line 1:
 +
== Introduction ==
 +
This article describe how to recover a corrupted U-Boot image on Lizard NOR Flash using a Windows host machine.
 +
 +
In brief user needs to:
 +
* configure Lizard SOM to boot over serial port instead of on board NOR flash
 +
* download and prepare serial communication tools
 +
* use those tools to download first stage bootloader and U-Boot over UART
 +
* use this U-Boot to update NOR flash
 +
This assume that you're using a standard  [[Lizard Embedded Linux Kit (LELK)|LELK]] hardware and software.
  
 
== Tool Preparation ==
 
== Tool Preparation ==
* Download the zip archive lizard-Recovery.zip and extract it  
+
* Download the [[mirror:lizard/recovery/lizard-recovery.zip|lizard-recovery.zip archive]] and extract it on your Windows PC
 +
* If needed, replace the u-boot.bin file with your custom binary or download the latest LELK binary from [[mirror:lizard|DAVE Embedded Systems mirror]]
 
* Open the command prompt and go inside the folder where you extracted the recovery file
 
* Open the command prompt and go inside the folder where you extracted the recovery file
 
* Launch the utility with the serial port number as the argument
 
* Launch the utility with the serial port number as the argument
 
<pre>
 
<pre>
 
C:\Users\Desktop\lizard-Recovery\lizard> .\uart-recovery.bat COM1
 
C:\Users\Desktop\lizard-Recovery\lizard> .\uart-recovery.bat COM1
</pre>
+
</pre>The tools is now waiting for the board to wakeup{{InfoBoxTop}}
{{InfoBoxTop}}
 
 
{{AppliesToLizard}}
 
{{AppliesToLizard}}
 
{{AppliesToLizardEVB-Lite}}
 
{{AppliesToLizardEVB-Lite}}
 
{{InfoBoxBottom}}
 
{{InfoBoxBottom}}
 
== Board Preparation ==
 
== Board Preparation ==
* Power down the board and set the deep switch 2 1 configuration.
+
* Power off the board and set the dip switch <code>S2.2 ON</code> to select serial boot
* Connect the serial console to the <ode>PORT2 of your board.
+
* Connect '''UART2''' to your host PC
* Turn on the board.
+
* Turn on the board
  
 
== Flashing the firmware ==
 
== Flashing the firmware ==
 +
Once the board boot up, after a couple of seconds of delay, the recovery procedure will start.
  
If everything was set correctly, this message should appear on your screen
+
The script is totally automated and, in case of success, this is the output:
<pre>
 
 
 
ASIC ID Detected.
 
 
 
Sending 2ndFile:
 
 
 
Downloading file: 100.000% completed(15232/15232 bytes)
 
 
 
File download completed.
 
 
 
In attesa da 0 secondi. Premere un tasto per continuare...
 
 
 
Downloading file: 100.000% completed(218792/218792 bytes)
 
 
 
File Download completed
 
 
 
Open Serial Console and write this command
 
 
 
.
 
 
 
.
 
 
 
"=> mw.w ${buf} 0xFF 0x40000; loadb ${buf} 115200"
 
 
 
.
 
 
 
.
 
 
 
CLOSE Serial Console !!!!!!
 
</pre>
 
{{ImportantMessage|text=Don't close the '''command prompt'''}}
 
 
 
Now it is necessary to open a serial console for example Putty and type the following command
 
<pre>
 
mw.w ${buf} 0xFF 0x40000; loadb ${buf} 115200
 
</pre>
 
 
 
Now close the serial console and press <code>Enter</code> inside the command prompt.
 
 
 
A new download will start followed by some instruction messages..<pre>
 
Downloading file: 100.000% completed(218792/218792 bytes)
 
File Download completed
 
.
 
.
 
Open Serial Console and write this command
 
"=> protect off 0x08000000 +40000;era 0x08000000 +40000;cp.b ${buf} 0x08000000 0x40000"
 
"=> res"
 
.
 
.
 
.
 
</pre>
 
When the  download is finished, you need to reopen the serial console and type this command
 
<pre>
 
protect off 0x08000000 +40000;era 0x08000000 +40000;cp.b ${buf} 0x08000000 0x40000
 
res
 
</pre>
 
Now the board will restart and, if everything went ok, you should see the U-Boot command line prompt.
 

Revision as of 09:29, 16 March 2018

Introduction[edit | edit source]

This article describe how to recover a corrupted U-Boot image on Lizard NOR Flash using a Windows host machine.

In brief user needs to:

  • configure Lizard SOM to boot over serial port instead of on board NOR flash
  • download and prepare serial communication tools
  • use those tools to download first stage bootloader and U-Boot over UART
  • use this U-Boot to update NOR flash

This assume that you're using a standard LELK hardware and software.

Tool Preparation[edit | edit source]

  • Download the lizard-recovery.zip archive and extract it on your Windows PC
  • If needed, replace the u-boot.bin file with your custom binary or download the latest LELK binary from DAVE Embedded Systems mirror
  • Open the command prompt and go inside the folder where you extracted the recovery file
  • Launch the utility with the serial port number as the argument
C:\Users\Desktop\lizard-Recovery\lizard> .\uart-recovery.bat COM1

The tools is now waiting for the board to wakeup

Info Box
Lizard.jpg Applies to Lizard
Lizard-evb-02.png Applies to LizardEVB-Lite

Board Preparation[edit | edit source]

  • Power off the board and set the dip switch S2.2 ON to select serial boot
  • Connect UART2 to your host PC
  • Turn on the board

Flashing the firmware[edit | edit source]

Once the board boot up, after a couple of seconds of delay, the recovery procedure will start.

The script is totally automated and, in case of success, this is the output: