11541d7a6SVanessa MaegimaHow to update U-Boot on pico-imx7d board 21541d7a6SVanessa Maegima---------------------------------------- 31541d7a6SVanessa Maegima 41541d7a6SVanessa MaegimaRequired software on the host PC: 51541d7a6SVanessa Maegima 61541d7a6SVanessa Maegima- imx_usb_loader: https://github.com/boundarydevices/imx_usb_loader 71541d7a6SVanessa Maegima 81541d7a6SVanessa MaegimaBuild U-Boot for pico: 91541d7a6SVanessa Maegima 101541d7a6SVanessa Maegima$ make mrproper 111541d7a6SVanessa Maegima$ make pico-imx7d_defconfig 121541d7a6SVanessa Maegima$ make 131541d7a6SVanessa Maegima 14*4cdeda51SFabio EstevamThis generates the SPL and u-boot.img binaries. 15*4cdeda51SFabio Estevam 16*4cdeda51SFabio Estevam1. Loading U-Boot via USB Serial Download Protocol 17*4cdeda51SFabio Estevam 18*4cdeda51SFabio EstevamNote: This method is convenient for development purposes. 19*4cdeda51SFabio EstevamIf the eMMC has already a U-Boot flashed with DFU support then 20*4cdeda51SFabio Estevamthe user can go to step 2 below in order to update U-Boot. 211541d7a6SVanessa Maegima 221541d7a6SVanessa MaegimaPut pico board in USB download mode (refer to the PICO-iMX7D Quick Start Guide 231541d7a6SVanessa Maegimapage 3) 241541d7a6SVanessa Maegima 251541d7a6SVanessa MaegimaConnect a USB to serial adapter between the host PC and pico. 261541d7a6SVanessa Maegima 271541d7a6SVanessa MaegimaConnect a USB cable between the OTG pico port and the host PC. 281541d7a6SVanessa Maegima 291541d7a6SVanessa MaegimaOpen a terminal program such as minicom. 301541d7a6SVanessa Maegima 31*4cdeda51SFabio EstevamCopy SPL and u-boot.img to the imx_usb_loader folder. 321541d7a6SVanessa Maegima 33*4cdeda51SFabio EstevamLoad the SPL binary via USB: 341541d7a6SVanessa Maegima 35*4cdeda51SFabio Estevam$ sudo ./imx_usb SPL 36*4cdeda51SFabio Estevam 37*4cdeda51SFabio EstevamLoad the u-boot.img binary via USB: 38*4cdeda51SFabio Estevam 39*4cdeda51SFabio Estevam$ sudo ./imx_usb u-boot.img 401541d7a6SVanessa Maegima 411541d7a6SVanessa MaegimaThen U-Boot starts and its messages appear in the console program. 421541d7a6SVanessa Maegima 431541d7a6SVanessa MaegimaUse the default environment variables: 441541d7a6SVanessa Maegima 451541d7a6SVanessa Maegima=> env default -f -a 461541d7a6SVanessa Maegima=> saveenv 471541d7a6SVanessa Maegima 48*4cdeda51SFabio Estevam2. Flashing U-Boot into the eMMC 49*4cdeda51SFabio Estevam 50619fc167SOtavio SalvadorRun the DFU agent so we can flash the new images using dfu-util tool: 511541d7a6SVanessa Maegima 52619fc167SOtavio Salvador=> dfu 0 mmc 0 531541d7a6SVanessa Maegima 54*4cdeda51SFabio EstevamFlash SPL and u-boot.img into the eMMC running the following commands on a PC: 55619fc167SOtavio Salvador 56619fc167SOtavio Salvador$ sudo dfu-util -D SPL -a spl 57619fc167SOtavio Salvador 58619fc167SOtavio Salvador$ sudo dfu-util -D u-boot.img -a u-boot 591541d7a6SVanessa Maegima 601541d7a6SVanessa MaegimaRemove power from the pico board. 611541d7a6SVanessa Maegima 621541d7a6SVanessa MaegimaPut pico board into normal boot mode. 631541d7a6SVanessa Maegima 641541d7a6SVanessa MaegimaPower up the board and the new updated U-Boot should boot from eMMC. 65