Ignore:
Timestamp:
Jul 13, 2017, 12:54:18 PM (5 years ago)
Author:
max@…
Message:

map the LAPIC and IOAPIC in a separate function

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/hal/x86_64/core/hal_init.c

    r195 r199  
    239239/* -------------------------------------------------------------------------- */
    240240
     241static void apic_map()
     242{
     243        extern vaddr_t lapic_va, ioapic_va;
     244        extern paddr_t lapic_pa, ioapic_pa;
     245
     246        lapic_va = hal_gpt_bootstrap_valloc(1); // XXX: should be shared
     247        hal_gpt_enter(lapic_va, lapic_pa, PG_V|PG_KW|PG_NX|PG_N);
     248
     249        ioapic_va = hal_gpt_bootstrap_valloc(1); // XXX: should be shared
     250        hal_gpt_enter(ioapic_va, ioapic_pa, PG_V|PG_KW|PG_NX|PG_N);
     251}
     252
    241253void init_x86_64(paddr_t firstpa)
    242254{
     
    272284        hal_gpt_bootstrap_reset();
    273285        x86_printf("[+] hal_gpt_bootstrap_reset called\n");
     286
     287        apic_map();
     288        x86_printf("[+] apic_map called\n");
    274289
    275290        hal_apic_init();
Note: See TracChangeset for help on using the changeset viewer.