Difference between revisions of "CL-SOM-iMX7: U-Boot: Firmware Update"
Line 22: | Line 22: | ||
* Set common parameters: | * Set common parameters: | ||
<pre> | <pre> | ||
− | CL-SOM-iMX7 # setenv ubootsize | + | CL-SOM-iMX7 # setenv ubootsize 0xa0000; setenv loadaddr 0x80800000 |
</pre> | </pre> | ||
Latest revision as of 06:40, 3 December 2017
Contents
Introduction
The CL-SOM-iMX7 firmware consists of two components: Secondary Program Loader (SPL) and U-Boot, provided as a single U-Boot binary image cl-som-imx7-firmware. This article describes the firmware update process for CL-SOM-iMX7 system-on-module product.
Preliminary setup
- Make sure to power off the CL-SOM-iMX7 evaluation platform.
- Connect the host PC to the SBC-iMX7 base-board (connector P8) via the serial cable supplied with the evaluation kit.
- Start terminal emulation software on your PC with the following serial port settings:
Baud Rate Data Bits Stop Bits Parity Flow Control 115200 8 1 none none
- Turn on the CL-SOM-iMX7 evaluation system. The U-Boot boot-loader will start and a command prompt will be displayed.
If the boot settings of your CL-SOM-iMX7 are different than the default, you may need to press and hold Ctrl-C while turning the CL-SOM-iMX7 on, in order to get command prompt. |
Updating Firmware on the SPI flash
The firmware can be updated from an SD card, USB storage, or using network TFTP download. All methods are performed from the U-Boot command line and include following common steps:
- Loading binary image from the selected media to the CL-SOM-iMX7 DRAM
- Flashing image to the on-board SPI flash
Common preparation steps
- Set common parameters:
CL-SOM-iMX7 # setenv ubootsize 0xa0000; setenv loadaddr 0x80800000
Updating from SD card
- Copy the firmware binary image cl-som-imx7-firmware from U-Boot package for CL-SOM-iMX7 to the root directory of the SD card.
- Insert the MMC/SD card into the SD socket (P9) on the SBC-iMX7.
- Start the U-Boot MMC subsystem:
CL-SOM-iMX7 # mmc dev 0 CL-SOM-iMX7 # mmc rescan
- Check that the storage device is ready:
CL-SOM-iMX7 # ls mmc 0
- Load the firmware binary into the memory:
CL-SOM-iMX7 # load mmc 0 ${loadaddr} cl-som-imx7-firmware
- Proceed to Flashing images section
Updating from USB storage
- Copy the firmware binary image cl-som-imx7-firmware from U-Boot package for CL-SOM-iMX7 to the root directory of the USB storage device.
- Plug the USB storage to either port on the dual USB host connector P6 of the SBC-iMX7.
- Start the U-Boot USB subsystem:
CL-SOM-iMX7 # usb start
- Check that the storage device is ready:
CL-SOM-iMX7 # ls usb 0
- Load the firmware binary into the memory:
CL-SOM-iMX7 # load usb 0 ${loadaddr} cl-som-imx7-firmware
- Proceed to Flashing images section
Updating from TFTP server
- Setup a TFTP server
- Put the firmware binary image cl-som-imx7-firmware from U-Boot package for CL-SOM-iMX7 in the root directory of the TFTP server
- Setup U-Boot networking:
- for dynamic IP configuration:
CL-SOM-iMX7 # dhcp
- or for static IP configuration:
CL-SOM-iMX7 # setenv ipaddr <ip address>
- Setup the TFTP server ip address:
CL-SOM-iMX7 # setenv serverip <server ip>
- Download the firmware binary into the memory:
CL-SOM-iMX7 # tftpboot ${loadaddr} cl-som-imx7-firmware
- Proceed to Flashing images section
Flashing images
- Make U-Boot probe the on-board SPI flash:
CL-SOM-iMX7 # sf probe
- Erase the on-board SPI flash:
CL-SOM-iMX7 # sf erase 0 ${ubootsize}
- Write the firmware image into the on-board SPI flash:
CL-SOM-iMX7 # sf write ${loadaddr} 0 ${ubootsize}
- Reset the CL-SOM-iMX7 evaluation platform.
Default environment
It is recommended to set default environment after updating the U-Boot version:
CL-SOM-iMX7 # env default -a CL-SOM-iMX7 # saveenv