]> Joshua Wise's Git repositories - netwatch.git/commitdiff
Take all board-specific code out of asm land
authorJoshua Wise <joshua@rebirth.joshuawise.com>
Sat, 6 Sep 2008 00:51:09 +0000 (20:51 -0400)
committerJoshua Wise <joshua@rebirth.joshuawise.com>
Sat, 6 Sep 2008 00:51:09 +0000 (20:51 -0400)
aseg/aseg.asm
aseg/counter.c

index 93b61d75c0f0a8047ed8a1a2e999c84e5d7547ab..b9ae4245a31b84556fd84ee572a72eb4d443e031 100644 (file)
@@ -36,18 +36,6 @@ noclear:
        mov eax, [dataptr+12]           ; jump into C
        call eax
 
        mov eax, [dataptr+12]           ; jump into C
        call eax
 
-       mov al, 0x40                    ; ack the periodic IRQ
-       mov dx, 0x834
-       out dx, al
-       
-       mov dx, 0x830                   ; now ack the SMI itself
-       in al, dx
-       or al, 0x02
-       and al, 0xBF
-       out dx, al
-       or al, 0x40
-       out dx, al
-
        rsm                             ; and leave SMM
 
        align 0x4
        rsm                             ; and leave SMM
 
        align 0x4
index de82574dc50fac9245e3ee564feb3569d174ea04..61f9b6fac9e18ffb1a3ac87bd2d54b87925d83b6 100644 (file)
@@ -52,5 +52,10 @@ void __start (void)
        
        outl(0xCF8, pcisave);
        outb(0x3D4, vgasave);
        
        outl(0xCF8, pcisave);
        outb(0x3D4, vgasave);
+       
+       outb(0x834, 0x40);      // ack the periodic IRQ
+       outb(0x830, (inb(0x830) | 0x2) & ~0x40);
+       outb(0x830, inb(0x830) | 0x40);
+       
 }
 
 }
 
This page took 0.024048 seconds and 4 git commands to generate.