Difference between revisions of "BootStrap"

From ArmadeusWiki
Jump to: navigation, search
(Introduction)
(Launch)
Line 19: Line 19:
 
===Launch===
 
===Launch===
  
Go inside the uboot_recover folder (''software/uboot_recover/'') and launch
+
*Go inside the ''software/uboot_recover/'' directory and launch:
 
<pre class="host">
 
<pre class="host">
$ python apf9328_recover.py   or python apf27_recover.py
+
$ python apf9328_recover.py
 +
</pre>
 +
or  
 +
<pre class="host">
 +
$ python apf27_recover.py
 
</pre>
 
</pre>
  
*The tool will ask you to specify the serial port on which the board is connected. Under Linux please use /dev/ttySx and under Windows use COMx
+
*The tool will ask you to specify the serial port on which the board is connected. Under Linux please use ''/dev/ttySx'' or ''/dev/ttyUSBx'' and under Window$ use COMx.
 
*Then the size of the SDRAM has to be indicated. Default value is 16Mo for the APF9328 and 64Mo for the APF27.
 
*Then the size of the SDRAM has to be indicated. Default value is 16Mo for the APF9328 and 64Mo for the APF27.
*The tool will then try to synchronize with the i.MX:
+
*The tool will then try to synchronize with the i.MX (on APF9328 only). When you see that message reset your board:
 
<pre class="host">
 
<pre class="host">
 
Re-synchronizing...
 
Re-synchronizing...
Line 34: Line 38:
 
Please reset your board in bootstrap mode !
 
Please reset your board in bootstrap mode !
 
</pre>
 
</pre>
When you see that message reset your board.
 
  
If nothing happens, verify your bootstrap jumper is put and try to reset your board.
+
{{Note|If nothing happens, verify your bootstrap jumper is put and try to reset your board.
At last, check your serial port device is the right one and don't forget to quit all kermit/minicom instances before launching uboot_recover tool !
+
At last, check your serial port device is the right one and don't forget to quit all kermit/minicom instances before launching uboot_recover tool !}}
 
*Then you can specify whether the environment variables (IP, your special scripts...) have to be erased or not. If your board does not start anymore after a first uboot_recover, please responds by 'y'
 
*Then you can specify whether the environment variables (IP, your special scripts...) have to be erased or not. If your board does not start anymore after a first uboot_recover, please responds by 'y'
  
The following messages are then displayed:
+
*The following messages are then displayed (on APF9328):
 
<pre class="host">
 
<pre class="host">
 
loading file ramprogrammer.bin. Please wait...
 
loading file ramprogrammer.bin. Please wait...
Line 51: Line 54:
 
.
 
.
 
uBoot successfully recovered !
 
uBoot successfully recovered !
 +
</pre>
 +
 +
* The following messages are then displayed (on APF27):
 +
<pre class="host">
 +
run flash_uboot
 +
device 0 offset 0x0, size 0xa0000
 +
nand_unlock: start: 00000000, length: 655360!
 +
NAND flash successfully unlocked
 +
 +
NAND erase: device 0 offset 0x0, size 0xa0000
 +
OK
 +
 +
NAND write: device 0 offset 0x0, size 0xa0000
 +
655360 bytes written: OK
 +
NAND flash successfully locked
 +
device 0 offset 0xa0000, size 0x7f60000
 +
nand_unlock: start: 000a0000, length: 133562368!
 +
NAND flash successfully unlocked
 +
Flashing of uboot succeed
 +
BIOS>uBoot successfully recovered !
 
</pre>
 
</pre>
  

Revision as of 17:21, 21 September 2009

Instructions to use the Armadeus U-Boot recovering utility

Introduction

The uboot_recover tool is a Python piece of code that allows you to automatically install a new U-Boot from scratch or to recover it in case of failure. uboot_recover requires the python and pyserial packages to be installed on your PC:

$ sudo apt-get install python-serial

This utility communicates with the i.MXL/i.MX27 processor while in bootstrap mode (See i.MXL/i.MX27 reference manual for more informations).
To enter the bootstrap mode, you have to put the bootstrap jumper and reset your Armadeus board:

On the APF27Dev

Launch

  • Go inside the software/uboot_recover/ directory and launch:
$ python apf9328_recover.py

or

$ python apf27_recover.py
  • The tool will ask you to specify the serial port on which the board is connected. Under Linux please use /dev/ttySx or /dev/ttyUSBx and under Window$ use COMx.
  • Then the size of the SDRAM has to be indicated. Default value is 16Mo for the APF9328 and 64Mo for the APF27.
  • The tool will then try to synchronize with the i.MX (on APF9328 only). When you see that message reset your board:
Re-synchronizing...
Please reset your board in bootstrap mode !
Please reset your board in bootstrap mode !
Please reset your board in bootstrap mode !
Please reset your board in bootstrap mode !
Note Note: If nothing happens, verify your bootstrap jumper is put and try to reset your board.

At last, check your serial port device is the right one and don't forget to quit all kermit/minicom instances before launching uboot_recover tool !

  • Then you can specify whether the environment variables (IP, your special scripts...) have to be erased or not. If your board does not start anymore after a first uboot_recover, please responds by 'y'
  • The following messages are then displayed (on APF9328):
loading file ramprogrammer.bin. Please wait...
284 octets
Loading file u-boot.bin. Please wait...
150304 octets
loading file flashprogrammer.bin. Please wait...
668 octets
Flashing please wait...
.
uBoot successfully recovered !
  • The following messages are then displayed (on APF27):
run flash_uboot
device 0 offset 0x0, size 0xa0000
nand_unlock: start: 00000000, length: 655360!
NAND flash successfully unlocked

NAND erase: device 0 offset 0x0, size 0xa0000
OK

NAND write: device 0 offset 0x0, size 0xa0000
 655360 bytes written: OK
NAND flash successfully locked
device 0 offset 0xa0000, size 0x7f60000
nand_unlock: start: 000a0000, length: 133562368!
NAND flash successfully unlocked
Flashing of uboot succeed
BIOS>uBoot successfully recovered !

Links

http://www.armadeus.com