]> git.kernelconcepts.de Git - karo-tx-uboot.git/blobdiff - README
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
[karo-tx-uboot.git] / README
diff --git a/README b/README
index a9a92d7f83a30136d60d744b6c9fad9ac06fde0e..bab1a95d200a10c39c542682ac6e58cfbfb46940 100644 (file)
--- a/README
+++ b/README
@@ -485,6 +485,24 @@ The following options need to be configured:
                Thumb2 this flag will result in Thumb2 code generated by
                GCC.
 
+               CONFIG_ARM_ERRATA_716044
+               CONFIG_ARM_ERRATA_742230
+               CONFIG_ARM_ERRATA_743622
+               CONFIG_ARM_ERRATA_751472
+
+               If set, the workarounds for these ARM errata are applied early
+               during U-Boot startup. Note that these options force the
+               workarounds to be applied; no CPU-type/version detection
+               exists, unlike the similar options in the Linux kernel. Do not
+               set these options unless they apply!
+
+- CPU timer options:
+               CONFIG_SYS_HZ
+
+               The frequency of the timer returned by get_timer().
+               get_timer() must operate in milliseconds and this CONFIG
+               option must be set to 1000.
+
 - Linux Kernel Interface:
                CONFIG_CLOCKS_IN_MHZ
 
@@ -826,6 +844,7 @@ The following options need to be configured:
                CONFIG_CMD_FDOS         * Dos diskette Support
                CONFIG_CMD_FLASH          flinfo, erase, protect
                CONFIG_CMD_FPGA           FPGA device initialization support
+               CONFIG_CMD_FUSE           Device fuse support
                CONFIG_CMD_GETTIME      * Get time since boot
                CONFIG_CMD_GO           * the 'go' command (exec code)
                CONFIG_CMD_GREPENV      * search environment
@@ -834,7 +853,8 @@ The following options need to be configured:
                CONFIG_CMD_I2C          * I2C serial bus support
                CONFIG_CMD_IDE          * IDE harddisk support
                CONFIG_CMD_IMI            iminfo
-               CONFIG_CMD_IMLS           List all found images
+               CONFIG_CMD_IMLS           List all images found in NOR flash
+               CONFIG_CMD_IMLS_NAND      List all images found in NAND flash
                CONFIG_CMD_IMMAP        * IMMR dump support
                CONFIG_CMD_IMPORTENV    * import an environment
                CONFIG_CMD_INI          * import data from an ini file into the env
@@ -851,7 +871,8 @@ The following options need to be configured:
                                          (requires CONFIG_CMD_MEMORY and CONFIG_MD5)
                CONFIG_CMD_MEMINFO      * Display detailed memory information
                CONFIG_CMD_MEMORY         md, mm, nm, mw, cp, cmp, crc, base,
-                                         loop, loopw, mtest
+                                         loop, loopw
+               CONFIG_CMD_MEMTEST        mtest
                CONFIG_CMD_MISC           Misc functions like sleep etc
                CONFIG_CMD_MMC          * MMC memory mapped support
                CONFIG_CMD_MII          * MII utility commands
@@ -868,6 +889,7 @@ The following options need to be configured:
                CONFIG_CMD_READ         * Read raw data from partition
                CONFIG_CMD_REGINFO      * Register dump
                CONFIG_CMD_RUN            run command in env variable
+               CONFIG_CMD_SANDBOX      * sb command to access sandbox features
                CONFIG_CMD_SAVES        * save S record dump
                CONFIG_CMD_SCSI         * SCSI Support
                CONFIG_CMD_SDRAM        * print SDRAM configuration information
@@ -909,6 +931,13 @@ The following options need to be configured:
 
                XXX - this list needs to get updated!
 
+- Regular expression support:
+               CONFIG_REGEX
+                If this variable is defined, U-Boot is linked against
+                the SLRE (Super Light Regular Expression) library,
+                which adds regex support to some commands, as for
+                example "env grep" and "setexpr".
+
 - Device tree:
                CONFIG_OF_CONTROL
                If this variable is defined, U-Boot will use a device tree
@@ -1315,6 +1344,29 @@ The following options need to be configured:
                        CONFIG_SH_MMCIF_CLK
                        Define the clock frequency for MMCIF
 
+- USB Device Firmware Update (DFU) class support:
+               CONFIG_DFU_FUNCTION
+               This enables the USB portion of the DFU USB class
+
+               CONFIG_CMD_DFU
+               This enables the command "dfu" which is used to have
+               U-Boot create a DFU class device via USB.  This command
+               requires that the "dfu_alt_info" environment variable be
+               set and define the alt settings to expose to the host.
+
+               CONFIG_DFU_MMC
+               This enables support for exposing (e)MMC devices via DFU.
+
+               CONFIG_DFU_NAND
+               This enables support for exposing NAND devices via DFU.
+
+               CONFIG_SYS_DFU_MAX_FILE_SIZE
+               When updating files rather than the raw storage device,
+               we use a static buffer to copy the file into and then write
+               the buffer once we've been given the whole file.  Define
+               this to the maximum filesize (in bytes) for the buffer.
+               Default is 4 MiB if undefined.
+
 - Journaling Flash filesystem support:
                CONFIG_JFFS2_NAND, CONFIG_JFFS2_NAND_OFF, CONFIG_JFFS2_NAND_SIZE,
                CONFIG_JFFS2_NAND_DEV
@@ -1522,6 +1574,17 @@ CBFS (Coreboot Filesystem) support
                allows for a "silent" boot where a splash screen is
                loaded very quickly after power-on.
 
+               CONFIG_SPLASHIMAGE_GUARD
+
+               If this option is set, then U-Boot will prevent the environment
+               variable "splashimage" from being set to a problematic address
+               (see README.displaying-bmps and README.arm-unaligned-accesses).
+               This option is useful for targets where, due to alignment
+               restrictions, an improperly aligned BMP image will cause a data
+               abort. If you think you will not have problems with unaligned
+               accesses (for example because your toolchain prevents them)
+               there is no need to set this option.
+
                CONFIG_SPLASH_SCREEN_ALIGN
 
                If this option is set the splash image can be freely positioned
@@ -1542,6 +1605,14 @@ CBFS (Coreboot Filesystem) support
                        => vertically centered image
                           at x = dspWidth - bmpWidth - 9
 
+               CONFIG_SPLASH_SCREEN_PREPARE
+
+               If this option is set then the board_splash_screen_prepare()
+               function, which must be defined in your code, is called as part
+               of the splash screen display sequence. It gives the board an
+               opportunity to prepare the splash image data before it is
+               processed and sent to the frame buffer by U-Boot.
+
 - Gzip compressed BMP image support: CONFIG_VIDEO_BMP_GZIP
 
                If this option is set, additionally to standard BMP
@@ -1897,15 +1968,15 @@ CBFS (Coreboot Filesystem) support
 
                I2C_READ
 
-               Code that returns TRUE if the I2C data line is high,
-               FALSE if it is low.
+               Code that returns true if the I2C data line is high,
+               false if it is low.
 
                eg: #define I2C_READ ((immr->im_cpm.cp_pbdat & PB_SDA) != 0)
 
                I2C_SDA(bit)
 
-               If <bit> is TRUE, sets the I2C data line high. If it
-               is FALSE, it clears it (low).
+               If <bit> is true, sets the I2C data line high. If it
+               is false, it clears it (low).
 
                eg: #define I2C_SDA(bit) \
                        if(bit) immr->im_cpm.cp_pbdat |=  PB_SDA; \
@@ -1913,8 +1984,8 @@ CBFS (Coreboot Filesystem) support
 
                I2C_SCL(bit)
 
-               If <bit> is TRUE, sets the I2C clock line high. If it
-               is FALSE, it clears it (low).
+               If <bit> is true, sets the I2C clock line high. If it
+               is false, it clears it (low).
 
                eg: #define I2C_SCL(bit) \
                        if(bit) immr->im_cpm.cp_pbdat |=  PB_SCL; \
@@ -2414,6 +2485,11 @@ CBFS (Coreboot Filesystem) support
                CONFIG_SF_DEFAULT_MODE          (see include/spi.h)
                CONFIG_SF_DEFAULT_SPEED         in Hz
 
+               CONFIG_CMD_SF_TEST
+
+               Define this option to include a destructive SPI flash
+               test ('sf test').
+
 - SystemACE Support:
                CONFIG_SYSTEMACE
 
@@ -2701,10 +2777,13 @@ FIT uImage format:
                CONFIG_FB_ADDR
 
                Define CONFIG_FB_ADDR if you want to use specific
-               address for frame buffer.
-               Then system will reserve the frame buffer address to
-               defined address instead of lcd_setmem (this function
-               grabs the memory for frame buffer by panel's size).
+               address for frame buffer.  This is typically the case
+               when using a graphics controller has separate video
+               memory.  U-Boot will then place the frame buffer at
+               the given address instead of dynamically reserving it
+               in system RAM by calling lcd_setmem(), which grabs
+               the memory for the frame buffer depending on the
+               configured panel size.
 
                Please see board_init_f function.
 
@@ -2727,6 +2806,32 @@ FIT uImage format:
                Adds the MTD partitioning infrastructure from the Linux
                kernel. Needed for UBI support.
 
+- UBI support
+               CONFIG_CMD_UBI
+
+               Adds commands for interacting with MTD partitions formatted
+               with the UBI flash translation layer
+
+               Requires also defining CONFIG_RBTREE
+
+               CONFIG_UBI_SILENCE_MSG
+
+               Make the verbose messages from UBI stop printing.  This leaves
+               warnings and errors enabled.
+
+- UBIFS support
+               CONFIG_CMD_UBIFS
+
+               Adds commands for interacting with UBI volumes formatted as
+               UBIFS.  UBIFS is read-only in u-boot.
+
+               Requires UBI support as well as CONFIG_LZO
+
+               CONFIG_UBIFS_SILENCE_MSG
+
+               Make the verbose messages from UBIFS stop printing.  This leaves
+               warnings and errors enabled.
+
 - SPL framework
                CONFIG_SPL
                Enable building of SPL globally.
@@ -2734,8 +2839,18 @@ FIT uImage format:
                CONFIG_SPL_LDSCRIPT
                LDSCRIPT for linking the SPL binary.
 
+               CONFIG_SPL_MAX_FOOTPRINT
+               Maximum size in memory allocated to the SPL, BSS included.
+               When defined, the linker checks that the actual memory
+               used by SPL from _start to __bss_end does not exceed it.
+               CONFIG_SPL_MAX_FOOTPRINT and CONFIG_SPL_BSS_MAX_SIZE
+               must not be both defined at the same time.
+
                CONFIG_SPL_MAX_SIZE
-               Maximum binary size (text, data and rodata) of the SPL binary.
+               Maximum size of the SPL image (text, data, rodata, and
+               linker lists sections), BSS excluded.
+               When defined, the linker checks that the actual size does
+               not exceed it.
 
                CONFIG_SPL_TEXT_BASE
                TEXT_BASE for linking the SPL binary.
@@ -2748,7 +2863,11 @@ FIT uImage format:
                Link address for the BSS within the SPL binary.
 
                CONFIG_SPL_BSS_MAX_SIZE
-               Maximum binary size of the BSS section of the SPL binary.
+               Maximum size in memory allocated to the SPL BSS.
+               When defined, the linker checks that the actual memory used
+               by SPL from __bss_start to __bss_end does not exceed it.
+               CONFIG_SPL_MAX_FOOTPRINT and CONFIG_SPL_BSS_MAX_SIZE
+               must not be both defined at the same time.
 
                CONFIG_SPL_STACK
                Adress of the start of the stack SPL will use
@@ -2803,6 +2922,12 @@ FIT uImage format:
                CONFIG_SPL_FAT_LOAD_PAYLOAD_NAME
                Filename to read to load U-Boot when reading from FAT
 
+               CONFIG_SPL_MPC83XX_WAIT_FOR_NAND
+               Set this for NAND SPL on PPC mpc83xx targets, so that
+               start.S waits for the rest of the SPL to load before
+               continuing (the hardware starts execution after just
+               loading the first page rather than the full 4K).
+
                CONFIG_SPL_NAND_BASE
                Include nand_base.c in the SPL.  Requires
                CONFIG_SPL_NAND_DRIVERS.
@@ -2860,6 +2985,13 @@ FIT uImage format:
                CONFIG_SPL_LIBGENERIC_SUPPORT
                Support for lib/libgeneric.o in SPL binary
 
+               CONFIG_SPL_PAD_TO
+               Image offset to which the SPL should be padded before appending
+               the SPL payload. By default, this is defined as
+               CONFIG_SPL_MAX_SIZE, or 0 if CONFIG_SPL_MAX_SIZE is undefined.
+               CONFIG_SPL_PAD_TO must be either 0, meaning to append the SPL
+               payload without any padding, or >= CONFIG_SPL_MAX_SIZE.
+
                CONFIG_SPL_TARGET
                Final target image containing SPL and payload.  Some SPLs
                use an arch-specific makefile fragment instead, for
@@ -3124,6 +3256,15 @@ Configuration Settings:
                digits and dots.  Recommended value: 45 (9..1) for 80
                column displays, 15 (3..1) for 40 column displays.
 
+- CONFIG_FLASH_VERIFY
+               If defined, the content of the flash (destination) is compared
+               against the source after the write operation. An error message
+               will be printed when the contents are not identical.
+               Please note that this option is useless in nearly all cases,
+               since such flash programming errors usually are detected earlier
+               while unprotecting/erasing/programming. Please only enable
+               this option if you really know what you are doing.
+
 - CONFIG_SYS_RX_ETH_BUFFER:
                Defines the number of Ethernet receive buffers. On some
                Ethernet controllers it is recommended to set this value
@@ -3183,6 +3324,23 @@ Configuration Settings:
        If defined, don't allow the -f switch to env set override variable
        access flags.
 
+- CONFIG_SYS_GENERIC_BOARD
+       This selects the architecture-generic board system instead of the
+       architecture-specific board files. It is intended to move boards
+       to this new framework over time. Defining this will disable the
+       arch/foo/lib/board.c file and use common/board_f.c and
+       common/board_r.c instead. To use this option your architecture
+       must support it (i.e. must define __HAVE_ARCH_GENERIC_BOARD in
+       its config.mk file). If you find problems enabling this option on
+       your board please report the problem and send patches!
+
+- CONFIG_SYS_SYM_OFFSETS
+       This is set by architectures that use offsets for link symbols
+       instead of absolute values. So bss_start is obtained using an
+       offset _bss_start_ofs from CONFIG_SYS_TEXT_BASE, rather than
+       directly. You should not need to touch this setting.
+
+
 The following definitions that deal with the placement and management
 of environment data (variable area); in general, we support the
 following configurations:
@@ -3416,6 +3574,33 @@ but it can not erase, write this NOR flash by SRIO or PCIE interface.
        environment. If redundant environment is used, it will be copied to
        CONFIG_NAND_ENV_DST + CONFIG_ENV_SIZE.
 
+- CONFIG_ENV_IS_IN_UBI:
+
+       Define this if you have an UBI volume that you want to use for the
+       environment.  This has the benefit of wear-leveling the environment
+       accesses, which is important on NAND.
+
+       - CONFIG_ENV_UBI_PART:
+
+         Define this to a string that is the mtd partition containing the UBI.
+
+       - CONFIG_ENV_UBI_VOLUME:
+
+         Define this to the name of the volume that you want to store the
+         environment in.
+
+       - CONFIG_ENV_UBI_VOLUME_REDUND:
+
+         Define this to the name of another volume to store a second copy of
+         the environment in.  This will enable redundant environments in UBI.
+         It is assumed that both volumes are in the same MTD partition.
+
+       - CONFIG_UBI_SILENCE_MSG
+       - CONFIG_UBIFS_SILENCE_MSG
+
+         You will probably want to define these to avoid a really noisy system
+         when storing the env in UBI.
+
 - CONFIG_SYS_SPI_INIT_OFFSET
 
        Defines offset to the initial SPI buffer area in DPRAM. The
@@ -3687,9 +3872,13 @@ Low Level (hardware related) configuration options:
 - CONFIG_SYS_SRIOn_MEM_SIZE:
                Size of SRIO port 'n' memory region
 
-- CONFIG_SYS_NDFC_16
-               Defined to tell the NDFC that the NAND chip is using a
-               16 bit bus.
+- CONFIG_SYS_NAND_BUSWIDTH_16BIT
+               Defined to tell the NAND controller that the NAND chip is using
+               a 16 bit bus.
+               Not all NAND drivers use this symbol.
+               Example of drivers that use it:
+               - drivers/mtd/nand/ndfc.c
+               - drivers/mtd/nand/mxc_nand.c
 
 - CONFIG_SYS_NDFC_EBC0_CFG
                Sets the EBC0_CFG register for the NDFC. If not defined
@@ -3784,21 +3973,29 @@ Low Level (hardware related) configuration options:
                that is executed before the actual U-Boot. E.g. when
                compiling a NAND SPL.
 
+- CONFIG_ARCH_MAP_SYSMEM
+               Generally U-Boot (and in particular the md command) uses
+               effective address. It is therefore not necessary to regard
+               U-Boot address as virtual addresses that need to be translated
+               to physical addresses. However, sandbox requires this, since
+               it maintains its own little RAM buffer which contains all
+               addressable memory. This option causes some memory accesses
+               to be mapped through map_sysmem() / unmap_sysmem().
+
 - CONFIG_USE_ARCH_MEMCPY
   CONFIG_USE_ARCH_MEMSET
                If these options are used a optimized version of memcpy/memset will
                be used if available. These functions may be faster under some
                conditions but may increase the binary size.
 
-- CONFIG_X86_NO_RESET_VECTOR
-               If defined, the x86 reset vector code is excluded. You will need
-               to do this when U-Boot is running from Coreboot.
+- CONFIG_X86_RESET_VECTOR
+               If defined, the x86 reset vector code is included. This is not
+               needed when U-Boot is running from Coreboot.
 
-- CONFIG_X86_NO_REAL_MODE
-               If defined, x86 real mode code is omitted. This assumes a
-               32-bit environment where such code is not needed. You will
-               need to do this when U-Boot is running from Coreboot.
+- CONFIG_SYS_MPUCLK
+               Defines the MPU clock speed (in MHz).
 
+               NOTE : currently only supported on AM335x platforms.
 
 Freescale QE/FMAN Firmware Support:
 -----------------------------------