mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-08-27 12:28:52 +09:00
56 lines
2.2 KiB
Plaintext
56 lines
2.2 KiB
Plaintext
![]() |
U-Boot for the Gateworks Ventana Product Family boards
|
||
|
|
||
|
This file contains information for the port of U-Boot to the Gateworks
|
||
|
Ventana Product family boards.
|
||
|
|
||
|
1. Boot source, boot from NAND
|
||
|
------------------------------
|
||
|
|
||
|
The i.MX6 BOOT ROM expects some structures that provide details of NAND layout
|
||
|
and bad block information (referred to as 'bootstreams') which are replicated
|
||
|
multiple times in NAND. The number of replications is configurable through
|
||
|
board strapping options and eFUSE settings. The Freescale 'kobs-ng'
|
||
|
application from the Freescale LTIB BSP, which runs under Linux, must be used
|
||
|
to program the bootstream in order to setup the replicated headers correctly.
|
||
|
|
||
|
The Gateworks Ventana boards with NAND flash have been factory programmed
|
||
|
such that their eFUSE settings expect 2 copies of the boostream (this is
|
||
|
specified by providing kobs-ng with the --search_exponent=1 argument). Once in
|
||
|
Linux with MTD support for the NAND on /dev/mtd0 you can program the boostream
|
||
|
with:
|
||
|
|
||
|
kobs-ng init -v -x --search_exponent=1 u-boot.imx
|
||
|
|
||
|
The kobs-ng application uses an imximage (u-boot.imx) which contains the
|
||
|
Image Vector Table (IVT) and Device Configuration Data (DCD) structures that
|
||
|
the i.MX6 BOOT ROM requires to boot. The kobs-ng adds the Firmware
|
||
|
Configuration Block (FCB) and Discovered Bad Block Table (DBBT).
|
||
|
|
||
|
This information is taken from:
|
||
|
http://trac.gateworks.com/wiki/ventana/bootloader#NANDFLASH
|
||
|
|
||
|
More details about the i.MX6 BOOT ROM can be found in the IMX6 reference manual.
|
||
|
|
||
|
2. Build
|
||
|
--------
|
||
|
|
||
|
There are several Gateworks Ventana boards that share a simliar design but
|
||
|
vary based on CPU, Memory configuration, and subloaded devices. Although
|
||
|
the subloaded devices are handled dynamically in the bootloader using
|
||
|
factory configured EEPROM data to modify the device-tree, the CPU choice
|
||
|
(IMX6Q vs IMX6DL) and memory configurations are currently compile-time
|
||
|
options.
|
||
|
|
||
|
The following Gateworks Ventana configurations exist:
|
||
|
gwventanaq1gspi: MX6Q,1GB,SPI FLASH
|
||
|
gwventanaq : MX6Q,512MB,NAND FLASH
|
||
|
gwventanaq1g : MX6Q,1GB,NAND FLASH
|
||
|
gwventanadl : MX6DL,512MB,NAND FLASH
|
||
|
gwventanadl1g : MX6DL,1GB,NAND FLASH
|
||
|
|
||
|
To build U-Boot for the MX6Q,1GB,NAND FLASH for example:
|
||
|
|
||
|
make gwventanaq1g_config
|
||
|
make
|
||
|
|