mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-19 08:28:51 +09:00
![]() The Linux coding style guide (Documentation/process/coding-style.rst) clearly says: It's a **mistake** to use typedef for structures and pointers. Besides, using typedef for structures is annoying when you try to make headers self-contained. Let's say you have the following function declaration in a header: void foo(bd_t *bd); This is not self-contained since bd_t is not defined. To tell the compiler what 'bd_t' is, you need to include <asm/u-boot.h> #include <asm/u-boot.h> void foo(bd_t *bd); Then, the include direcective pulls in more bloat needlessly. If you use 'struct bd_info' instead, it is enough to put a forward declaration as follows: struct bd_info; void foo(struct bd_info *bd); Right, typedef'ing bd_t is a mistake. I used coccinelle to generate this commit. The semantic patch that makes this change is as follows: <smpl> @@ typedef bd_t; @@ -bd_t +struct bd_info </smpl> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> |
||
---|---|---|
.. | ||
Kconfig | ||
MAINTAINERS | ||
Makefile | ||
pico-imx6.c | ||
README | ||
spl.c |
How to Update U-Boot on pico-imx6q/dl boards -------------------------------------------- Required software on the host PC: - UUU: https://github.com/NXPmicro/mfgtools Build U-Boot for pico: $ make mrproper $ make pico-imx6_defconfig $ make This generates the SPL and u-boot-dtb.img binaries. 1. Loading U-Boot via USB Serial Download Protocol Note: This method is convenient for development purposes. If the eMMC has already a U-Boot flashed then the user can go to step 2 below in order to update U-Boot. Put pico board in USB download mode (Refer to the following link for details: https://www.technexion.com/support/knowledgebase/boot-configuration-settings-for-pico-baseboards/). 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 SPL and u-boot-dtb.img to the uuu folder. Load the U-Boot via USB: $ sudo ./uuu -v uuu_script where uuu_script contains the following: SDP: boot -f SPL SDPU: write -f u-boot-dtb.img -addr 0x10000000 SDPU: jump -addr 0x10000000 Then U-Boot starts and its messages appear in the console program. Use the default environment variables: => env default -f -a => saveenv 2. Flashing U-Boot into the eMMC The default U-Boot environment expects the use of eMMC user partition. To ensure we are using the proper eMMC partition for boot, please run: => mmc partconf 0 0 0 0 Next, run the DFU agent so we can flash the new images using dfu-util tool: => dfu 0 mmc 0 Flash SPL and u-boot-dtb.img into the eMMC running the following commands on a PC: $ sudo dfu-util -D SPL -a spl $ sudo dfu-util -D u-boot-dtb.img -a u-boot 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.