📄 readme.autoboot
字号:
/* * (C) Copyright 2001 * Dave Ellis, SIXNET, dge@sixnetio.com * * See file CREDITS for list of people who contributed to this * project. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License as * published by the Free Software Foundation; either version 2 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, * MA 02111-1307 USA */Using autoboot configuration options====================================The basic autoboot configuration options are documented in the mainU-Boot README. See it for details. They are: bootdelay bootcmd CONFIG_BOOTDELAY CONFIG_BOOTCOMMANDSome additional options that make autoboot safer in a productionproduct are documented here.Why use them?-------------The basic autoboot feature allows a system to automatically boot tothe real application (such as Linux) without a user having to enterany commands. If any key is pressed before the boot delay timeexpires, U-Boot stops the autoboot process, gives a U-Boot promptand waits forever for a command. That's a good thing if you pressed akey because you wanted to get the prompt.It's not so good if the key press was a stray character on theconsole serial port, say because a user who knows nothing aboutU-Boot pressed a key before the system had time to boot. It's evenworse on an embedded product that doesn't have a console duringnormal use. The modem plugged into that console port sends acharacter at the wrong time and the system hangs, with no clue as towhy it isn't working.You might want the system to autoboot to recover after an externalconfiguration program stops autoboot. If the configuration programdies or loses its connection (modems can disconnect at the worsttime) U-Boot will patiently wait forever for it to finish.These additional configuration options can help provide a system thatboots when it should, but still allows access to U-Boot.What they do------------ CONFIG_BOOT_RETRY_TIME CONFIG_BOOT_RETRY_MIN "bootretry" environment variable These options determine what happens after autoboot is stopped and U-Boot is waiting for commands. CONFIG_BOOT_RETRY_TIME must be defined to enable the boot retry feature. If the environment variable "bootretry" is found then its value is used, otherwise the retry timeout is CONFIG_BOOT_RETRY_TIME. CONFIG_BOOT_RETRY_MIN is optional and defaults to CONFIG_BOOT_RETRY_TIME. All times are in seconds. If the retry timeout is negative, the U-Boot command prompt never times out. Otherwise it is forced to be at least CONFIG_BOOT_RETRY_MIN seconds. If no valid U-Boot command is entered before the specified time the boot delay sequence is restarted. Each command that U-Boot executes restarts the timeout. If CONFIG_BOOT_RETRY_TIME < 0 the feature is there, but doesn't do anything unless the environment variable "bootretry" is >= 0. CONFIG_AUTOBOOT_KEYED CONFIG_AUTOBOOT_PROMPT CONFIG_AUTOBOOT_DELAY_STR CONFIG_AUTOBOOT_STOP_STR CONFIG_AUTOBOOT_DELAY_STR2 CONFIG_AUTOBOOT_STOP_STR2 "bootdelaykey" environment variable "bootstopkey" environment variable "bootdelaykey2" environment variable "bootstopkey2" environment variable These options give more control over stopping autoboot. When they are used a specific character or string is required to stop or delay autoboot. Define CONFIG_AUTOBOOT_KEYED (no value required) to enable this group of options. CONFIG_AUTOBOOT_DELAY_STR, CONFIG_AUTOBOOT_STOP_STR or both should be specified (or specified by the corresponding environment variable), otherwise there is no way to stop autoboot. CONFIG_AUTOBOOT_PROMPT is displayed before the boot delay selected by CONFIG_BOOTDELAY starts. If it is not defined there is no output indicating that autoboot is in progress. If "%d" is included, it is replaced by the number of seconds remaining before autoboot will start, but it does not count down the seconds. "autoboot in %d seconds\n" is a reasonable prompt. If CONFIG_AUTOBOOT_DELAY_STR or "bootdelaykey" is specified and this string is received from console input before autoboot starts booting, U-Boot gives a command prompt. The U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is used, otherwise it never times out. If CONFIG_AUTOBOOT_STOP_STR or "bootstopkey" is specified and this string is received from console input before autoboot starts booting, U-Boot gives a command prompt. The U-Boot prompt never times out, even if CONFIG_BOOT_RETRY_TIME is used. The string recognition is not very sophisticated. If a partial match is detected, the first non-matching character is checked to see if starts a new match. There is no check for a shorter partial match, so it's best if the first character of a key string does not appear in the rest of the string. Using the CONFIG_AUTOBOOT_DELAY_STR2 #define or the "bootdelaykey2" environment variable and/or the CONFIG_AUTOBOOT_STOP_STR2 #define or the "bootstopkey" environment variable you can specify a second, alternate string (which allows you to have two "password" strings). CONFIG_ZERO_BOOTDELAY_CHECK If this option is defined, you can stop the autoboot process by hitting a key even in that case when "bootdelay" has been set to 0. You can set "bootdelay" to a negative value to prevent the check for console input. CONFIG_RESET_TO_RETRY (Only effective when CONFIG_BOOT_RETRY_TIME is also set) After the countdown timed out, the board will be reset to restart again.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -