Merge git://git.denx.de/u-boot-dm
[platform/kernel/u-boot.git] / README
diff --git a/README b/README
index 7958921..da74513 100644 (file)
--- a/README
+++ b/README
@@ -681,8 +681,10 @@ The following options need to be configured:
                CONFIG_ARM_ERRATA_742230
                CONFIG_ARM_ERRATA_743622
                CONFIG_ARM_ERRATA_751472
                CONFIG_ARM_ERRATA_742230
                CONFIG_ARM_ERRATA_743622
                CONFIG_ARM_ERRATA_751472
-               CONFIG_ARM_ERRATA_794072
                CONFIG_ARM_ERRATA_761320
                CONFIG_ARM_ERRATA_761320
+               CONFIG_ARM_ERRATA_773022
+               CONFIG_ARM_ERRATA_774769
+               CONFIG_ARM_ERRATA_794072
 
                If set, the workarounds for these ARM errata are applied early
                during U-Boot startup. Note that these options force the
 
                If set, the workarounds for these ARM errata are applied early
                during U-Boot startup. Note that these options force the
@@ -705,6 +707,7 @@ The following options need to be configured:
                CONFIG_ARM_ERRATA_454179
                CONFIG_ARM_ERRATA_621766
                CONFIG_ARM_ERRATA_798870
                CONFIG_ARM_ERRATA_454179
                CONFIG_ARM_ERRATA_621766
                CONFIG_ARM_ERRATA_798870
+               CONFIG_ARM_ERRATA_801819
 
 - Tegra SoC options:
                CONFIG_TEGRA_SUPPORT_NON_SECURE
 
 - Tegra SoC options:
                CONFIG_TEGRA_SUPPORT_NON_SECURE
@@ -793,18 +796,10 @@ The following options need to be configured:
 - vxWorks boot parameters:
 
                bootvx constructs a valid bootline using the following
 - vxWorks boot parameters:
 
                bootvx constructs a valid bootline using the following
-               environments variables: bootfile, ipaddr, serverip, hostname.
+               environments variables: bootdev, bootfile, ipaddr, netmask,
+               serverip, gatewayip, hostname, othbootargs.
                It loads the vxWorks image pointed bootfile.
 
                It loads the vxWorks image pointed bootfile.
 
-               CONFIG_SYS_VXWORKS_BOOT_DEVICE - The vxworks device name
-               CONFIG_SYS_VXWORKS_MAC_PTR - Ethernet 6 byte MA -address
-               CONFIG_SYS_VXWORKS_SERVERNAME - Name of the server
-               CONFIG_SYS_VXWORKS_BOOT_ADDR - Address of boot parameters
-
-               CONFIG_SYS_VXWORKS_ADD_PARAMS
-
-               Add it at the end of the bootline. E.g "u=username pw=secret"
-
                Note: If a "bootargs" environment is defined, it will overwride
                the defaults discussed just above.
 
                Note: If a "bootargs" environment is defined, it will overwride
                the defaults discussed just above.
 
@@ -839,18 +834,6 @@ The following options need to be configured:
                define this to a list of base addresses for each (supported)
                port. See e.g. include/configs/versatile.h
 
                define this to a list of base addresses for each (supported)
                port. See e.g. include/configs/versatile.h
 
-               CONFIG_PL011_SERIAL_RLCR
-
-               Some vendor versions of PL011 serial ports (e.g. ST-Ericsson U8500)
-               have separate receive and transmit line control registers.  Set
-               this variable to initialize the extra register.
-
-               CONFIG_PL011_SERIAL_FLUSH_ON_INIT
-
-               On some platforms (e.g. U8500) U-Boot is loaded by a second stage
-               boot loader that has already initialized the UART.  Define this
-               variable to flush the UART at init time.
-
                CONFIG_SERIAL_HW_FLOW_CONTROL
 
                Define this variable to enable hw flow control in serial driver.
                CONFIG_SERIAL_HW_FLOW_CONTROL
 
                Define this variable to enable hw flow control in serial driver.
@@ -948,6 +931,9 @@ The following options need to be configured:
                bytes are output before the console is initialised, the
                earlier bytes are discarded.
 
                bytes are output before the console is initialised, the
                earlier bytes are discarded.
 
+               Note that when printing the buffer a copy is made on the
+               stack so CONFIG_PRE_CON_BUF_SZ must fit on the stack.
+
                '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
 
@@ -974,8 +960,6 @@ The following options need to be configured:
                CONFIG_AUTOBOOT_PROMPT
                CONFIG_AUTOBOOT_DELAY_STR
                CONFIG_AUTOBOOT_STOP_STR
                CONFIG_AUTOBOOT_PROMPT
                CONFIG_AUTOBOOT_DELAY_STR
                CONFIG_AUTOBOOT_STOP_STR
-               CONFIG_AUTOBOOT_DELAY_STR2
-               CONFIG_AUTOBOOT_STOP_STR2
                CONFIG_ZERO_BOOTDELAY_CHECK
                CONFIG_RESET_TO_RETRY
 
                CONFIG_ZERO_BOOTDELAY_CHECK
                CONFIG_RESET_TO_RETRY
 
@@ -1047,9 +1031,7 @@ The following options need to be configured:
                Monitor commands can be included or excluded
                from the build by using the #include files
                <config_cmd_all.h> and #undef'ing unwanted
                Monitor commands can be included or excluded
                from the build by using the #include files
                <config_cmd_all.h> and #undef'ing unwanted
-               commands, or using <config_cmd_default.h>
-               and augmenting with additional #define's
-               for wanted commands.
+               commands, or adding #define's for wanted commands.
 
                The default command configuration includes all commands
                except those marked below with a "*".
 
                The default command configuration includes all commands
                except those marked below with a "*".
@@ -1382,9 +1364,6 @@ The following options need to be configured:
                Management command for E1000 devices.  When used on devices
                with SPI support you can reprogram the EEPROM from U-Boot.
 
                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_EEPRO100
                Support for Intel 82557/82559/82559ER chips.
                Optional CONFIG_EEPRO100_SROM_WRITE enables EEPROM
                CONFIG_EEPRO100
                Support for Intel 82557/82559/82559ER chips.
                Optional CONFIG_EEPRO100_SROM_WRITE enables EEPROM
@@ -1493,16 +1472,10 @@ The following options need to be configured:
                CONFIG_TPM
                Support TPM devices.
 
                CONFIG_TPM
                Support TPM devices.
 
-               CONFIG_TPM_TIS_I2C
-               Support for i2c bus TPM devices. Only one device
+               CONFIG_TPM_TIS_INFINEON
+               Support for Infineon i2c bus TPM devices. Only one device
                per system is supported at this time.
 
                per system is supported at this time.
 
-                       CONFIG_TPM_TIS_I2C_BUS_NUMBER
-                       Define the the i2c bus number for the TPM device
-
-                       CONFIG_TPM_TIS_I2C_SLAVE_ADDRESS
-                       Define the TPM's address on the i2c bus
-
                        CONFIG_TPM_TIS_I2C_BURST_LIMITATION
                        Define the burst count bytes upper limit
 
                        CONFIG_TPM_TIS_I2C_BURST_LIMITATION
                        Define the burst count bytes upper limit
 
@@ -1672,7 +1645,7 @@ The following options need to be configured:
                key for the Replay Protection Memory Block partition in eMMC.
 
 - USB Device Firmware Update (DFU) class support:
                key for the Replay Protection Memory Block partition in eMMC.
 
 - USB Device Firmware Update (DFU) class support:
-               CONFIG_DFU_FUNCTION
+               CONFIG_USB_FUNCTION_DFU
                This enables the USB portion of the DFU USB class
 
                CONFIG_CMD_DFU
                This enables the USB portion of the DFU USB class
 
                CONFIG_CMD_DFU
@@ -1717,6 +1690,9 @@ The following options need to be configured:
                sending again an USB request to the device.
 
 - USB Device Android Fastboot support:
                sending again an USB request to the device.
 
 - USB Device Android Fastboot support:
+               CONFIG_USB_FUNCTION_FASTBOOT
+               This enables the USB part of the fastboot gadget
+
                CONFIG_CMD_FASTBOOT
                This enables the command "fastboot" which enables the Android
                fastboot mode for the platform's USB device. Fastboot is a USB
                CONFIG_CMD_FASTBOOT
                This enables the command "fastboot" which enables the Android
                fastboot mode for the platform's USB device. Fastboot is a USB
@@ -1728,12 +1704,12 @@ The following options need to be configured:
                This enables support for booting images which use the Android
                image format header.
 
                This enables support for booting images which use the Android
                image format header.
 
-               CONFIG_USB_FASTBOOT_BUF_ADDR
+               CONFIG_FASTBOOT_BUF_ADDR
                The fastboot protocol requires a large memory buffer for
                downloads. Define this to the starting RAM address to use for
                downloaded images.
 
                The fastboot protocol requires a large memory buffer for
                downloads. Define this to the starting RAM address to use for
                downloaded images.
 
-               CONFIG_USB_FASTBOOT_BUF_SIZE
+               CONFIG_FASTBOOT_BUF_SIZE
                The fastboot protocol requires a large memory buffer for
                downloads. This buffer should be as large as possible for a
                platform. Define this to the size available RAM for fastboot.
                The fastboot protocol requires a large memory buffer for
                downloads. This buffer should be as large as possible for a
                platform. Define this to the size available RAM for fastboot.
@@ -2107,18 +2083,6 @@ CBFS (Coreboot Filesystem) support
                Some PHY like Intel LXT971A need extra delay after
                command issued before MII status register can be read
 
                Some PHY like Intel LXT971A need extra delay after
                command issued before MII status register can be read
 
-- Ethernet address:
-               CONFIG_ETHADDR
-               CONFIG_ETH1ADDR
-               CONFIG_ETH2ADDR
-               CONFIG_ETH3ADDR
-               CONFIG_ETH4ADDR
-               CONFIG_ETH5ADDR
-
-               Define a default value for Ethernet address to use
-               for the respective Ethernet interface, in case this
-               is not determined automatically.
-
 - IP address:
                CONFIG_IPADDR
 
 - IP address:
                CONFIG_IPADDR
 
@@ -2389,16 +2353,20 @@ CBFS (Coreboot Filesystem) support
 
                - drivers/i2c/i2c_mxc.c
                  - activate this driver with CONFIG_SYS_I2C_MXC
 
                - drivers/i2c/i2c_mxc.c
                  - activate this driver with CONFIG_SYS_I2C_MXC
+                 - enable bus 1 with CONFIG_SYS_I2C_MXC_I2C1
+                 - enable bus 2 with CONFIG_SYS_I2C_MXC_I2C2
+                 - enable bus 3 with CONFIG_SYS_I2C_MXC_I2C3
+                 - enable bus 4 with CONFIG_SYS_I2C_MXC_I2C4
                  - define speed for bus 1 with CONFIG_SYS_MXC_I2C1_SPEED
                  - define slave for bus 1 with CONFIG_SYS_MXC_I2C1_SLAVE
                  - define speed for bus 2 with CONFIG_SYS_MXC_I2C2_SPEED
                  - define slave for bus 2 with CONFIG_SYS_MXC_I2C2_SLAVE
                  - define speed for bus 3 with CONFIG_SYS_MXC_I2C3_SPEED
                  - define slave for bus 3 with CONFIG_SYS_MXC_I2C3_SLAVE
                  - define speed for bus 1 with CONFIG_SYS_MXC_I2C1_SPEED
                  - define slave for bus 1 with CONFIG_SYS_MXC_I2C1_SLAVE
                  - define speed for bus 2 with CONFIG_SYS_MXC_I2C2_SPEED
                  - define slave for bus 2 with CONFIG_SYS_MXC_I2C2_SLAVE
                  - define speed for bus 3 with CONFIG_SYS_MXC_I2C3_SPEED
                  - define slave for bus 3 with CONFIG_SYS_MXC_I2C3_SLAVE
+                 - define speed for bus 4 with CONFIG_SYS_MXC_I2C4_SPEED
+                 - define slave for bus 4 with CONFIG_SYS_MXC_I2C4_SLAVE
                If those defines are not set, default value is 100000
                for speed, and 0 for slave.
                If those defines are not set, default value is 100000
                for speed, and 0 for slave.
-                 - enable bus 3 with CONFIG_SYS_I2C_MXC_I2C3
-                 - enable bus 4 with CONFIG_SYS_I2C_MXC_I2C4
 
                - drivers/i2c/rcar_i2c.c:
                  - activate this driver with CONFIG_SYS_I2C_RCAR
 
                - drivers/i2c/rcar_i2c.c:
                  - activate this driver with CONFIG_SYS_I2C_RCAR
@@ -2873,8 +2841,8 @@ CBFS (Coreboot Filesystem) support
                completely disabled. Anybody can change or delete
                these parameters.
 
                completely disabled. Anybody can change or delete
                these parameters.
 
-               Alternatively, if you #define _both_ CONFIG_ETHADDR
-               _and_ CONFIG_OVERWRITE_ETHADDR_ONCE, a default
+               Alternatively, if you define _both_ an ethaddr in the
+               default env _and_ CONFIG_OVERWRITE_ETHADDR_ONCE, a default
                Ethernet address is installed in the environment,
                which can be changed exactly ONCE by the user. [The
                serial# is unaffected by this, i. e. it remains
                Ethernet address is installed in the environment,
                which can be changed exactly ONCE by the user. [The
                serial# is unaffected by this, i. e. it remains
@@ -3048,6 +3016,19 @@ CBFS (Coreboot Filesystem) support
                this is instead controlled by the value of
                /config/load-environment.
 
                this is instead controlled by the value of
                /config/load-environment.
 
+- Parallel Flash support:
+               CONFIG_SYS_NO_FLASH
+
+               Traditionally U-boot was run on systems with parallel NOR
+               flash. This option is used to disable support for parallel NOR
+               flash. This option should be defined if the board does not have
+               parallel flash.
+
+               If this option is not defined one of the generic flash drivers
+               (e.g.  CONFIG_FLASH_CFI_DRIVER or CONFIG_ST_SMI) must be
+               selected or the board must provide an implementation of the
+               flash API (see include/flash.h).
+
 - DataFlash Support:
                CONFIG_HAS_DATAFLASH
 
 - DataFlash Support:
                CONFIG_HAS_DATAFLASH
 
@@ -3079,11 +3060,6 @@ CBFS (Coreboot Filesystem) support
                Define this option to include a destructive SPI flash
                test ('sf test').
 
                Define this option to include a destructive SPI flash
                test ('sf test').
 
-               CONFIG_SPI_FLASH_BAR            Ban/Extended Addr Reg
-
-               Define this option to use the Bank addr/Extended addr
-               support on SPI flashes which has size > 16Mbytes.
-
                CONFIG_SF_DUAL_FLASH            Dual flash memories
 
                Define this option to use dual flash support where two flash
                CONFIG_SF_DUAL_FLASH            Dual flash memories
 
                Define this option to use dual flash support where two flash
@@ -3518,6 +3494,10 @@ FIT uImage format:
                without a fastmap.
                default: 0
 
                without a fastmap.
                default: 0
 
+               CONFIG_MTD_UBI_FM_DEBUG
+               Enable UBI fastmap debug
+               default: 0
+
 - UBIFS support
                CONFIG_CMD_UBIFS
 
 - UBIFS support
                CONFIG_CMD_UBIFS
 
@@ -4151,6 +4131,10 @@ Configuration Settings:
                list, simply add an entry for the same variable name to the
                ".flags" variable.
 
                list, simply add an entry for the same variable name to the
                ".flags" variable.
 
+       If CONFIG_REGEX is defined, the variable_name above is evaluated as a
+       regular expression. This allows multiple variables to define the same
+       flags without explicitly listing them for each variable.
+
 - CONFIG_ENV_ACCESS_IGNORE_FORCE
        If defined, don't allow the -f switch to env set override variable
        access flags.
 - CONFIG_ENV_ACCESS_IGNORE_FORCE
        If defined, don't allow the -f switch to env set override variable
        access flags.
@@ -5064,6 +5048,33 @@ within that device.
        normal addressable memory via the LBC. CONFIG_SYS_LS_MC_FW_ADDR is the
        virtual address in NOR flash.
 
        normal addressable memory via the LBC. CONFIG_SYS_LS_MC_FW_ADDR is the
        virtual address in NOR flash.
 
+Freescale Layerscape Debug Server Support:
+-------------------------------------------
+The Freescale Layerscape Debug Server Support supports the loading of
+"Debug Server firmware" and triggering SP boot-rom.
+This firmware often needs to be loaded during U-Boot booting.
+
+- CONFIG_FSL_DEBUG_SERVER
+       Enable the Debug Server for Layerscape SoCs.
+
+- CONFIG_SYS_DEBUG_SERVER_DRAM_BLOCK_MIN_SIZE
+       Define minimum DDR size required for debug server image
+
+- CONFIG_SYS_MEM_TOP_HIDE_MIN
+       Define minimum DDR size to be hided from top of the DDR memory
+
+Reproducible builds
+-------------------
+
+In order to achieve reproducible builds, timestamps used in the U-Boot build
+process have to be set to a fixed value.
+
+This is done using the SOURCE_DATE_EPOCH environment variable.
+SOURCE_DATE_EPOCH is to be set on the build host's shell, not as a configuration
+option for U-Boot or an environment variable in U-Boot.
+
+SOURCE_DATE_EPOCH should be set to a number of seconds since the epoch, in UTC.
+
 Building the Software:
 ======================
 
 Building the Software:
 ======================
 
@@ -5473,7 +5484,7 @@ loaded to, and "Flash Location" gives the image's address in NOR
 flash or offset in NAND flash.
 
 *Note* - these variables don't have to be defined for all boards, some
 flash or offset in NAND flash.
 
 *Note* - these variables don't have to be defined for all boards, some
-boards currenlty use other variables for these purposes, and some
+boards currently use other variables for these purposes, and some
 boards use these variables for other purposes.
 
 Image              File Name        RAM Address       Flash Location
 boards use these variables for other purposes.
 
 Image              File Name        RAM Address       Flash Location
@@ -5549,6 +5560,10 @@ override any association in the static list. You can define
 CONFIG_ENV_CALLBACK_LIST_DEFAULT to a list (string) to define the
 ".callbacks" environment variable in the default or embedded environment.
 
 CONFIG_ENV_CALLBACK_LIST_DEFAULT to a list (string) to define the
 ".callbacks" environment variable in the default or embedded environment.
 
+If CONFIG_REGEX is defined, the variable_name above is evaluated as a
+regular expression. This allows multiple variables to be connected to
+the same callback without explicitly listing them all out.
+
 
 Command Line Parsing:
 =====================
 
 Command Line Parsing:
 =====================
@@ -5623,7 +5638,8 @@ o If both the SROM and the environment contain a MAC address, and the
   warning is printed.
 
 o If neither SROM nor the environment contain a MAC address, an error
   warning is printed.
 
 o If neither SROM nor the environment contain a MAC address, an error
-  is raised.
+  is raised. If CONFIG_NET_RANDOM_ETHADDR is defined, then in this case
+  a random, locally-assigned MAC is used.
 
 If Ethernet drivers implement the 'write_hwaddr' function, valid MAC addresses
 will be programmed into hardware as part of the initialization process.         This
 
 If Ethernet drivers implement the 'write_hwaddr' function, valid MAC addresses
 will be programmed into hardware as part of the initialization process.         This