blob: 8af4effa7890ea82661bcd99d827be524f1356e9 [file] [log] [blame]
How to update U-Boot on pico-imx7d board
----------------------------------------
Required software on the host PC:
- imx_usb_loader: https://github.com/boundarydevices/imx_usb_loader
Build U-Boot for pico:
$ make mrproper
$ make pico-imx7d_defconfig
$ make
This generates the U-Boot binary called u-boot.imx.
Put pico board in USB download mode (refer to the PICO-iMX7D Quick Start Guide
page 3)
Connect a USB to serial adapter between the host PC and pico.
Connect a USB cable between the OTG pico port and the host PC.
Open a terminal program such as minicom.
Copy u-boot.imx to the imx_usb_loader folder.
Load u-boot.imx via USB:
$ sudo ./imx_usb u-boot.imx
Then U-Boot starts and its messages appear in the console program.
Use the default environment variables:
=> env default -f -a
=> saveenv
Run the UMS command:
=> ums 0 mmc 0
Transfer u-boot.imx to be flashed into the eMMC:
$ sudo dd if=u-boot.imx of=/dev/sdX bs=1K seek=1; sync
Remove power from the pico board.
Put pico board into normal boot mode.
Power up the board and the new updated U-Boot should boot from eMMC.
Building U-Boot to boot with NXP 4.1 kernel:
The NXP 4.1 kernel boots only in secure boot mode on mx7.
Follow the next steps to enable secure boot:
$ make mrproper
$ make pico-imx7d_defconfig
$ make menuconfig
-> ARM architecture
-> [*] Enable support for booting in non-secure mode
-> [*] Boot in secure mode by default
-> Exit
$ make
Flash u-boot.imx using the imx_usb_loader tool.