1How to Update U-Boot on pico-imx6q/dl boards 2-------------------------------------------- 3 4Required software on the host PC: 5 6- UUU: https://github.com/NXPmicro/mfgtools 7 8Build U-Boot for pico: 9 10$ make mrproper 11$ make pico-imx6_defconfig 12$ make 13 14This generates the SPL and u-boot-dtb.img binaries. 15 161. Loading U-Boot via USB Serial Download Protocol 17 18Note: This method is convenient for development purposes. 19If the eMMC has already a U-Boot flashed then the user can 20go to step 2 below in order to update U-Boot. 21 22Put pico board in USB download mode (Refer to the following link for details: 23https://www.technexion.com/support/knowledgebase/boot-configuration-settings-for-pico-baseboards/). 24 25Connect a USB to serial adapter between the host PC and pico. 26 27Connect a USB cable between the OTG pico port and the host PC. 28 29Open a terminal program such as minicom. 30 31Copy SPL and u-boot-dtb.img to the uuu folder. 32 33Load the U-Boot via USB: 34 35$ sudo ./uuu -v uuu_script 36 37where uuu_script contains the following: 38 39SDP: boot -f SPL 40SDPU: write -f u-boot-dtb.img -addr 0x10000000 41SDPU: jump -addr 0x10000000 42 43Then U-Boot starts and its messages appear in the console program. 44 45Use the default environment variables: 46 47=> env default -f -a 48=> saveenv 49 502. Flashing U-Boot into the eMMC 51 52The default U-Boot environment expects the use of eMMC user 53partition. To ensure we are using the proper eMMC partition for boot, 54please run: 55 56=> mmc partconf 0 0 0 0 57 58Next, run the DFU agent so we can flash the new images using dfu-util 59tool: 60 61=> dfu 0 mmc 0 62 63Flash SPL and u-boot-dtb.img into the eMMC running the following commands on a PC: 64 65$ sudo dfu-util -D SPL -a spl 66 67$ sudo dfu-util -D u-boot-dtb.img -a u-boot 68 69Remove power from the pico board. 70 71Put pico board into normal boot mode. 72 73Power up the board and the new updated U-Boot should boot from eMMC. 74