2 freebios/src/northbridge/nsc/gx1/cpu_setup.inc
4 Copyright (c) 2002 Christer Weinigel <wingel@hack.org>
6 Initialize the GX1 CPU configuration registers
9 /* USES: esi, ecx, eax */
11 #include <cpu/amd/gx1def.h>
13 movl %eax, %ebp /* preserve bist */
16 leal cpu_setup_table, %esi
17 movl $cpu_setup_len, %ecx
27 movb $0xff, %al /* DIR1 -- Identification Register 1 */
30 cmpb $0x63, %al /* Revision for GXLV rev 3 */
33 movb $0xe8, %al /* CCR4 */
36 orb $0x20, %al /* Enable FPU Fast Mode */
39 movb $0xf0, %al /* PCR1 --- Performace Control */
42 orb $0x02, %al /* Incrementor on, whatever that is */
45 movb $0x20, %al /* PCR0 --- Performace Control */
48 orb $0x20, %al /* Must be 1 according to data book */
49 orb $0x04, %al /* Incrementor Margin 10 */
56 .byte 0xc1, 0x00 /* NO SMIs */
57 .byte 0xc3, 0x14 /* Enable CPU config register */
59 .byte 0xb8, GX_BASE>>30 /* Enable GXBASE address */
62 .byte 0xc3, 0xf8 /* Enable CPU config register */
63 cpu_setup_len = (.-cpu_setup_table)/2
68 movl %ebp, %eax /* Restore bist */