patch-2.4.4 linux/arch/s390/kernel/setup.c

Next file: linux/arch/s390/kernel/signal.c
Previous file: linux/arch/s390/kernel/semaphore.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.3/linux/arch/s390/kernel/setup.c linux/arch/s390/kernel/setup.c
@@ -38,10 +38,13 @@
 #include <asm/system.h>
 #include <asm/smp.h>
 #include <asm/mmu_context.h>
+#include <asm/cpcmd.h>
 
 /*
  * Machine setup..
  */
+unsigned long memory_size = 0;
+unsigned long machine_flags = 0;
 __u16 boot_cpu_addr;
 int cpus_initialized = 0;
 unsigned long cpu_initialized = 0;
@@ -50,17 +53,8 @@
 /*
  * Setup options
  */
-
-#ifdef CONFIG_BLK_DEV_RAM
-extern int rd_doload;                  /* 1 = load ramdisk, 0 = don't load */
-extern int rd_prompt;           /* 1 = prompt for ramdisk, 0 = don't prompt*/
-extern int rd_image_start;             /* starting block # of image        */
-#endif
-
-extern int root_mountflags;
 extern int _text,_etext, _edata, _end;
 
-
 /*
  * This is set up by the setup-routine at boot-time
  * for S390 need to find out, what we have to setup
@@ -208,14 +202,9 @@
 	       "This machine has an IEEE fpu\n" :
 	       "This machine has no IEEE fpu\n");
 
-        ROOT_DEV = to_kdev_t(ORIG_ROOT_DEV);
-#ifdef CONFIG_BLK_DEV_RAM
-        rd_image_start = RAMDISK_FLAGS & RAMDISK_IMAGE_START_MASK;
-        rd_prompt = ((RAMDISK_FLAGS & RAMDISK_PROMPT_FLAG) != 0);
-        rd_doload = ((RAMDISK_FLAGS & RAMDISK_LOAD_FLAG) != 0);
-#endif
+        ROOT_DEV = to_kdev_t(0x0100);
         memory_start = (unsigned long) &_end;    /* fixit if use $CODELO etc*/
-	memory_end = MEMORY_SIZE;
+	memory_end = memory_size;
         /*
          * We need some free virtual space to be able to do vmalloc.
          * On a machine with 2GB memory we make sure that we have at
@@ -223,8 +212,6 @@
          */
         if (memory_end > 1920*1024*1024)
                 memory_end = 1920*1024*1024;
-        memory_start = (unsigned long) &_end;    /* fixit if use $CODELO etc*/
-	memory_end = MEMORY_SIZE;                /* detected in head.s */
         init_mm.start_code = PAGE_OFFSET;
         init_mm.end_code = (unsigned long) &_etext;
         init_mm.end_data = (unsigned long) &_edata;
@@ -311,7 +298,6 @@
          */
         reserve_bootmem(start_pfn << PAGE_SHIFT, bootmap_size);
 
-        paging_init();
 #ifdef CONFIG_BLK_DEV_INITRD
         if (INITRD_START) {
 		if (INITRD_START + INITRD_SIZE <= memory_end) {
@@ -326,6 +312,9 @@
 		}
         }
 #endif
+
+        paging_init();
+
 	res = alloc_bootmem_low(sizeof(struct resource));
 	res->start = 0;
 	res->end = memory_end;

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)