Subversion Repositories HelenOS

Compare Revisions

Regard whitespace Rev 271 → Rev 269

/SPARTAN/trunk/arch/ia32/src/pm.c
72,7 → 72,8
/* gdtr is changed by kmp before next CPU is initialized */
struct ptr_16_32 bsp_bootstrap_gdtr __attribute__ ((section ("K_DATA_START"))) = { .limit = sizeof(gdt), .base = KA2PA((__address) gdt - BOOT_OFFSET) };
struct ptr_16_32 ap_bootstrap_gdtr __attribute__ ((section ("K_DATA_START"))) = { .limit = sizeof(gdt), .base = KA2PA((__address) gdt) };
struct ptr_16_32 gdtr = { .limit = sizeof(gdt), .base = (__address) gdt };
struct ptr_16_32 gdtr = { .limit = sizeof(gdt), .base = KA2PA((__address) gdt) };
struct ptr_16_32 idtr __attribute__ ((section ("K_DATA_START"))) = { .limit = sizeof(idt), .base = KA2PA((__address) idt) };
 
void gdt_setbase(struct descriptor *d, __address base)
{
165,13 → 166,14
 
void pm_init(void)
{
struct descriptor *gdt_p = (struct descriptor *) gdtr.base;
struct ptr_16_32 idtr;
struct descriptor *gdt_p = (struct descriptor *) PA2KA(gdtr.base);
 
 
/*
* Update addresses in GDT and IDT to their virtual counterparts.
*/
idtr.limit = sizeof(idt);
if (config.cpu_active == 1)
gdtr.base = (__address) gdt;
idtr.base = (__address) idt;
__asm__ volatile ("lgdt %0\n" : : "m" (gdtr));
__asm__ volatile ("lidt %0\n" : : "m" (idtr));
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
107,9 → 107,6
movw %ax, %ds # kernel data + stack
movw %ax, %ss
jmpl $KTEXT, $multiboot_meeting_point
multiboot_meeting_point:
call map_kernel # map kernel and turn paging on
protected: