Building and Self-Updating U-Boot on the STM32F4 System-On-Module |
![]() |
The default U-Boot configuration is a capable Linux bootloader so typically our customers do not require re-building and re-installing U-Boot. However, certain projects still do require customizations to the U-Boot firmware, which implies making changes to the U-Boot code, rebuilding the U-Boot binary and then updating it on the STM32F4 module. The full U-Boot source for the STM32F4 SOM is included in the software distribution available from the Emcraft web site. Refer to the u-boot/ sub-directory in the software distribution tree. The key board specific-configuration files for the STM32F4 SOM are as follows:
Run the folowing step-wise procedure in order to build U-Boot for the STM32F4 SOM:
-bash-3.2$ . ./ACTIVATE.sh -bash-3.2$ cd u-boot -bash-3.2$ make distclean -bash-3.2$ make -s The resultant image will be u-boot.bin in the U-Boot top directory (i.e. the same directory where you have run the make command from). The U-Boot command line interface provides a special command that can be used to self-upgrade the U-Boot image on the running target. Before you can run this command, you need to load an upgrade U-Boot binary to the target. Typically, you download images from a TFTP host (refer to Loading Linux images via Ethernet and TFTP), however in absence of an Ethernet link in your specific target configuraiton, you can also load images over serial UART (refer to Loading Linux Images over UART). The following session is an illustration of the U-Boot self-upgrade procedure:
STM32F4X9-SOM> tftp psl/stmf4/u-boot.bin STM32F4X9-SOM> cptf 0x08000000 ${loadaddr} ${filesize} 1 Note that the self-upgrade sequence is a dangerous operation. You must be sure that you load and install a functional U-Boot binary, which is always a tricky thing when you develop customisations to U-Boot. Make sure you have a JTAG programmer handy that you will be able to use in order to re-install the release U-Boot binary in case you have programmed a wrong U-Boot image to the on-chip Flash. The latest U-Boot binary is always available from STM32F4 System-On-Module Release Materials. |