Flashing Beagle Board using EVMFlash.exe

This procedure will write XLDRNAND and EBOOTNAND to Flash NAND in a single step


Install evmflash3530v121bin.exe

It's located in

%_WINCEROOT%\platform\S1SDKOMAP_DVSDK_OMAPWINCE_EA_06_12_03\DVSDK\6.12.03\Tools\EVMFlashTool_vMicronNAND


Connect Beagle Board via USB cable to the host.

Reboot the target while holding the user button.

When prompted to install USB driver, select the EVMFlash driver located in the usbdrvwindows folder where you installed EVMFlash.

In my case it was

C:\Program Files\Texas Instruments\EVMFlash3530_v1.2\usb_drv_windows


Start EVMFlash.exe

Change link type to USB, mode to "BOOT ROM"

Select the download icon in the tree on the left pane.
On the right pane select the Download tab.
Device Type should be set for "NAND".
Select the "<< Add File" button.
Navigate to your retail Flat release directory, and select "TIEVM3530-nand.raw".

In my case it was

D:\WINCE600\release\TI_EVM_3530_CEBASE_tiny_kernel\ARMV4I\retail\


Ensure "Erase Entire Flash", and "Verify Download" are checked. Nothing else is checked.

Click download.

If you debug output enabled you should see

Download [10:54:02]: [00] Initiating OMAP ROM code communication
Download [10:54:02]: [00] Opening UART/USB connection
Download [10:54:02]: [00] Waiting for target to reset


Reboot the target while holding the user button.


Once the download has completed connect your terminal program to the target's serial port.

Once connected reset the target, and monitor the output

Texas Instruments Windows CE NAND X-Loader for EVM 3530
Built Nov 17 2009 at 16:38:00
Version 6.12.03
..
Jumping to bootloader

Microsoft Windows CE Bootloader Common Library Version 1.4 Built Nov 17 2009 16:
35:35

Texas Instruments Windows CE EBOOT for Mistral OMAP EVM, Built Nov 17 2009 at 16
:37:45
EBOOT Version 1.1, BSP 6.12.03

TI OMAP3530 Version 0x3b7ae02f (ES3.0)
TPS659XX Version 0x50 (ES3.1)
System ready!
Preparing for download...
INFO: Predownload....
Checking bootloader blocks are marked as reserved (Num = 14)
..............
WARN: Boot config wasn't found, using defaults
INFO: SW4 boot setting: 0x0f
IsValidMBR: MBR sector = 0x380 (invalid MBR)
OpenPartition: Invalid MBR.  Cannot open existing partition 0x20.
OS partition does not exist!!
Formatting flash...
Enter LowLevelFormat [0x0, 0x7ff].
Erasing flash block(s) [0x0, 0x7ff] (please wait): EraseBlocks: preserving reser
ved block (0x0)
EraseBlocks: preserving reserved block (0x1)
EraseBlocks: preserving reserved block (0x2)
EraseBlocks: preserving reserved block (0x3)
EraseBlocks: preserving reserved block (0x4)
EraseBlocks: preserving reserved block (0x5)
EraseBlocks: preserving reserved block (0x6)
EraseBlocks: preserving reserved block (0x7)
EraseBlocks: preserving reserved block (0x8)
EraseBlocks: preserving reserved block (0x9)
EraseBlocks: preserving reserved block (0xa)
EraseBlocks: preserving reserved block (0xb)
EraseBlocks: preserving reserved block (0xc)
EraseBlocks: preserving reserved block (0xd)
Done.
WriteMBR: MBR block = 0xe.
Done.

IsValidMBR: MBR sector = 0x380 (valid MBR)
OpenPartition: Partition Exists=0x0 for part 0x20.
CreatePartition: Enter CreatePartition for 0x20.
LastLogSector: Last log sector is: 0x1fc7f.
CreatePartition: Start = 0x1, Num = 0x5fff.
Log2Phys: Logical 0x1 -> Physical 0x381
WriteMBR: MBR block = 0xe.
IsValidMBR: MBR sector = 0x380 (valid MBR)
OpenPartition: Partition Exists=0x0 for part 0xb.
CreatePartition: Enter CreatePartition for 0xb.
FindFreeSector: FreeSector is: 0x6000 after processing part 0x20.
CreatePartition: Num sectors set to 0x19b40 to allow for compaction blocks.
CreatePartition: Start = 0x6000, Num = 0x19b40.
WriteMBR: MBR block = 0xe.
Flash format complete!

>>> Forcing cold boot (non-persistent registry and other data will be wiped) <<<

Hit space to enter configuration menu 5...

--------------------------------------------------------------------------------
 Main Menu
--------------------------------------------------------------------------------
 [1] Show Current Settings
 [2] Select Boot Device
 [3] Select KITL (Debug) Device
 [4] Network Settings
 [5] Flash Management
 [6] Set Device ID
 [7] Save Settings
 [0] Exit and Continue

 Selection: 40V
Texas Instruments Windows CE NAND X-Loader for EVM 3530
Built Nov 17 2009 at 16:38:00
Version 6.12.03
..
Jumping to bootloader

Microsoft Windows CE Bootloader Common Library Version 1.4 Built Nov 17 2009 16:
35:35

Texas Instruments Windows CE EBOOT for Mistral OMAP EVM, Built Nov 17 2009 at 16
:37:45
EBOOT Version 1.1, BSP 6.12.03

TI OMAP3530 Version 0x3b7ae02f (ES3.0)
TPS659XX Version 0x50 (ES3.1)
System ready!
Preparing for download...
INFO: Predownload....
Checking bootloader blocks are marked as reserved (Num = 14)

WARN: Boot config wasn't found, using defaults
INFO: SW4 boot setting: 0x2f
IsValidMBR: MBR sector = 0x380 (valid MBR)
OpenPartition: Partition Exists=0x1 for part 0x20.

>>> Forcing cold boot (non-persistent registry and other data will be wiped) <<<

Hit space to enter configuration menu 5...
Hit space to enter configuration menu 4...
Hit space to enter configuration menu 3...
Hit space to enter configuration menu 2...
Hit space to enter configuration menu 1...
Invalid Ethernet chip ID (0xffffffff)!

--------------------------------------------------------------------------------
 Main Menu
--------------------------------------------------------------------------------
 [1] Show Current Settings
 [2] Select Boot Device
 [3] Select KITL (Debug) Device
 [4] Network Settings
 [5] Flash Management
 [6] Set Device ID
 [7] Save Settings
 [0] Exit and Continue

 Selection:

Last edited Nov 23, 2009 at 6:34 PM by joelw, version 4

Comments

nathasion Oct 6, 2010 at 7:30 AM 
Hi my friend,

Thanks for your article.

anyway little remark, you begin telling us how you are going to "write XLDRNAND and EBOOTNAND to Flash NAND in a single step", what supposes that you are with those 2 files. However, by the end of your article, you naturally tell us how to write "TIEVM3530-nand.raw" on the nand, what supposes you got such file.
My question is very simple, how did you get this file, which (at least in my case), is not produced by the build process...?

Thanks for help

Nathaniel