vserver 1.9.5.x5
[linux-2.6.git] / arch / ppc / boot / simple / misc.c
index dd4bdde..ab0f990 100644 (file)
@@ -29,7 +29,6 @@
 #include <asm/reg.h>
 
 #include "nonstdio.h"
-#include "zlib.h"
 
 /* Default cmdline */
 #ifdef CONFIG_CMDLINE
  * Val Henson has requested that Gemini doesn't wait for the
  * user to edit the cmdline or not.
  */
-#if (defined(CONFIG_SERIAL_8250_CONSOLE) || defined(CONFIG_VGA_CONSOLE)) \
+#if (defined(CONFIG_SERIAL_8250_CONSOLE) \
+       || defined(CONFIG_VGA_CONSOLE) \
+       || defined(CONFIG_SERIAL_MPC52xx_CONSOLE) \
+       || defined(CONFIG_SERIAL_MPSC_CONSOLE)) \
        && !defined(CONFIG_GEMINI)
 #define INTERACTIVE_CONSOLE    1
 #endif
@@ -95,14 +97,13 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
 #endif
        char *cp;
        struct bi_record *rec;
-       unsigned long initrd_loc, TotalMemory = 0;
+       unsigned long initrd_loc = 0, TotalMemory = 0;
 
-       serial_fixups();
-#ifdef CONFIG_SERIAL_8250_CONSOLE
+#if defined(CONFIG_SERIAL_8250_CONSOLE) || defined(CONFIG_SERIAL_MPSC_CONSOLE)
        com_port = serial_init(0, NULL);
 #endif
 
-#ifdef CONFIG_44x
+#if defined(CONFIG_44x) && defined(PPC44x_EMAC0_MR0)
        /* Reset MAL */
        mtdcr(DCRN_MALCR(DCRN_MAL_BASE), MALCR_MMSR);
        /* Wait for reset */
@@ -221,7 +222,7 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
        puts("\n");
 
        puts("Uncompressing Linux...");
-       gunzip(0, 0x400000, zimage_start, &zimage_size);
+       gunzip(0x0, 0x400000, zimage_start, &zimage_size);
        puts("done.\n");
 
        /* get the bi_rec address */
@@ -268,10 +269,16 @@ decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum)
        return rec;
 }
 
+void __attribute__ ((weak))
+board_isa_init(void)
+{
+}
+
 /* Allow decompress_kernel to be hooked into.  This is the default. */
 void * __attribute__ ((weak))
 load_kernel(unsigned long load_addr, int num_words, unsigned long cksum,
                void *ign1, void *ign2)
 {
+               board_isa_init();
                return decompress_kernel(load_addr, num_words, cksum);
 }