* Add support for 16 MB flash configuration of TRAB board
* Patch by Erwin Rol, 27 Feb 2003:
Add support for RTEMS
* Add image information to README
* Fix dual PCMCIA slot support (when running with just one
slot populated)
* Add VFD type detection to trab board
* extend drivers/cs8900.c driver to synchronize ethaddr environment
variable with value in the EEPROM
* Start adding MIPS support files
diff --git a/common/cmd_bootm.c b/common/cmd_bootm.c
index e138d78b..2ac5763 100644
--- a/common/cmd_bootm.c
+++ b/common/cmd_bootm.c
@@ -192,6 +192,8 @@
if (hdr->ih_arch != IH_CPU_ARM)
#elif defined(__I386__)
if (hdr->ih_arch != IH_CPU_I386)
+#elif defined(__mips__)
+ if (hdr->ih_arch != IH_CPU_MIPS)
#else
# error Unknown CPU type
#endif
diff --git a/common/cmd_elf.c b/common/cmd_elf.c
index 149ffa3..7495762 100644
--- a/common/cmd_elf.c
+++ b/common/cmd_elf.c
@@ -252,11 +252,13 @@
return 0;
}
+#if 0
if (ehdr->e_machine != EM_PPC) {
printf ("## Not a PowerPC elf image at address 0x%08lx\n",
addr);
return 0;
}
+#endif
return 1;
}
diff --git a/common/cmd_ide.c b/common/cmd_ide.c
index d082d5e..94fc89b 100644
--- a/common/cmd_ide.c
+++ b/common/cmd_ide.c
@@ -489,11 +489,14 @@
#ifdef CONFIG_IDE_8xx_PCCARD
extern int pcmcia_on (void);
+ extern int ide_devices_found; /* Initialized in check_ide_device() */
WATCHDOG_RESET();
+ ide_devices_found = 0;
/* initialize the PCMCIA IDE adapter card */
- if (pcmcia_on())
+ pcmcia_on();
+ if (!ide_devices_found)
return;
udelay (1000000); /* 1 s */
#endif /* CONFIG_IDE_8xx_PCCARD */
@@ -550,6 +553,13 @@
int dev = bus * (CFG_IDE_MAXDEVICE / max_bus_scan);
#endif
+#ifdef CONFIG_IDE_8xx_PCCARD
+ /* Skip non-ide devices from probing */
+ if ((ide_devices_found & (1 << bus)) == 0) {
+ ide_led ((LED_IDE1 | LED_IDE2), 0); /* LED's off */
+ continue;
+ }
+#endif
printf ("Bus %d: ", bus);
ide_bus_ok[bus] = 0;
diff --git a/common/cmd_pcmcia.c b/common/cmd_pcmcia.c
index f9bd0ba..31abbaf 100644
--- a/common/cmd_pcmcia.c
+++ b/common/cmd_pcmcia.c
@@ -268,6 +268,7 @@
#define MAX_TUPEL_SZ 512
#define MAX_FEATURES 4
+int ide_devices_found;
static int check_ide_device (int slot)
{
volatile uchar *ident = NULL;
@@ -347,6 +348,8 @@
return (1);
}
+ ide_devices_found |= (1 << slot);
+
/* set I/O area in config reg -> only valid for ARGOSY D5!!! */
*((uchar *)(addr + config_base)) = 1;