mirror of
https://github.com/u-boot/u-boot.git
synced 2024-12-30 07:03:43 +08:00
b75d8dc564
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> |
||
---|---|---|
.. | ||
6x_bootscript_android_recovery.txt | ||
6x_bootscript_android.txt | ||
6x_bootscript.txt | ||
6x_upgrade.txt | ||
800mhz_2x128mx16.cfg | ||
800mhz_2x256mx16.cfg | ||
800mhz_4x128mx16.cfg | ||
800mhz_4x256mx16.cfg | ||
1066mhz_4x128mx16.cfg | ||
1066mhz_4x256mx16.cfg | ||
clocks.cfg | ||
ddr-setup.cfg | ||
Kconfig | ||
MAINTAINERS | ||
Makefile | ||
nitrogen6dl2g.cfg | ||
nitrogen6dl.cfg | ||
nitrogen6q2g.cfg | ||
nitrogen6q.cfg | ||
nitrogen6s1g.cfg | ||
nitrogen6s.cfg | ||
nitrogen6x.c | ||
README | ||
README.mx6qsabrelite |
U-Boot for the Boundary Devices Nitrogen6X and Freescale i.MX6Q SabreLite boards This file contains information for the port of U-Boot to the Boundary Devices Nitrogen6X and Freescale i.MX6Q SabreLite boards. 1. Boot source, boot from SPI NOR --------------------------------- The configuration in this directory supports both the Nitrogen6X and Freescale SabreLite board, but in a different fashion from Freescale's implementation in board/freescale/mx6qsabrelite. In particular, this image supports booting from SPI NOR and saving the environment to SPI NOR. It does not support 'boot from SD' at offset 0x400 except through the 'bmode' command. http://lists.denx.de/pipermail/u-boot/2012-August/131151.html 2. Boots using 6x_bootscript on SATA or SD card ----------------------------------------------- The default bootcmd for these boards is configured to look for and source a boot script named '6x_bootscript' in the root of the first partition of the following devices: sata 0 mmc 0 mmc 1 They're searched in the order listed above, trying both the ext2 and fat filesystems. 2. Maintaining the SPI NOR -------------------------- A couple of convenience commands clearenv - clear environment to factory default upgradeu - look and source a boot script named '6x_upgrade' to upgrade the U-Boot version in SPI NOR. The search is the same as for 6x_bootscript described above. 3. Display support ------------------ U-Boot support for the following displays is configured by default: HDMI - 1024 x 768 for maximum compatibility Hannstar-XGA - 1024 x 768 LVDS (Freescale part number MCIMX-LVDS1) wsvga-lvds - 1024 x 600 LVDS (Boundary p/n Nit6X_1024x600) wvga-rgb - 800 x 480 RGB (Boundary p/n Nit6X_800x480) Since the ipuv3_fb display driver currently supports only a single display, this code auto-detects panel by probing the HDMI Phy for Hot Plug Detect or the I2C touch controller of the LVDS and RGB displays in the priority listed above. Setting 'panel' environment variable to one of the names above will override auto-detection and force activation of the specified panel. 4. Building ------------ To build U-Boot for one of the Nitrogen6x or SabreLite board: make nitrogen6x_config make Note that 'nitrogen6x' is a placeholder. The complete list of supported board configurations is shown in the boards.cfg file: nitrogen6q i.MX6Q/6D 1GB nitrogen6dl i.MX6DL 1GB nitrogen6s i.MX6S 512MB nitrogen6q2g i.MX6Q/6D 2GB nitrogen6dl2g i.MX6DL 2GB nitrogen6s1g i.MX6S 1GB The -6q variants support either the i.MX6Quad or i.MX6Dual processors and are configured for a 64-bit memory bus at 1066 MHz. The -6dl variants also use a 64-bit memory bus, operated at 800MHz. The -6s variants use a 32-bit memory bus at 800MHz. If you place the u-boot.imx into a single-partition SD card along with a binary version of the boot script 6x_upgrade.txt, you can program it using 'upgradeu': U-Boot> run upgradeu