i.MX25 SODIMM PC Windows CE
This page guides though Windows CE loading and flashing procedure. Advanced ToolKit Platform is used during this process while running on Windows XP operating system. Newer version of Windows OP (including Windows 10) are supported utilizing CEDownloader program.
Preparing the host computer
Installing Advanced ToolKit
The Advanced ToolKit package can be obtained from download section. Unpack and install the executable file FSL_ATK_TOOL_WINS_STD_INSTALL_1_70.exe. This package also contains detailed documentation concerning the program usage.
PC reboot after installation is not required. Open and run the program.
Initilization of USB driver
During the install procedure, the USB drivers are installed automatically. To verify that the driver is ready for usage, plug in the board using USB mini cable and navigate to the Device Manager. When the hardware is attached to the computer properly, device named Jungo appears in the list:
800px
Note: In case the USB driver was not installed successfully, it can be loaded manually by starting wd_install_4NT.bat batch file located in <TOOL_INSTALL_PATH>/windriver/ directory. The same folder also contains bat file wd_uninstall_4NT.bat for uninstalling the driver. Older version of the USB driver can also be uninstalled using the toolkit utility.
Preparing the development board
Serial Boot option selected by H902 (BOOTMODE) jumper is required. To do so use a link to connect pins 2 and 3:
Serial Boot | Direct Boot |
At this moment i.MX25 SODIMM PC - Development kit will not boot from the stored binary but wait in the serial mode. Connect the board and the host computer with USB mini cable. Power on the board.
Configuring Advanced ToolKit feature
Start Advanced ToolKit program. Upon start configure the setting following this example:
600px
Configurations required for i.MX25 SODIMM PC - Development kit:
- Select i.MX25_TO1.1 as the CPU option
- Choose Custom Initial File for memory initiation. Files prepared for i.MX25 SODIMM PC Module are located within the feature package
- Select USB option as the host communication channel
- Leave 'Bypass the settings' unchecked otherwise the current settings will be ignored
Click Next to finish the configuration. Advanced ToolKit dialog window is shown only if the development kit was connected correctly and the communication was established.
Flashing details and modes of operation
All the program possibilities to communicate with the board can be accessed in Flash tool section. This toolkit enables images to be downloaded, programmed, dumped or erased
Select Flash Tool option and continue with Go button:
600px
Upon opening the following screen is displayed:
600px
This working environment consists of multiple options. These values are especially important for i.MX25 SODIMM PC - Development kit setup:
- Operation Type selects four actions to be performed. Additional four check boxes further customize the operation. Two of them are important during programming:
- BI Swap is the option used for Windows Embedded CE images
- BBT is chosen in case of Linux images to be flashed
- Flash Model field determines supported Flash memories:
- NAND memories with the starting address to be 0x00000000
- MMC/SD devices with the available space to start at 0x00000000
- Image Field chooses a file for programming, downloading or dumping
All options are described in the table below:
Section | Option | Description |
---|---|---|
Operation type | Download | Downloads the image to the address specified, and then executes directly at the
downloaded address. |
Dump | Dumps a selected area of Flash device to a file. | |
Program | Programs a selected area of Flash from a file. | |
Erase | Erases a selected area of Flash. | |
BI Swap | Swaps Bad block identifier data, which is one solution for Bad block identifier data in the case that Nand Flash is incompatible with Nand Flash Controller. | |
BBT | Bad block Table, which is the table recording all bad block information. | |
Interleave | The are two kind of access mode when they are multiple nand flash chips on board, for example, 4 chips on board. | |
LBA | Logic Block Address, which indicates that the input address is a logic block address if it is checked. This option is only used on wince platform, for Linux, it should be ignored. | |
Read Back Check | Comparing the programmed data with original data in programming process will not be done to speed up the programming speed if this option is un-checked. The option will be visible only when programming option is selected. By default, this option is checked. | |
Flash Device | Flash Model | Click the down arrow to select the Flash type for the associated board when the Program, Dump, or Erase Flash operations are selected. |
Flash Lib | Device program running on the board that handles the communication with the PC host through the protocol to program/dump/erase the flash. | |
Operation Settings | Address | The address in the physical memory of the target board where the operation will start. |
Size | Size in bytes for erase and dump operations. | |
Image | Image file | For downloading operations, indicates the image to be downloaded to RAM. For Flash operations, indicates the image to be downloaded to Flash. For dumping operations, indicates the file that is used to store the dumped content. |
Process | Progress bar | Displays the completed percent of the selected operation. |
Information Log | Displays the execution log. |
Storage media partitioning
Note: Make sure that all the valuable information were downloaded prior the programming as the flashing procedure also consists of erasing the memory.
Windows CE
Windows CE system uses following partitioning. Bad blocks are handled using BI Swap option.
Address | Size | File | Note |
---|---|---|---|
0x0000 0000 | 0x0000 0800 | Directb.nb0 | First stage bootloader |
0x0018 0000 | 0x0004 0000 | Eboot.nb0 | Second stage bootloader |
0x0028 0000 | 0x0200 0000 | NK.nb0 | Windows CE |
0x0228 0000 | - | Bootloader environment + Persistent storage |
Linux
Linux based systems (including Android) use BBT option to handle bad memory blocks. Storage media is partitioned in this format:
Address | Size | File | Note |
---|---|---|---|
0x0000 0000 | 0x0004 0000 | Barebox.bin | Kernel bootloader |
0x0004 0000 | 0x0002 0000 | Bootloader | Environment |
0x0006 0000 | 0x002A 0000 | zImage.bin | Linux kernel |
0x0030 0000 | - | rootfs.bin | Root filesystem |
Flashing images
Flashing the first stage of the bootloader on address 0x00000000:
600px
Flashing the second stage of the bootloader on address 0x00180000:
600px
Windows CE image is flashed on address 0x00280000:
600px
After all three images were programmed successfully, turn off the board and change the H902 jumper (BOOTMODE) to select direct boot. Change the jumper link to connect pins 1 and 2 together.
Open a terminal session on the computer with these settings:
- Speed (baud): 115200
- Data bits: 8
- Stop bits: 1
- Parity: None
- Flow control: None
Turn on the board and press [Space bar] to stop Windows CE booting. (Boot delay is set to 3 seconds for fresh binaries.) As booting device is disabled by default, choosing NK from NAND as boot source is required. This is done by pressing number [5]. Additional configuration like MAC address or network settings can be altered here as well.
600px
After all the options were setup, save these settings by pressing [S]. Pressing [L] or resetting the board launches store images.