Uboot
Update time:2017-12-22 Views:2796
1 Introduction
RK UBOOT is designed basing on the open UBOOT resource. It support boot loader mode and download mode. Boot loader mode is the normal mode of UBOOT. Device usually release under this mode. This mode mainly load the kernel from FLASH to SDRAM and run the Operating System. User need to flash the device under the download mode. Keep press the recover key on board and power on the board, it will enter download mode. This chapter mainly talk about UBOOT.
2 Compile
The compiling steps of UBOOT are similar to kernel compiling. Before compiling, you need to write the configuration to ".config",run the command:
make rk3288_config
If you need to modify the relative option, you can run:
make menuconfig
Run below command to Compile:
make
After compiling successfully, there will be a new file created at the follow path:
RK3288Loader_uboot_Vx.xx.xx.bin
3 Flash Image
Run the Flash tool, connect the Firefly to your computer through OTG wire. Keep press the recover key and then power on the board. After entering the Download Mode, you can flash the Loader.
If you flash the loader successfully, there will be some information output from the debug UART as the follow log shows:
#Boot ver: 2014-12-10#2.17
If the time shows the same as your compile time,it means you flash the loader successfully.
4 Enter UBOOT command mode
Since Firefly is mainly used for development, there are default 1 second countdown before running the Operating System. During the 1 second, any input from the debug UART can make the UBOOT enter the command mode. If you need to set the UBOOT doesn’t enter the command mode default, you can edit the file:U-boot/include/configs/rk32plat.h Change the code
#define CONFIG_BOOTDELAY 1
to
#define CONFIG_BOOTDELAY 0
5 Sencond level loader
There is no Nand Flash on Firefly, so generally don’t use the second level loader. Here is simply introduction for second level loader. RK3288Loader_uboot_Vx.xx.xx.bin is the first level loader mode, it only support eMMC. Combine RK3288Loader_uboot_Vx.xx.xx.bin with uboot.img is the second level loader. It support both eMMC and Nand Flash. You need to add codes in the rk32xx.h file to configure second loader as below.
#define CONFIG_SECOND_LEVEL_BOOTLOADER
After that, remake the UBOOT and the following file will be created.
RK3288Loader_uboot_Vx.xx.xx.bin uboot.img
Then you can flash these two files to Firefly.