summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWolfgang Denk <wd@denx.de>2011-01-11 20:56:34 +0100
committerWolfgang Denk <wd@denx.de>2011-01-11 20:56:34 +0100
commit3e5ab1af245da25633954c5b51c85cc8da0a5036 (patch)
tree41efddcb4aa772f915c2f695c1f0537d28495d3c
parent0e7790d450000c1a2cda40458adb28707eaa5041 (diff)
downloadu-boot-imx-3e5ab1af245da25633954c5b51c85cc8da0a5036.zip
u-boot-imx-3e5ab1af245da25633954c5b51c85cc8da0a5036.tar.gz
u-boot-imx-3e5ab1af245da25633954c5b51c85cc8da0a5036.tar.bz2
Revert "boot cmds: convert to getenv_yesno() with autostart"
This reverts commit 5a442c0addc69d0c4b58e98e5aec1cf07576debb. This commit changed the behaviour of getenv_yesno() (both the default behaviour and the documented behaviour for abbreviated arguments) which resulted in problems in several areas. Signed-off-by: Wolfgang Denk <wd@denx.de>
-rw-r--r--common/cmd_fdc.c3
-rw-r--r--common/cmd_fdos.c2
-rw-r--r--common/cmd_ide.c2
-rw-r--r--common/cmd_nand.c4
-rw-r--r--common/cmd_net.c2
-rw-r--r--common/cmd_scsi.c2
-rw-r--r--common/cmd_usb.c2
7 files changed, 9 insertions, 8 deletions
diff --git a/common/cmd_fdc.c b/common/cmd_fdc.c
index d373480..cdb050c 100644
--- a/common/cmd_fdc.c
+++ b/common/cmd_fdc.c
@@ -721,6 +721,7 @@ int do_fdcboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
image_header_t *hdr; /* used for fdc boot */
unsigned char boot_drive;
int i,nrofblk;
+ char *ep;
int rcode = 0;
#if defined(CONFIG_FIT)
const void *fit_hdr = NULL;
@@ -823,7 +824,7 @@ int do_fdcboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
load_addr = addr;
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
diff --git a/common/cmd_fdos.c b/common/cmd_fdos.c
index 238abdd..2af4ca0 100644
--- a/common/cmd_fdos.c
+++ b/common/cmd_fdos.c
@@ -99,7 +99,7 @@ int do_fdosboot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
size, load_addr);
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
local_args[1] = NULL;
diff --git a/common/cmd_ide.c b/common/cmd_ide.c
index f627881..df7bdf5 100644
--- a/common/cmd_ide.c
+++ b/common/cmd_ide.c
@@ -496,7 +496,7 @@ int do_diskboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
load_addr = addr;
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
diff --git a/common/cmd_nand.c b/common/cmd_nand.c
index c547a68..6783645 100644
--- a/common/cmd_nand.c
+++ b/common/cmd_nand.c
@@ -711,7 +711,7 @@ static int nand_load_image(cmd_tbl_t *cmdtp, nand_info_t *nand,
ulong offset, ulong addr, char *cmd)
{
int r;
- char *s;
+ char *ep, *s;
size_t cnt;
image_header_t *hdr;
#if defined(CONFIG_FIT)
@@ -787,7 +787,7 @@ static int nand_load_image(cmd_tbl_t *cmdtp, nand_info_t *nand,
load_addr = addr;
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep, "yes") == 0)) {
char *local_args[2];
local_args[0] = cmd;
diff --git a/common/cmd_net.c b/common/cmd_net.c
index 00e0ea8..8c6f5c8 100644
--- a/common/cmd_net.c
+++ b/common/cmd_net.c
@@ -211,7 +211,7 @@ netboot_common (proto_t proto, cmd_tbl_t *cmdtp, int argc, char * const argv[])
flush_cache(load_addr, size);
/* Loading ok, check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((s = getenv("autostart")) != NULL) && (strcmp(s,"yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
local_args[1] = NULL;
diff --git a/common/cmd_scsi.c b/common/cmd_scsi.c
index 63a46de..be4fe74 100644
--- a/common/cmd_scsi.c
+++ b/common/cmd_scsi.c
@@ -327,7 +327,7 @@ int do_scsiboot (cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
flush_cache (addr, (cnt+1)*info.blksz);
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep,"yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
local_args[1] = NULL;
diff --git a/common/cmd_usb.c b/common/cmd_usb.c
index 8439198..b04a8df 100644
--- a/common/cmd_usb.c
+++ b/common/cmd_usb.c
@@ -488,7 +488,7 @@ int do_usbboot(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
flush_cache(addr, (cnt+1)*info.blksz);
/* Check if we should attempt an auto-start */
- if (getenv_yesno("autostart")) {
+ if (((ep = getenv("autostart")) != NULL) && (strcmp(ep, "yes") == 0)) {
char *local_args[2];
local_args[0] = argv[0];
local_args[1] = NULL;