diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2007-06-26 19:41:00 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2007-06-26 19:41:00 +0000 |
commit | 86e1d1978ecec8fabe24ec5ec792d7b1b0fa1389 (patch) | |
tree | fb88dfa0958c9c993a3d2c54ae4635bee36afceb | |
parent | a83ac994c3a6948ab83d8de78fc9d1ae55451fce (diff) | |
download | upstream-86e1d1978ecec8fabe24ec5ec792d7b1b0fa1389.tar.gz upstream-86e1d1978ecec8fabe24ec5ec792d7b1b0fa1389.tar.bz2 upstream-86e1d1978ecec8fabe24ec5ec792d7b1b0fa1389.zip |
calling of prom_detect_board is needed only when we still don't know the board
SVN-Revision: 7736
-rw-r--r-- | target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c | 5 | ||||
-rw-r--r-- | target/linux/adm5120-2.6/files/arch/mips/adm5120/prom.c | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c index 87e3d865a5..6d512f1a75 100644 --- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c +++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c @@ -206,7 +206,7 @@ static struct adm5120_board __initdata adm5120_boards[] = { .name = "Infineon EASY 83000", .mach_type = MACH_ADM5120_EASY83000, .has_usb = 0, - .iface_num = 0, + .iface_num = 6, .flash0_size = 4*1024*1024, }, { @@ -880,7 +880,8 @@ static void __init adm5120_detect_board(void) if (t == MACH_ADM5120_UNKNOWN) t = uboot_detect_board(); } else { - t = prom_detect_board(); + if (t == MACH_ADM5120_UNKNOWN) + t = prom_detect_board(); } for (board = adm5120_boards; board->mach_type != MACH_ADM5120_UNKNOWN; diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/prom.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/prom.c index a288b073ca..c2e1dcbae1 100644 --- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/prom.c +++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/prom.c @@ -32,7 +32,7 @@ #include <asm/mach-adm5120/adm5120_info.h> -static char **prom_envp; +static char **prom_envp = NULL; void setup_prom_printf(int); void prom_printf(char *, ...); @@ -106,7 +106,9 @@ void __init prom_init(void) { char *cmd; - prom_envp = (char **)fw_arg2; + if ((fw_arg2 & 3) == 0) { + prom_envp = (char **)fw_arg2; + } adm5120_info_init(); |