]> Zhao Yanbai Git Server - minix.git/commitdiff
system_init() renamed to arch_init()
authorTomas Hruby <tom@minix3.org>
Sun, 30 Aug 2009 14:55:30 +0000 (14:55 +0000)
committerTomas Hruby <tom@minix3.org>
Sun, 30 Aug 2009 14:55:30 +0000 (14:55 +0000)
- a better name for architecture specific init function

- some of x86 init code must execute in protected mode

- prot_init() removed from this function and still called in cstart() Imho this
  should be called from the architecture specific assembly not cstart. cstart
  perform Minix monitor specific tasks and will be touched once another
  bootloader is in use, e.g. booting via tftp, therefore we keep it as is for
  now.

- this is a backport from the SMP code which requires this. Merging will be simpler

kernel/arch/i386/system.c
kernel/main.c
kernel/proto.h
kernel/start.c

index 2cf75d4f76cd9a7be7600160ce2473fea88480e5..805e4d45175cd3d20452682464de246bb4b912b6 100644 (file)
@@ -91,9 +91,8 @@ PUBLIC void arch_get_aout_headers(int i, struct exec *h)
        phys_copy(aout + i * A_MINHDR, vir2phys(h), (phys_bytes) A_MINHDR);
 }
 
-PUBLIC void system_init(void)
+PUBLIC void arch_init(void)
 {
-       prot_init();
        idt_init();
 
 #if 0
index 3fdf0b867dbc78be2d42b7caa6c8b1c30509fe10..9fa9406c06a43102066101b9caa57e3eb2b9503c 100755 (executable)
@@ -37,6 +37,9 @@ PUBLIC void main()
   reg_t ktsb;                  /* kernel task stack base */
   struct exec e_hdr;           /* for a copy of an a.out header */
 
+   /* Architecture-dependent initialization. */
+   arch_init();
   /* Clear the process table. Anounce each slot as empty and set up mappings 
    * for proc_addr() and proc_nr() macros. Do the same for the table with 
    * privilege structures for the system processes. 
index 88f1bb8f2ffb7cbb7cd1419a8df1bd85da249527..7536765c594216e42c49859210c34619e10eeb01 100755 (executable)
@@ -142,7 +142,7 @@ _PROTOTYPE( int intr_disabled, (void)                                       );
 _PROTOTYPE( int intr_unmask, (irq_hook_t* hook)                     );
 _PROTOTYPE( int intr_mask, (irq_hook_t* hook)                    );
 _PROTOTYPE( void idle_task, (void)                                     );
-_PROTOTYPE( void system_init, (void)                                     );
+_PROTOTYPE( void arch_init, (void)                                     );
 _PROTOTYPE( void ser_putc, (char)                                              );
 _PROTOTYPE( void arch_shutdown, (int)                                  );
 _PROTOTYPE( void arch_get_aout_headers, (int i, struct exec *h)                );
index aa188dfa325315baa46f394fcbcf75f258239cde..a1a2b5cb89ac26e785ffbb609dee277cf6aa139b 100755 (executable)
@@ -29,8 +29,8 @@ U16_t parmoff, parmsize;      /* boot parameters offset and length */
   kinfo.data_base = seg2phys(ds);
   kinfo.data_size = (phys_bytes) &end;         /* size of data segment */
 
-  /* Architecture-dependent initialization. */
-  system_init();
+  /* protection initialization */
+  prot_init();
 
   /* Copy the boot parameters to the local buffer. */
   arch_get_params(params_buffer, sizeof(params_buffer));