123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410 |
- menu "Boot timing"
- config BOOTSTAGE
- bool "Boot timing and reporting"
- help
- Enable recording of boot time while booting. To use it, insert
- calls to bootstage_mark() with a suitable BOOTSTAGE_ID from
- bootstage.h. Only a single entry is recorded for each ID. You can
- give the entry a name with bootstage_mark_name(). You can also
- record elapsed time in a particular stage using bootstage_start()
- before starting and bootstage_accum() when finished. Bootstage will
- add up all the accumulated time and report it.
- Normally, IDs are defined in bootstage.h but a small number of
- additional 'user' IDs can be used by passing BOOTSTAGE_ID_ALLOC
- as the ID.
- Calls to show_boot_progress() will also result in log entries but
- these will not have names.
- config BOOTSTAGE_REPORT
- bool "Display a detailed boot timing report before booting the OS"
- depends on BOOTSTAGE
- help
- Enable output of a boot time report just before the OS is booted.
- This shows how long it took U-Boot to go through each stage of the
- boot process. The report looks something like this:
- Timer summary in microseconds:
- Mark Elapsed Stage
- 0 0 reset
- 3,575,678 3,575,678 board_init_f start
- 3,575,695 17 arch_cpu_init A9
- 3,575,777 82 arch_cpu_init done
- 3,659,598 83,821 board_init_r start
- 3,910,375 250,777 main_loop
- 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
- 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.
- config BOOTSTAGE_FDT
- bool "Store boot timing information in the OS device tree"
- depends on BOOTSTAGE
- help
- Stash the bootstage information in the FDT. A root 'bootstage'
- node is created with each bootstage id as a child. Each child
- has a 'name' property and either 'mark' containing the
- mark time in microseconds, or 'accum' containing the
- accumulated time for that bootstage id in microseconds.
- For example:
- bootstage {
- 154 {
- name = "board_init_f";
- mark = <3575678>;
- };
- 170 {
- name = "lcd";
- accum = <33482>;
- };
- };
- Code in the Linux kernel can find this in /proc/devicetree.
- config BOOTSTAGE_STASH
- bool "Stash the boot timing information in memory before booting OS"
- depends on BOOTSTAGE
- help
- Some OSes do not support device tree. Bootstage can instead write
- the boot timing information in a binary format at a given address.
- This happens through a call to bootstage_stash(), typically in
- the CPU's cleanup_before_linux() function. You can use the
- 'bootstage stash' and 'bootstage unstash' commands to do this on
- the command line.
- config BOOTSTAGE_STASH_ADDR
- hex "Address to stash boot timing information"
- default 0
- help
- Provide an address which will not be overwritten by the OS when it
- starts, so that it can read this information when ready.
- config BOOTSTAGE_STASH_SIZE
- hex "Size of boot timing stash region"
- default 4096
- help
- This should be large enough to hold the bootstage stash. A value of
- 4096 (4KiB) is normally plenty.
- endmenu
- menu "Boot media"
- config NOR_BOOT
- bool "Support for booting from NOR flash"
- depends on NOR
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via NOR. In this case we will enable certain pinmux early
- as the ROM only partially sets up pinmux. We also default to using
- NOR for environment.
- config NAND_BOOT
- bool "Support for booting from NAND flash"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via NAND flash. This is not a must, some SoCs need this,
- some not.
- config ONENAND_BOOT
- bool "Support for booting from ONENAND"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via ONENAND. This is not a must, some SoCs need this,
- some not.
- config QSPI_BOOT
- bool "Support for booting from QSPI flash"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via QSPI flash. This is not a must, some SoCs need this,
- some not.
- config SATA_BOOT
- bool "Support for booting from SATA"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via SATA. This is not a must, some SoCs need this,
- some not.
- config SD_BOOT
- bool "Support for booting from SD/EMMC"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via SD/EMMC. This is not a must, some SoCs need this,
- some not.
- config SPI_BOOT
- bool "Support for booting from SPI flash"
- default n
- help
- Enabling this will make a U-Boot binary that is capable of being
- booted via SPI flash. This is not a must, some SoCs need this,
- some not.
- endmenu
- config BOOTDELAY
- int "delay in seconds before automatically booting"
- default 2
- depends on AUTOBOOT
- help
- Delay before automatically running bootcmd;
- set to 0 to autoboot with no delay, but you can stop it by key input.
- set to -1 to disable autoboot.
- set to -2 to autoboot with no delay and not check for abort
- See doc/README.autoboot for details.
- 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
- This provides a way to record console output (and provide console
- input) through circular buffers. This is mostly useful for testing.
- Console output is recorded even when the console is silent.
- To enable console recording, call console_record_reset_enable()
- from your code.
- config CONSOLE_RECORD_OUT_SIZE
- hex "Output buffer size"
- depends on CONSOLE_RECORD
- default 0x400 if CONSOLE_RECORD
- help
- Set the size of the console output buffer. When this fills up, no
- more data will be recorded until some is removed. The buffer is
- allocated immediately after the malloc() region is ready.
- config CONSOLE_RECORD_IN_SIZE
- hex "Input buffer size"
- depends on CONSOLE_RECORD
- default 0x100 if CONSOLE_RECORD
- help
- Set the size of the console input buffer. When this contains data,
- tstc() and getc() will use this in preference to real device input.
- The buffer is allocated immediately after the malloc() region is
- ready.
- config IDENT_STRING
- string "Board specific string to be added to uboot version string"
- help
- This options adds the board specific name to u-boot version.
- 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
- default n
- 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"
- default n
- 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
- help
- If this variable is defined, an environment variable
- named "ver" is created by U-Boot showing the U-Boot
- version as printed by the "version" command.
- Any change to this variable will be reverted at the
- next reset.
- config DISPLAY_CPUINFO
- bool "Display information about the CPU during start up"
- default y if ARM || BLACKFIN || 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
- to do this.
- config DISPLAY_BOARDINFO
- bool "Display information about the board during start up"
- default y if ARM || M68K || MIPS || PPC || SPARC || 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.
- source "common/spl/Kconfig"
|