Local APIC

- local APIC timer used as the source of time

- PIC is still used as the hw interrupt controller as we don't have
  enough info without ACPI or MPS to set up IO APICs

- remapping of APIC when switching paging on, uses the new mechanism
  to tell VM what phys areas to map in kernel's virtual space

- one more step to SMP

based on code by Arun C.
This commit is contained in:
Tomas Hruby
2009-11-16 21:41:44 +00:00
parent 6515c93ecf
commit 8a44a44cb9
24 changed files with 1457 additions and 40 deletions

View File

@@ -6,7 +6,7 @@
#include <stdlib.h>
#include <string.h>
#include <archconst.h>
#include <proto.h>
#include "proto.h"
FORWARD _PROTOTYPE( char *get_value, (_CONST char *params, _CONST char *key));
/*===========================================================================*
@@ -76,11 +76,19 @@ U16_t parmoff, parmsize; /* boot parameters offset and length */
if(value && atoi(value) == 0)
do_serial_debug=1;
#ifdef CONFIG_APIC
value = get_value(params_buffer, "no_apic");
if(value)
config_no_apic = atoi(value);
else
config_no_apic = 0;
#endif
/* Return to assembler code to switch to protected mode (if 286),
* reload selectors and call main().
*/
intr_init(INTS_MINIX);
intr_init(INTS_MINIX, 0);
}
/*===========================================================================*