]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - common/Kconfig
common: Drop LOGLEVEL to 4
[people/ms/u-boot.git] / common / Kconfig
index 6d835cae931367fc417155afcbfc1340f21313b9..3c99650f0c9ecef52f7a040d94a90ae66aaf864c 100644 (file)
@@ -18,6 +18,15 @@ config BOOTSTAGE
          Calls to show_boot_progress() will also result in log entries but
          these will not have names.
 
+config SPL_BOOTSTAGE
+       bool "Boot timing and reported in SPL"
+       depends on BOOTSTAGE
+       help
+         Enable recording of boot time in SPL. To make this visible to U-Boot
+         proper, enable BOOTSTAGE_STASH as well. This will stash the timing
+         information when SPL finishes and load it when U-Boot proper starts
+         up.
+
 config BOOTSTAGE_REPORT
        bool "Display a detailed boot timing report before booting the OS"
        depends on BOOTSTAGE
@@ -37,14 +46,19 @@ config BOOTSTAGE_REPORT
                 29,916,167 26,005,792  bootm_start
                 30,361,327    445,160  start_kernel
 
-config BOOTSTAGE_USER_COUNT
-       hex "Number of boot ID numbers available for user use"
-       default 20
+config BOOTSTAGE_RECORD_COUNT
+       int "Number of boot stage records to store"
+       default 30
+       help
+         This is the size of the bootstage record list and is the maximum
+         number of bootstage records that can be recorded.
+
+config SPL_BOOTSTAGE_RECORD_COUNT
+       int "Number of boot stage records to store for SPL"
+       default 5
        help
-         This is the number of available user bootstage records.
-         Each time you call bootstage_mark(BOOTSTAGE_ID_ALLOC, ...)
-         a new ID will be allocated from this stash. If you exceed
-         the limit, recording will stop.
+         This is the size of the bootstage record list and is the maximum
+         number of bootstage records that can be recorded.
 
 config BOOTSTAGE_FDT
        bool "Store boot timing information in the OS device tree"
@@ -90,7 +104,7 @@ config BOOTSTAGE_STASH_ADDR
 
 config BOOTSTAGE_STASH_SIZE
        hex "Size of boot timing stash region"
-       default 4096
+       default 0x1000
        help
          This should be large enough to hold the bootstage stash. A value of
          4096 (4KiB) is normally plenty.
@@ -170,6 +184,30 @@ config BOOTDELAY
 
          See doc/README.autoboot for details.
 
+config USE_BOOTARGS
+       bool "Enable boot arguments"
+       help
+         Provide boot arguments to bootm command. Boot arguments are specified
+         in CONFIG_BOOTARGS option. Enable this option to be able to specify
+         CONFIG_BOOTARGS string. If this option is disabled, CONFIG_BOOTARGS
+         will be undefined and won't take any space in U-Boot image.
+
+config BOOTARGS
+       string "Boot arguments"
+       depends on USE_BOOTARGS
+       help
+         This can be used to pass arguments to the bootm command. The value of
+         CONFIG_BOOTARGS goes into the environment value "bootargs". Note that
+         this value will also override the "chosen" node in FDT blob.
+
+menu "Console"
+
+config MENU
+       bool
+       help
+         This is the library functionality to provide a text-based menu of
+         choices for the user to make choices with.
+
 config CONSOLE_RECORD
        bool "Console recording"
        help
@@ -203,17 +241,189 @@ config IDENT_STRING
        help
          This options adds the board specific name to u-boot version.
 
+config LOGLEVEL
+       int "loglevel"
+       default 4
+       range 0 8
+       help
+         All Messages with a loglevel smaller than the console loglevel will
+         be compiled in. The loglevels are defined as follows:
+
+         0 (KERN_EMERG)          system is unusable
+         1 (KERN_ALERT)          action must be taken immediately
+         2 (KERN_CRIT)           critical conditions
+         3 (KERN_ERR)            error conditions
+         4 (KERN_WARNING)        warning conditions
+         5 (KERN_NOTICE)         normal but significant condition
+         6 (KERN_INFO)           informational
+         7 (KERN_DEBUG)          debug-level messages
+
+config SPL_LOGLEVEL
+       int
+       default LOGLEVEL
+
+config SILENT_CONSOLE
+       bool "Support a silent console"
+       help
+         This option allows the console to be silenced, meaning that no
+         output will appear on the console devices. This is controlled by
+         setting the environment vaariable 'silent' to a non-empty value.
+         Note this also silences the console when booting Linux.
+
+         When the console is set up, the variable is checked, and the
+         GD_FLG_SILENT flag is set. Changing the environment variable later
+         will update the flag.
+
+config SILENT_U_BOOT_ONLY
+       bool "Only silence the U-Boot console"
+       depends on SILENT_CONSOLE
+       help
+         Normally when the U-Boot console is silenced, Linux's console is
+         also silenced (assuming the board boots into Linux). This option
+         allows the linux console to operate normally, even if U-Boot's
+         is silenced.
+
+config SILENT_CONSOLE_UPDATE_ON_SET
+       bool "Changes to the 'silent' environment variable update immediately"
+       depends on SILENT_CONSOLE
+       default y if SILENT_CONSOLE
+       help
+         When the 'silent' environment variable is changed, update the
+         console silence flag immediately. This allows 'setenv' to be used
+         to silence or un-silence the console.
+
+         The effect is that any change to the variable will affect the
+         GD_FLG_SILENT flag.
+
+config SILENT_CONSOLE_UPDATE_ON_RELOC
+       bool "Allow flags to take effect on relocation"
+       depends on SILENT_CONSOLE
+       help
+         In some cases the environment is not available until relocation
+         (e.g. NAND). This option makes the value of the 'silent'
+         environment variable take effect at relocation.
+
+config PRE_CONSOLE_BUFFER
+       bool "Buffer characters before the console is available"
+       help
+         Prior to the console being initialised (i.e. serial UART
+         initialised etc) all console output is silently discarded.
+         Defining CONFIG_PRE_CONSOLE_BUFFER will cause U-Boot to
+         buffer any console messages prior to the console being
+         initialised to a buffer. The buffer is a circular buffer, so
+         if it overflows, earlier output is discarded.
+
+         Note that this is not currently supported in SPL. It would be
+         useful to be able to share the pre-console buffer with SPL.
+
+config PRE_CON_BUF_SZ
+       int "Sets the size of the pre-console buffer"
+       depends on PRE_CONSOLE_BUFFER
+       default 4096
+       help
+         The size of the pre-console buffer affects how much console output
+         can be held before it overflows and starts discarding earlier
+         output. Normally there is very little output at this early stage,
+         unless debugging is enabled, so allow enough for ~10 lines of
+         text.
+
+         This is a useful feature if you are using a video console and
+         want to see the full boot output on the console. Without this
+         option only the post-relocation output will be displayed.
+
+config PRE_CON_BUF_ADDR
+       hex "Address of the pre-console buffer"
+       depends on PRE_CONSOLE_BUFFER
+       default 0x2f000000 if ARCH_SUNXI && MACH_SUN9I
+       default 0x4f000000 if ARCH_SUNXI && !MACH_SUN9I
+       help
+         This sets the start address of the pre-console buffer. This must
+         be in available memory and is accessed before relocation and
+         possibly before DRAM is set up. Therefore choose an address
+         carefully.
+
+         We should consider removing this option and allocating the memory
+         in board_init_f_init_reserve() instead.
+
+config CONSOLE_MUX
+       bool "Enable console multiplexing"
+       default y if DM_VIDEO || VIDEO || LCD
+       help
+         This allows multiple devices to be used for each console 'file'.
+         For example, stdout can be set to go to serial and video.
+         Similarly, stdin can be set to come from serial and keyboard.
+         Input can be provided from either source. Console multiplexing
+         adds a small amount of size to U-Boot.  Changes to the environment
+         variables stdout, stdin and stderr will take effect immediately.
+
+config SYS_CONSOLE_IS_IN_ENV
+       bool "Select console devices from the environment"
+       default y if CONSOLE_MUX
+       help
+         This allows multiple input/output devices to be set at boot time.
+         For example, if stdout is set to "serial,video" then output will
+         be sent to both the serial and video devices on boot. The
+         environment variables can be updated after boot to change the
+         input/output devices.
+
+config SYS_CONSOLE_OVERWRITE_ROUTINE
+       bool "Allow board control over console overwriting"
+       help
+         If this is enabled, and the board-specific function
+         overwrite_console() returns 1, the stdin, stderr and stdout are
+         switched to the serial port, else the settings in the environment
+         are used. If this is not enabled, the console will not be switched
+         to serial.
+
+config SYS_CONSOLE_ENV_OVERWRITE
+       bool "Update environment variables during console init"
+       help
+         The console environment variables (stdout, stdin, stderr) can be
+         used to determine the correct console devices on start-up. This
+         option writes the console devices to these variables on console
+         start-up (after relocation). This causes the environment to be
+         updated to match the console devices actually chosen.
+
+config SYS_CONSOLE_INFO_QUIET
+       bool "Don't display the console devices on boot"
+       help
+         Normally U-Boot displays the current settings for stdout, stdin
+         and stderr on boot when the post-relocation console is set up.
+         Enable this option to supress this output. It can be obtained by
+         calling stdio_print_current_devices() from board code.
+
+config SYS_STDIO_DEREGISTER
+       bool "Allow deregistering stdio devices"
+       default y if USB_KEYBOARD
+       help
+         Generally there is no need to deregister stdio devices since they
+         are never deactivated. But if a stdio device is used which can be
+         removed (for example a USB keyboard) then this option can be
+         enabled to ensure this is handled correctly.
+
+endmenu
+
+config DTB_RESELECT
+       bool "Support swapping dtbs at a later point in boot"
+       depends on FIT_EMBED
+       help
+         It is possible during initial boot you may need to use a generic
+         dtb until you can fully determine the board your running on. This
+         config allows boards to implement a function at a later point
+         during boot to switch to the "correct" dtb.
+
+config FIT_EMBED
+       bool "Support a FIT image embedded in the U-boot image"
+       help
+         This option provides hooks to allow U-boot to parse an
+         appended FIT image and enable board specific code to then select
+         the correct DTB to be used.
+
 config DEFAULT_FDT_FILE
        string "Default fdt file"
        help
          This option is used to set the default fdt file to boot OS.
 
-config SYS_NO_FLASH
-       bool "Disable support for parallel NOR flash"
-       default n
-       help
-         This option is used to disable support for parallel NOR flash.
-
 config VERSION_VARIABLE
        bool "add U-Boot environment variable vers"
        default n
@@ -224,9 +434,19 @@ config VERSION_VARIABLE
          Any change to this variable will be reverted at the
          next reset.
 
+config BOARD_LATE_INIT
+       bool
+       help
+         Sometimes board require some initialization code that might
+         require once the actual init done, example saving board specific env,
+         boot-modes etc. which eventually done at late.
+
+         So this config enable the late init code with the help of board_late_init
+         function which should defined on respective boards.
+
 config DISPLAY_CPUINFO
        bool "Display information about the CPU during start up"
-       default y if ARM || BLACKFIN || NIOS2 || X86 || XTENSA
+       default y if ARM || NIOS2 || X86 || XTENSA
        help
          Display information about the CPU that U-Boot is running on
          when U-Boot starts up. The function print_cpuinfo() is called
@@ -234,10 +454,51 @@ config DISPLAY_CPUINFO
 
 config DISPLAY_BOARDINFO
        bool "Display information about the board during start up"
-       default y if ARM || M68K || MIPS || PPC || SPARC || XTENSA
+       default y if ARM || M68K || MIPS || PPC || SANDBOX || XTENSA
        help
          Display information about the board that U-Boot is running on
          when U-Boot starts up. The board function checkboard() is called
          to do this.
 
+menu "Start-up hooks"
+
+config ARCH_EARLY_INIT_R
+       bool "Call arch-specific init soon after relocation"
+       help
+         With this option U-Boot will call arch_early_init_r() soon after
+         relocation. Driver model is running by this point, and the cache
+         is on. Note that board_early_init_r() is called first, if
+         enabled. This can be used to set up architecture-specific devices.
+
+config ARCH_MISC_INIT
+       bool "Call arch-specific init after relocation, when console is ready"
+       help
+         With this option U-Boot will call arch_misc_init() after
+         relocation to allow miscellaneous arch-dependent initialisation
+         to be performed. This function should be defined by the board
+         and will be called after the console is set up, after relocaiton.
+
+config BOARD_EARLY_INIT_F
+       bool "Call board-specific init before relocation"
+       help
+         Some boards need to perform initialisation as soon as possible
+         after boot. With this option, U-Boot calls board_early_init_f()
+         after driver model is ready in the pre-relocation init sequence.
+         Note that the normal serial console is not yet set up, but the
+         debug UART will be available if enabled.
+
+endmenu
+
+menu "Security support"
+
+config HASH
+       bool # "Support hashing API (SHA1, SHA256, etc.)"
+       help
+         This provides a way to hash data in memory using various supported
+         algorithms (such as SHA1, MD5, CRC32). The API is defined in hash.h
+         and the algorithms it supports are defined in common/hash.c. See
+         also CMD_HASH for command-line access.
+
+endmenu
+
 source "common/spl/Kconfig"