]> git.sur5r.net Git - u-boot/blobdiff - README
sandbox: config: enable fdt and snprintf() options
[u-boot] / README
diff --git a/README b/README
index 094869c10651ebdc4f7f27ba8b9c2b87ce08d33c..89646725a0b884c5b8b10e4262a1682478788a29 100644 (file)
--- a/README
+++ b/README
@@ -1,5 +1,5 @@
 #
 #
-# (C) Copyright 2000 - 2011
+# (C) Copyright 2000 - 2012
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 #
 # See file CREDITS for list of people who contributed to this
 # Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 #
 # See file CREDITS for list of people who contributed to this
@@ -134,7 +134,7 @@ Additional fields (if present) indicate release candidates or bug fix
 releases in "stable" maintenance trees.
 
 Examples:
 releases in "stable" maintenance trees.
 
 Examples:
-       U-Boot v2009.11     - Release November 2009
+       U-Boot v2009.11     - Release November 2009
        U-Boot v2009.11.1   - Release 1 in version November 2009 stable tree
        U-Boot v2010.09-rc1 - Release candiate 1 for September 2010 release
 
        U-Boot v2009.11.1   - Release 1 in version November 2009 stable tree
        U-Boot v2010.09-rc1 - Release candiate 1 for September 2010 release
 
@@ -420,6 +420,12 @@ The following options need to be configured:
                XWAY SoCs for booting from NOR flash. The U-Boot image needs to
                be swapped if a flash programmer is used.
 
                XWAY SoCs for booting from NOR flash. The U-Boot image needs to
                be swapped if a flash programmer is used.
 
+- ARM options:
+               CONFIG_SYS_EXCEPTION_VECTORS_HIGH
+
+               Select high exception vectors of the ARM core, e.g., do not
+               clear the V bit of the c1 register of CP15.
+
 - Linux Kernel Interface:
                CONFIG_CLOCKS_IN_MHZ
 
 - Linux Kernel Interface:
                CONFIG_CLOCKS_IN_MHZ
 
@@ -564,7 +570,7 @@ The following options need to be configured:
 
                CONFIG_CFB_CONSOLE
                Enables console device for a color framebuffer. Needs following
 
                CONFIG_CFB_CONSOLE
                Enables console device for a color framebuffer. Needs following
-               defines (cf. smiLynxEM, i8042, board/eltec/bab7xx)
+               defines (cf. smiLynxEM, i8042)
                        VIDEO_FB_LITTLE_ENDIAN  graphic memory organisation
                                                (default big endian)
                        VIDEO_HW_RECTFILL       graphic chip supports
                        VIDEO_FB_LITTLE_ENDIAN  graphic memory organisation
                                                (default big endian)
                        VIDEO_HW_RECTFILL       graphic chip supports
@@ -638,6 +644,32 @@ The following options need to be configured:
                'Sane' compilers will generate smaller code if
                CONFIG_PRE_CON_BUF_SZ is a power of 2
 
                'Sane' compilers will generate smaller code if
                CONFIG_PRE_CON_BUF_SZ is a power of 2
 
+- Pre-console putc():
+               Prior to the console being initialised, console output is
+               normally silently discarded. This can be annoying if a
+               panic() happens in this time.
+
+               If the CONFIG_PRE_CONSOLE_PUTC option is defined, then
+               U-Boot will call board_pre_console_putc() for each output
+               character in this case, This function should try to output
+               the character if possible, perhaps on all available UARTs
+               (it will need to do this directly, since the console code
+               is not functional yet). Note that if the panic happens
+               early enough, then it is possible that board_init_f()
+               (or even arch_cpu_init() on ARM) has not been called yet.
+               You should init all clocks, GPIOs, etc. that are needed
+               to get the character out. Baud rates will need to default
+               to something sensible.
+
+- Safe printf() functions
+               Define CONFIG_SYS_VSNPRINTF to compile in safe versions of
+               the printf() functions. These are defined in
+               include/vsprintf.h and include snprintf(), vsnprintf() and
+               so on. Code size increase is approximately 300-500 bytes.
+               If this option is not given then these functions will
+               silently discard their buffer size argument - this means
+               you are not getting any overflow checking in this case.
+
 - Boot Delay:  CONFIG_BOOTDELAY - in seconds
                Delay before automatically booting the default image;
                set to -1 to disable autoboot.
 - Boot Delay:  CONFIG_BOOTDELAY - in seconds
                Delay before automatically booting the default image;
                set to -1 to disable autoboot.
@@ -769,7 +801,7 @@ The following options need to be configured:
                CONFIG_CMD_NAND         * NAND support
                CONFIG_CMD_NET            bootp, tftpboot, rarpboot
                CONFIG_CMD_PCA953X      * PCA953x I2C gpio commands
                CONFIG_CMD_NAND         * NAND support
                CONFIG_CMD_NET            bootp, tftpboot, rarpboot
                CONFIG_CMD_PCA953X      * PCA953x I2C gpio commands
-               CONFIG_CMD_PCA953X_INFO * PCA953x I2C gpio info command
+               CONFIG_CMD_PCA953X_INFO * PCA953x I2C gpio info command
                CONFIG_CMD_PCI          * pciinfo
                CONFIG_CMD_PCMCIA               * PCMCIA support
                CONFIG_CMD_PING         * send ICMP ECHO_REQUEST to network
                CONFIG_CMD_PCI          * pciinfo
                CONFIG_CMD_PCMCIA               * PCMCIA support
                CONFIG_CMD_PING         * send ICMP ECHO_REQUEST to network
@@ -783,6 +815,7 @@ The following options need to be configured:
                                          (requires CONFIG_CMD_I2C)
                CONFIG_CMD_SETGETDCR      Support for DCR Register access
                                          (4xx only)
                                          (requires CONFIG_CMD_I2C)
                CONFIG_CMD_SETGETDCR      Support for DCR Register access
                                          (4xx only)
+               CONFIG_CMD_SF           * Read/write/erase SPI NOR flash
                CONFIG_CMD_SHA1SUM        print sha1 memory digest
                                          (requires CONFIG_CMD_MEMORY)
                CONFIG_CMD_SOURCE         "source" command Support
                CONFIG_CMD_SHA1SUM        print sha1 memory digest
                                          (requires CONFIG_CMD_MEMORY)
                CONFIG_CMD_SOURCE         "source" command Support
@@ -824,8 +857,8 @@ The following options need to be configured:
                experimental and only available on a few boards. The device
                tree is available in the global data as gd->fdt_blob.
 
                experimental and only available on a few boards. The device
                tree is available in the global data as gd->fdt_blob.
 
-               U-Boot needs to get its device tree from somewhere. At present
-               the only way is to embed it in the image with CONFIG_OF_EMBED.
+               U-Boot needs to get its device tree from somewhere. This can
+               be done using one of the two options below:
 
                CONFIG_OF_EMBED
                If this variable is defined, U-Boot will embed a device tree
 
                CONFIG_OF_EMBED
                If this variable is defined, U-Boot will embed a device tree
@@ -834,6 +867,18 @@ The following options need to be configured:
                is then picked up in board_init_f() and made available through
                the global data structure as gd->blob.
 
                is then picked up in board_init_f() and made available through
                the global data structure as gd->blob.
 
+               CONFIG_OF_SEPARATE
+               If this variable is defined, U-Boot will build a device tree
+               binary. It will be called u-boot.dtb. Architecture-specific
+               code will locate it at run-time. Generally this works by:
+
+                       cat u-boot.bin u-boot.dtb >image.bin
+
+               and in fact, U-Boot does this for you, creating a file called
+               u-boot-dtb.bin which is useful in the common case. You can
+               still use the individual files if you need something more
+               exotic.
+
 - Watchdog:
                CONFIG_WATCHDOG
                If this variable is defined, it enables watchdog
 - Watchdog:
                CONFIG_WATCHDOG
                If this variable is defined, it enables watchdog
@@ -864,7 +909,7 @@ The following options need to be configured:
 
                CONFIG_RTC_MPC8xx       - use internal RTC of MPC8xx
                CONFIG_RTC_PCF8563      - use Philips PCF8563 RTC
 
                CONFIG_RTC_MPC8xx       - use internal RTC of MPC8xx
                CONFIG_RTC_PCF8563      - use Philips PCF8563 RTC
-               CONFIG_RTC_MC13783      - use MC13783 RTC
+               CONFIG_RTC_MC13XXX      - use MC13783 or MC13892 RTC
                CONFIG_RTC_MC146818     - use MC146818 RTC
                CONFIG_RTC_DS1307       - use Maxim, Inc. DS1307 RTC
                CONFIG_RTC_DS1337       - use Maxim, Inc. DS1337 RTC
                CONFIG_RTC_MC146818     - use MC146818 RTC
                CONFIG_RTC_DS1307       - use Maxim, Inc. DS1307 RTC
                CONFIG_RTC_DS1337       - use Maxim, Inc. DS1337 RTC
@@ -945,7 +990,20 @@ The following options need to be configured:
 
 - NETWORK Support (PCI):
                CONFIG_E1000
 
 - NETWORK Support (PCI):
                CONFIG_E1000
-               Support for Intel 8254x gigabit chips.
+               Support for Intel 8254x/8257x gigabit chips.
+
+               CONFIG_E1000_SPI
+               Utility code for direct access to the SPI bus on Intel 8257x.
+               This does not do anything useful unless you set at least one
+               of CONFIG_CMD_E1000 or CONFIG_E1000_SPI_GENERIC.
+
+               CONFIG_E1000_SPI_GENERIC
+               Allow generic access to the SPI bus on the Intel 8257x, for
+               example with the "sspi" command.
+
+               CONFIG_CMD_E1000
+               Management command for E1000 devices.  When used on devices
+               with SPI support you can reprogram the EEPROM from U-Boot.
 
                CONFIG_E1000_FALLBACK_MAC
                default MAC for empty EEPROM after production.
 
                CONFIG_E1000_FALLBACK_MAC
                default MAC for empty EEPROM after production.
@@ -978,6 +1036,9 @@ The following options need to be configured:
                        If this defined, the driver is quiet.
                        The driver doen't show link status messages.
 
                        If this defined, the driver is quiet.
                        The driver doen't show link status messages.
 
+               CONFIG_CALXEDA_XGMAC
+               Support for the Calxeda XGMAC device
+
                CONFIG_DRIVER_LAN91C96
                Support for SMSC's LAN91C96 chips.
 
                CONFIG_DRIVER_LAN91C96
                Support for SMSC's LAN91C96 chips.
 
@@ -1002,6 +1063,12 @@ The following options need to be configured:
                        Define this to use i/o functions instead of macros
                        (some hardware wont work with macros)
 
                        Define this to use i/o functions instead of macros
                        (some hardware wont work with macros)
 
+               CONFIG_DRIVER_TI_EMAC
+               Support for davinci emac
+
+                       CONFIG_SYS_DAVINCI_EMAC_PHY_COUNT
+                       Define this if you have more then 3 PHYs.
+
                CONFIG_FTGMAC100
                Support for Faraday's FTGMAC100 Gigabit SoC Ethernet
 
                CONFIG_FTGMAC100
                Support for Faraday's FTGMAC100 Gigabit SoC Ethernet
 
@@ -1041,6 +1108,16 @@ The following options need to be configured:
                        CONFIG_SH_ETHER_CACHE_WRITEBACK
                        If this option is set, the driver enables cache flush.
 
                        CONFIG_SH_ETHER_CACHE_WRITEBACK
                        If this option is set, the driver enables cache flush.
 
+- TPM Support:
+               CONFIG_GENERIC_LPC_TPM
+               Support for generic parallel port TPM devices. Only one device
+               per system is supported at this time.
+
+                       CONFIG_TPM_TIS_BASE_ADDRESS
+                       Base address where the generic TPM device is mapped
+                       to. Contemporary x86 systems usually map it at
+                       0xfed40000.
+
 - USB Support:
                At the moment only the UHCI host controller is
                supported (PIP405, MIP405, MPC5200); define
 - USB Support:
                At the moment only the UHCI host controller is
                supported (PIP405, MIP405, MPC5200); define
@@ -1127,6 +1204,14 @@ The following options need to be configured:
                        for your device
                        - CONFIG_USBD_PRODUCTID 0xFFFF
 
                        for your device
                        - CONFIG_USBD_PRODUCTID 0xFFFF
 
+- ULPI Layer Support:
+               The ULPI (UTMI Low Pin (count) Interface) PHYs are supported via
+               the generic ULPI layer. The generic layer accesses the ULPI PHY
+               via the platform viewport, so you need both the genric layer and
+               the viewport enabled. Currently only Chipidea/ARC based
+               viewport is supported.
+               To enable the ULPI layer support, define CONFIG_USB_ULPI and
+               CONFIG_USB_ULPI_VIEWPORT in your board configuration file.
 
 - MMC Support:
                The MMC controller on the Intel PXA is supported. To
 
 - MMC Support:
                The MMC controller on the Intel PXA is supported. To
@@ -1163,6 +1248,11 @@ The following options need to be configured:
                to disable the command chpart. This is the default when you
                have not defined a custom partition
 
                to disable the command chpart. This is the default when you
                have not defined a custom partition
 
+- FAT(File Allocation Table) filesystem write function support:
+               CONFIG_FAT_WRITE
+               Support for saving memory data as a file
+               in FAT formatted partition
+
 - Keyboard Support:
                CONFIG_ISA_KEYBOARD
 
 - Keyboard Support:
                CONFIG_ISA_KEYBOARD
 
@@ -1415,18 +1505,37 @@ The following options need to be configured:
                Define a default value for the IP address to use for
                the default Ethernet interface, in case this is not
                determined through e.g. bootp.
                Define a default value for the IP address to use for
                the default Ethernet interface, in case this is not
                determined through e.g. bootp.
+               (Environment variable "ipaddr")
 
 - Server IP address:
                CONFIG_SERVERIP
 
                Defines a default value for the IP address of a TFTP
                server to contact when using the "tftboot" command.
 
 - Server IP address:
                CONFIG_SERVERIP
 
                Defines a default value for the IP address of a TFTP
                server to contact when using the "tftboot" command.
+               (Environment variable "serverip")
 
                CONFIG_KEEP_SERVERADDR
 
                Keeps the server's MAC address, in the env 'serveraddr'
                for passing to bootargs (like Linux's netconsole option)
 
 
                CONFIG_KEEP_SERVERADDR
 
                Keeps the server's MAC address, in the env 'serveraddr'
                for passing to bootargs (like Linux's netconsole option)
 
+- Gateway IP address:
+               CONFIG_GATEWAYIP
+
+               Defines a default value for the IP address of the
+               default router where packets to other networks are
+               sent to.
+               (Environment variable "gatewayip")
+
+- Subnet mask:
+               CONFIG_NETMASK
+
+               Defines a default value for the subnet mask (or
+               routing prefix) which is used to determine if an IP
+               address belongs to the local subnet or needs to be
+               forwarded through a router.
+               (Environment variable "netmask")
+
 - Multicast TFTP Mode:
                CONFIG_MCAST_TFTP
 
 - Multicast TFTP Mode:
                CONFIG_MCAST_TFTP
 
@@ -1713,24 +1822,24 @@ The following options need to be configured:
                CONFIG_I2C_MULTI_BUS
 
                This option allows the use of multiple I2C buses, each of which
                CONFIG_I2C_MULTI_BUS
 
                This option allows the use of multiple I2C buses, each of which
-               must have a controller.  At any point in time, only one bus is
-               active.  To switch to a different bus, use the 'i2c dev' command.
+               must have a controller.  At any point in time, only one bus is
+               active.  To switch to a different bus, use the 'i2c dev' command.
                Note that bus numbering is zero-based.
 
                CONFIG_SYS_I2C_NOPROBES
 
                This option specifies a list of I2C devices that will be skipped
                Note that bus numbering is zero-based.
 
                CONFIG_SYS_I2C_NOPROBES
 
                This option specifies a list of I2C devices that will be skipped
-               when the 'i2c probe' command is issued.  If CONFIG_I2C_MULTI_BUS
+               when the 'i2c probe' command is issued.  If CONFIG_I2C_MULTI_BUS
                is set, specify a list of bus-device pairs.  Otherwise, specify
                a 1D array of device addresses
 
                e.g.
                        #undef  CONFIG_I2C_MULTI_BUS
                is set, specify a list of bus-device pairs.  Otherwise, specify
                a 1D array of device addresses
 
                e.g.
                        #undef  CONFIG_I2C_MULTI_BUS
-                       #define CONFIG_SYS_I2C_NOPROBES {0x50,0x68}
+                       #define CONFIG_SYS_I2C_NOPROBES {0x50,0x68}
 
                will skip addresses 0x50 and 0x68 on a board with one I2C bus
 
 
                will skip addresses 0x50 and 0x68 on a board with one I2C bus
 
-                       #define CONFIG_I2C_MULTI_BUS
+                       #define CONFIG_I2C_MULTI_BUS
                        #define CONFIG_SYS_I2C_MULTI_NOPROBES   {{0,0x50},{0,0x68},{1,0x54}}
 
                will skip addresses 0x50 and 0x68 on bus 0 and address 0x54 on bus 1
                        #define CONFIG_SYS_I2C_MULTI_NOPROBES   {{0,0x50},{0,0x68},{1,0x54}}
 
                will skip addresses 0x50 and 0x68 on bus 0 and address 0x54 on bus 1
@@ -1849,13 +1958,13 @@ The following options need to be configured:
                Enables a hardware SPI driver for general-purpose reads
                and writes.  As with CONFIG_SOFT_SPI, the board configuration
                must define a list of chip-select function pointers.
                Enables a hardware SPI driver for general-purpose reads
                and writes.  As with CONFIG_SOFT_SPI, the board configuration
                must define a list of chip-select function pointers.
-               Currently supported on some MPC8xxx processors.  For an
+               Currently supported on some MPC8xxx processors.  For an
                example, see include/configs/mpc8349emds.h.
 
                CONFIG_MXC_SPI
 
                Enables the driver for the SPI controllers on i.MX and MXC
                example, see include/configs/mpc8349emds.h.
 
                CONFIG_MXC_SPI
 
                Enables the driver for the SPI controllers on i.MX and MXC
-               SoCs. Currently only i.MX31 is supported.
+               SoCs. Currently i.MX31/35/51 are supported.
 
 - FPGA Support: CONFIG_FPGA
 
 
 - FPGA Support: CONFIG_FPGA
 
@@ -2089,6 +2198,25 @@ The following options need to be configured:
                allows to read/write in Dataflash via the standard
                commands cp, md...
 
                allows to read/write in Dataflash via the standard
                commands cp, md...
 
+- Serial Flash support
+               CONFIG_CMD_SF
+
+               Defining this option enables SPI flash commands
+               'sf probe/read/write/erase/update'.
+
+               Usage requires an initial 'probe' to define the serial
+               flash parameters, followed by read/write/erase/update
+               commands.
+
+               The following defaults may be provided by the platform
+               to handle the common case when only a single serial
+               flash is present on the system.
+
+               CONFIG_SF_DEFAULT_BUS           Bus identifier
+               CONFIG_SF_DEFAULT_CS            Chip-select
+               CONFIG_SF_DEFAULT_MODE          (see include/spi.h)
+               CONFIG_SF_DEFAULT_SPEED         in Hz
+
 - SystemACE Support:
                CONFIG_SYSTEMACE
 
 - SystemACE Support:
                CONFIG_SYSTEMACE
 
@@ -2164,7 +2292,7 @@ Legacy uImage format:
    13  common/image.c          Start multifile image verification
    14  common/image.c          No initial ramdisk, no multifile, continue.
 
    13  common/image.c          Start multifile image verification
    14  common/image.c          No initial ramdisk, no multifile, continue.
 
-   15  arch/<arch>/lib/bootm.c All preparation done, transferring control to OS
+   15  arch/<arch>/lib/bootm.c All preparation done, transferring control to OS
 
   -30  arch/powerpc/lib/board.c        Fatal error, hang the system
   -31  post/post.c             POST test failed, detected by post_output_backlog()
 
   -30  arch/powerpc/lib/board.c        Fatal error, hang the system
   -31  post/post.c             POST test failed, detected by post_output_backlog()
@@ -2411,6 +2539,20 @@ Modem Support:
 
                See also: doc/README.Modem
 
 
                See also: doc/README.Modem
 
+Board initialization settings:
+------------------------------
+
+During Initialization u-boot calls a number of board specific functions
+to allow the preparation of board specific prerequisites, e.g. pin setup
+before drivers are initialized. To enable these callbacks the
+following configuration macros have to be defined. Currently this is
+architecture specific, so please check arch/your_architecture/lib/board.c
+typically in board_init_f() and board_init_r().
+
+- CONFIG_BOARD_EARLY_INIT_F: Call board_early_init_f()
+- CONFIG_BOARD_EARLY_INIT_R: Call board_early_init_r()
+- CONFIG_BOARD_LATE_INIT: Call board_late_init()
+- CONFIG_BOARD_POSTCLK_INIT: Call board_postclk_init()
 
 Configuration Settings:
 -----------------------
 
 Configuration Settings:
 -----------------------
@@ -2528,7 +2670,7 @@ Configuration Settings:
                used) must be put below this limit, unless "bootm_low"
                enviroment variable is defined and non-zero. In such case
                all data for the Linux kernel must be between "bootm_low"
                used) must be put below this limit, unless "bootm_low"
                enviroment variable is defined and non-zero. In such case
                all data for the Linux kernel must be between "bootm_low"
-               and "bootm_low" + CONFIG_SYS_BOOTMAPSZ.  The environment
+               and "bootm_low" + CONFIG_SYS_BOOTMAPSZ.  The environment
                variable "bootm_mapsize" will override the value of
                CONFIG_SYS_BOOTMAPSZ.  If CONFIG_SYS_BOOTMAPSZ is undefined,
                then the value in "bootm_size" will be used instead.
                variable "bootm_mapsize" will override the value of
                CONFIG_SYS_BOOTMAPSZ.  If CONFIG_SYS_BOOTMAPSZ is undefined,
                then the value in "bootm_size" will be used instead.
@@ -2818,7 +2960,7 @@ to save the current settings.
          This setting describes a second storage area of CONFIG_ENV_SIZE
          size used to hold a redundant copy of the environment data, so
          that there is a valid backup copy in case there is a power failure
          This setting describes a second storage area of CONFIG_ENV_SIZE
          size used to hold a redundant copy of the environment data, so
          that there is a valid backup copy in case there is a power failure
-         during a "saveenv" operation.  CONFIG_ENV_OFFSET_RENDUND must be
+         during a "saveenv" operation.  CONFIG_ENV_OFFSET_RENDUND must be
          aligned to an erase block boundary.
 
        - CONFIG_ENV_RANGE (optional):
          aligned to an erase block boundary.
 
        - CONFIG_ENV_RANGE (optional):
@@ -2912,7 +3054,7 @@ Low Level (hardware related) configuration options:
 - CONFIG_SYS_CCSRBAR_PHYS:
                Physical address of CCSR.  CCSR can be relocated to a new
                physical address, if desired.  In this case, this macro should
 - CONFIG_SYS_CCSRBAR_PHYS:
                Physical address of CCSR.  CCSR can be relocated to a new
                physical address, if desired.  In this case, this macro should
-               be set to that address.  Otherwise, it should be set to the
+               be set to that address.  Otherwise, it should be set to the
                same value as CONFIG_SYS_CCSRBAR_DEFAULT.  For example, CCSR
                is typically relocated on 36-bit builds.  It is recommended
                that this macro be defined via the _HIGH and _LOW macros:
                same value as CONFIG_SYS_CCSRBAR_DEFAULT.  For example, CCSR
                is typically relocated on 36-bit builds.  It is recommended
                that this macro be defined via the _HIGH and _LOW macros:
@@ -3194,12 +3336,55 @@ Low Level (hardware related) configuration options:
                that is executed before the actual U-Boot. E.g. when
                compiling a NAND SPL.
 
                that is executed before the actual U-Boot. E.g. when
                compiling a NAND SPL.
 
+- CONFIG_SYS_NAND_HW_ECC_OOBFIRST
+               define this, if you want to read first the oob data
+               and then the data. This is used for example on
+               davinci plattforms.
+
 - 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_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.
 
+Freescale QE/FMAN Firmware Support:
+-----------------------------------
+
+The Freescale QUICCEngine (QE) and Frame Manager (FMAN) both support the
+loading of "firmware", which is encoded in the QE firmware binary format.
+This firmware often needs to be loaded during U-Boot booting, so macros
+are used to identify the storage device (NOR flash, SPI, etc) and the address
+within that device.
+
+- CONFIG_SYS_QE_FMAN_FW_ADDR
+       The address in the storage device where the firmware is located.  The
+       meaning of this address depends on which CONFIG_SYS_QE_FW_IN_xxx macro
+       is also specified.
+
+- CONFIG_SYS_QE_FMAN_FW_LENGTH
+       The maximum possible size of the firmware.  The firmware binary format
+       has a field that specifies the actual size of the firmware, but it
+       might not be possible to read any part of the firmware unless some
+       local storage is allocated to hold the entire firmware first.
+
+- CONFIG_SYS_QE_FMAN_FW_IN_NOR
+       Specifies that QE/FMAN firmware is located in NOR flash, mapped as
+       normal addressable memory via the LBC.  CONFIG_SYS_FMAN_FW_ADDR is the
+       virtual address in NOR flash.
+
+- CONFIG_SYS_QE_FMAN_FW_IN_NAND
+       Specifies that QE/FMAN firmware is located in NAND flash.
+       CONFIG_SYS_FMAN_FW_ADDR is the offset within NAND flash.
+
+- CONFIG_SYS_QE_FMAN_FW_IN_MMC
+       Specifies that QE/FMAN firmware is located on the primary SD/MMC
+       device.  CONFIG_SYS_FMAN_FW_ADDR is the byte offset on that device.
+
+- CONFIG_SYS_QE_FMAN_FW_IN_SPIFLASH
+       Specifies that QE/FMAN firmware is located on the primary SPI
+       device.  CONFIG_SYS_FMAN_FW_ADDR is the byte offset on that device.
+
+
 Building the Software:
 ======================
 
 Building the Software:
 ======================
 
@@ -3444,7 +3629,7 @@ List of environment variables (most likely not complete):
                  kernel -- see the description of CONFIG_SYS_BOOTMAPSZ and
                  bootm_mapsize.
 
                  kernel -- see the description of CONFIG_SYS_BOOTMAPSZ and
                  bootm_mapsize.
 
-  bootm_mapsize        - Size of the initial memory mapping for the Linux kernel.
+  bootm_mapsize - Size of the initial memory mapping for the Linux kernel.
                  This variable is given as a hexadecimal number and it
                  defines the size of the memory region starting at base
                  address bootm_low that is accessible by the Linux kernel
                  This variable is given as a hexadecimal number and it
                  defines the size of the memory region starting at base
                  address bootm_low that is accessible by the Linux kernel
@@ -3480,6 +3665,14 @@ List of environment variables (most likely not complete):
 
   fdt_high     - if set this restricts the maximum address that the
                  flattened device tree will be copied into upon boot.
 
   fdt_high     - if set this restricts the maximum address that the
                  flattened device tree will be copied into upon boot.
+                 For example, if you have a system with 1 GB memory
+                 at physical address 0x10000000, while Linux kernel
+                 only recognizes the first 704 MB as low memory, you
+                 may need to set fdt_high as 0x3C000000 to have the
+                 device tree blob be copied to the maximum address
+                 of the 704 MB low memory, so that Linux kernel can
+                 access it during the boot procedure.
+
                  If this is set to the special value 0xFFFFFFFF then
                  the fdt will not be copied at all on boot.  For this
                  to work it must reside in writable memory, have
                  If this is set to the special value 0xFFFFFFFF then
                  the fdt will not be copied at all on boot.  For this
                  to work it must reside in writable memory, have
@@ -3487,6 +3680,10 @@ List of environment variables (most likely not complete):
                  add the information it needs into it, and the memory
                  must be accessible by the kernel.
 
                  add the information it needs into it, and the memory
                  must be accessible by the kernel.
 
+  fdtcontroladdr- if set this is the address of the control flattened
+                 device tree used by U-Boot when CONFIG_OF_CONTROL is
+                 defined.
+
   i2cfast      - (PPC405GP|PPC405EP only)
                  if set to 'y' configures Linux I2C driver for fast
                  mode (400kHZ). This environment variable is used in
   i2cfast      - (PPC405GP|PPC405EP only)
                  if set to 'y' configures Linux I2C driver for fast
                  mode (400kHZ). This environment variable is used in
@@ -3594,12 +3791,12 @@ flash or offset in NAND flash.
 boards currenlty use other variables for these purposes, and some
 boards use these variables for other purposes.
 
 boards currenlty use other variables for these purposes, and some
 boards use these variables for other purposes.
 
-Image               File Name        RAM Address       Flash Location
------               ---------        -----------       --------------
-u-boot              u-boot           u-boot_addr_r     u-boot_addr
-Linux kernel        bootfile         kernel_addr_r     kernel_addr
-device tree blob    fdtfile          fdt_addr_r        fdt_addr
-ramdisk             ramdiskfile      ramdisk_addr_r    ramdisk_addr
+Image              File Name        RAM Address       Flash Location
+-----              ---------        -----------       --------------
+u-boot             u-boot           u-boot_addr_r     u-boot_addr
+Linux kernel       bootfile         kernel_addr_r     kernel_addr
+device tree blob    fdtfile         fdt_addr_r        fdt_addr
+ramdisk                    ramdiskfile      ramdisk_addr_r    ramdisk_addr
 
 The following environment variables may be used and automatically
 updated by the network boot commands ("bootp" and "rarpboot"),
 
 The following environment variables may be used and automatically
 updated by the network boot commands ("bootp" and "rarpboot"),
@@ -3714,7 +3911,7 @@ o If neither SROM nor the environment contain a MAC address, an error
   is raised.
 
 If Ethernet drivers implement the 'write_hwaddr' function, valid MAC addresses
   is raised.
 
 If Ethernet drivers implement the 'write_hwaddr' function, valid MAC addresses
-will be programmed into hardware as part of the initialization process.  This
+will be programmed into hardware as part of the initialization process.         This
 may be skipped by setting the appropriate 'ethmacskip' environment variable.
 The naming convention is as follows:
 "ethmacskip" (=>eth0), "eth1macskip" (=>eth1) etc.
 may be skipped by setting the appropriate 'ethmacskip' environment variable.
 The naming convention is as follows:
 "ethmacskip" (=>eth0), "eth1macskip" (=>eth1) etc.