1U-Boot for the Gateworks Ventana Product Family boards
2
3This file contains information for the port of U-Boot to the Gateworks
4Ventana Product family boards.
5
61. Boot source, boot from NAND
7------------------------------
8
9The i.MX6 BOOT ROM expects some structures that provide details of NAND layout
10and bad block information (referred to as 'bootstreams') which are replicated
11multiple times in NAND. The number of replications is configurable through
12board strapping options and eFUSE settings.  The Freescale 'kobs-ng'
13application from the Freescale LTIB BSP, which runs under Linux, must be used
14to program the bootstream in order to setup the replicated headers correctly.
15
16The Gateworks Ventana boards with NAND flash have been factory programmed
17such that their eFUSE settings expect 2 copies of the boostream (this is
18specified by providing kobs-ng with the --search_exponent=1 argument). Once in
19Linux with MTD support for the NAND on /dev/mtd0 you can program the boostream
20with:
21
22kobs-ng init -v -x --search_exponent=1 u-boot.imx
23
24The kobs-ng application uses an imximage (u-boot.imx) which contains the
25Image Vector Table (IVT) and Device Configuration Data (DCD) structures that
26the i.MX6 BOOT ROM requires to boot.  The kobs-ng adds the Firmware
27Configuration Block (FCB) and Discovered Bad Block Table (DBBT).
28
29This information is taken from:
30  http://trac.gateworks.com/wiki/ventana/bootloader#NANDFLASH
31
32More details about the i.MX6 BOOT ROM can be found in the IMX6 reference manual.
33
342. Build
35--------
36
37There are several Gateworks Ventana boards that share a simliar design but
38vary based on CPU, Memory configuration, and subloaded devices.  Although
39the subloaded devices are handled dynamically in the bootloader using
40factory configured EEPROM data to modify the device-tree, the CPU choice
41(IMX6Q vs IMX6DL) and memory configurations are currently compile-time
42options.
43
44The following Gateworks Ventana configurations exist:
45 gwventanaq1gspi: MX6Q,1GB,SPI FLASH
46 gwventanaq     : MX6Q,512MB,NAND FLASH
47 gwventanaq1g   : MX6Q,1GB,NAND FLASH
48 gwventanadl    : MX6DL,512MB,NAND FLASH
49 gwventanadl1g  : MX6DL,1GB,NAND FLASH
50
51To build U-Boot for the MX6Q,1GB,NAND FLASH for example:
52
53 make gwventanaq1g_config
54 make
55
56