add SystemPreInit() and support
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@2254 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
22
src/cpu/amd/model_gx2/syspreinit.c
Normal file
22
src/cpu/amd/model_gx2/syspreinit.c
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
/* ***************************************************************************/
|
||||||
|
/* **/
|
||||||
|
/* * StartTimer1*/
|
||||||
|
/* **/
|
||||||
|
/* * Entry: none*/
|
||||||
|
/* * Exit: Starts Timer 1 for port 61 use*/
|
||||||
|
/* * Destroys: Al,*/
|
||||||
|
/* **/
|
||||||
|
/* ***************************************************************************/
|
||||||
|
void
|
||||||
|
StartTimer1(void){
|
||||||
|
outb(0x56, 0x43);
|
||||||
|
outb(0x12, 0x41);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
SystemPreInit(void){
|
||||||
|
|
||||||
|
/* they want a jump ... */
|
||||||
|
__asm__("jmp .+2\ninvd\njmp.+2\n");
|
||||||
|
StartTimer1();
|
||||||
|
}
|
@@ -101,7 +101,7 @@ static void sdram_set_spd_registers(const struct mem_controller *ctrl)
|
|||||||
#define PLLMSRlo2 ((1<<14) |(1<<13) | (1<<0))
|
#define PLLMSRlo2 ((1<<14) |(1<<13) | (1<<0))
|
||||||
#include "northbridge/amd/gx2/pll_reset.c"
|
#include "northbridge/amd/gx2/pll_reset.c"
|
||||||
#include "cpu/amd/model_gx2/cpureginit.c"
|
#include "cpu/amd/model_gx2/cpureginit.c"
|
||||||
|
#include "cpu/amd/model_gx2/syspreinit.c"
|
||||||
static void msr_init(void)
|
static void msr_init(void)
|
||||||
{
|
{
|
||||||
__builtin_wrmsr(0x1808, 0x10f3bf00, 0x22fffc02);
|
__builtin_wrmsr(0x1808, 0x10f3bf00, 0x22fffc02);
|
||||||
@@ -144,6 +144,7 @@ static void main(unsigned long bist)
|
|||||||
{.channel0 = {(0xa<<3)|0, (0xa<<3)|1}}
|
{.channel0 = {(0xa<<3)|0, (0xa<<3)|1}}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
SystemPreInit();
|
||||||
msr_init();
|
msr_init();
|
||||||
|
|
||||||
w83627hf_enable_serial(SERIAL_DEV, TTYS0_BASE);
|
w83627hf_enable_serial(SERIAL_DEV, TTYS0_BASE);
|
||||||
|
@@ -48,7 +48,7 @@ static void sdram_set_spd_registers(const struct mem_controller *ctrl)
|
|||||||
#define PLLMSRlo2 ((1<<14) |(1<<13) | (1<<0))
|
#define PLLMSRlo2 ((1<<14) |(1<<13) | (1<<0))
|
||||||
#include "northbridge/amd/gx2/pll_reset.c"
|
#include "northbridge/amd/gx2/pll_reset.c"
|
||||||
#include "cpu/amd/model_gx2/cpureginit.c"
|
#include "cpu/amd/model_gx2/cpureginit.c"
|
||||||
|
#include "cpu/amd/model_gx2/syspreinit.c"
|
||||||
static void msr_init(void)
|
static void msr_init(void)
|
||||||
{
|
{
|
||||||
__builtin_wrmsr(0x1808, 0x10f3bf00, 0x22fffc02);
|
__builtin_wrmsr(0x1808, 0x10f3bf00, 0x22fffc02);
|
||||||
@@ -81,7 +81,7 @@ static void main(unsigned long bist)
|
|||||||
{.channel0 = {(0xa<<3)|0, (0xa<<3)|1}}
|
{.channel0 = {(0xa<<3)|0, (0xa<<3)|1}}
|
||||||
};
|
};
|
||||||
unsigned char temp;
|
unsigned char temp;
|
||||||
|
SystemPreInit();
|
||||||
msr_init();
|
msr_init();
|
||||||
|
|
||||||
w83627hf_enable_serial(SERIAL_DEV, TTYS0_BASE);
|
w83627hf_enable_serial(SERIAL_DEV, TTYS0_BASE);
|
||||||
|
Reference in New Issue
Block a user