Restoring the FDI3250 boot loaders

Document created by jorge_plascencia Employee on Apr 25, 2016Last modified by jorge_plascencia Employee on Apr 27, 2016
Version 3Show Document
  • View in full screen mode

Most of the procedures on this web require the kickstart loader and S1L to initialize the board and load u-boot. The procedure here explains the process of installing the kickstart loader and S1L onto a Future Designs LPC3250 board.

_If you already have S1L installed on your board, you can update S1L from within S1L with the procedure on the LPC32x0BoardFDI3250bootloadersS1LUpdate page.

The Future Designs board included a LPC Edition of the j-link Lite JTAG debugger. This debugger will be initially used to burn the kickstart loader and S1L into the board's NAND FLASH. To use the debugger, first download the j-link software from Segger's website at http://www.segger.com/cms/jlink-software.html. Install the software per the documentation and verify that the debugger can communicate with the board .J-link Commander doesn't requires a license to run with the LPC Edtition.

Restoring the kickstart loader and S1L is a 2-step process. The kickstart loader is restored first and then S1L is restored. The JTAG debugger and the J-Link Commander software are used to transfer the application and the burner images (which is used to program the application into NAND FLASH).

 

Kickstart loader program

Step 1: Download the pre-built boot software and restoration images from the Resources page.

Step 2: Extract the files on a Windows based PC

Step 3: Connect a serial cable between the Future Designs RS232 serial connector and the PC

Step 4: Connect the JTAG debugger to the board and start J-Link Commander.

Step 5: Increase the JTAG clock rate using the 'speed adaptive' command and then reset the board using the 'rx 0' command. Remap IRAM to address 0x0 using the 'w4 0x40004014, 0x1' command.

Step 6: Copy the burner_kickstart_nand_large_block_jtag_rvw.bin, kickstart_nand_large_block_rvw.bin, s1l_from_kick_rvw.bin, and burner_s1app_nand_large_block_jtag_rvw.bin files to the j-link application directory.

NOTE: The pre-built binaries may have slightly different names than those listed in steps 6 to 10, depending on the tool used to build the binaries. If the binaries were build with GNU instead of Realview, the 'rvw' field in each name will contain the 'gnu' identified instead. Change the filenames as necessary for you binaries you have.

Step 7: Load the burner_kickstart_nand_large_block_jtag_rvw.bin file using the 'loadbin burner_kickstart_nand_large_block_jtag_rvw.bin, 0x0' command. Use the 'setPC 0x0' command to set the ARM Program Counter to address 0x0. Then type 'go' to start the program. On the terminal window, the 'Load Kickstart into memory using JTAG.' message will appear. Type 'halt' in the j-link windows to stop the program.

Step 8: Load the 'kickstart_nand_large_block_rvw.bin' file using the 'loadbin kickstart_nand_large_block_rvw.bin, 0x8000' command. Then type 'go' to finish the programming of the kickstart loader. After a few seconds, programming should complete with the following messages on the terminal.

Load Kickstart into memory using JTAG.
Calculating Kickstart size ...
Burning Kickstart ...
Formatting blocks...
Format complete

Writting kickstart into flash...
Verifing data......Successfully
NAND flash is programmed Successfully

 

S1L program

Step 9: Load the burner_s1app_nand_large_block_jtag_rvw.bin file using the 'loadbin burner_s1app_nand_large_block_jtag_rvw.bin, 0x0' command. Use the 'setPC 0x0' command to set the ARM Program Counter to address 0x0. Then type 'go' to start the program. On the terminal window, the 'Load S1L into memory using JTAG.' message will appear. Type 'halt' in the j-link windows to stop the program.

Step 10: Load the s1l_from_kick_rvw.bin file using the 'loadbin s1l_from_kick_rvw.bin, 0x8000' command. Then type 'go' to finish the programming of the kickstart loader. After a few seconds, programming should complete with the following messages on the terminal.

Load S1L into memory using JTAG.
Calculating S1L size ...
Burning S1L ...
Formatting blocks...
Format complete
Writting S1 image into flash...
NAND flash is programmed Successfully

The complete setup and programming procedure is shown below:

jlc1.JPG

Power off the board and disconnect the JTAG debugger. Power on the board and S1L should now boot.

FDI3250 Kickstart v1.00
NAND Flash Initialized
Running Stage 1 Loader ...
Using default system configuration

Future Designs, Inc. DK-xTS-LPC3250 Board
Build date: Jul 20 2010 17:15:04
Autoboot in progress, press any key to stop

Attachments

    Outcomes