ivy: Add a possiblity for mainboard early init.

This is needed for stout EC init.

Change-Id: I5c73499c17763229840152a473a2d820802ee2f6
Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
Reviewed-on: https://review.coreboot.org/13535
Tested-by: build bot (Jenkins)
Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
Vladimir Serbinenko 2016-01-31 14:00:54 +01:00 committed by Martin Roth
parent bf725b48f7
commit 609bd9445e
13 changed files with 38 additions and 0 deletions

View File

@ -52,6 +52,9 @@ const struct southbridge_usb_port mainboard_usb_ports[] = {
{ 1, 0, -1 }, { 1, 0, -1 },
}; };
void mainboard_early_init(int s3resume) {
}
void mainboard_get_spd(spd_raw_data *spd) void mainboard_get_spd(spd_raw_data *spd)
{ {
void *spd_file; void *spd_file;

View File

@ -205,3 +205,6 @@ static void dmi_config(void)
DMIBAR32(0x0e2c) = 0x20000000; DMIBAR32(0x0e2c) = 0x20000000;
} }
#endif #endif
void mainboard_early_init(int s3resume) {
}

View File

@ -115,3 +115,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd (&spd[2], 0x52); read_spd (&spd[2], 0x52);
read_spd (&spd[3], 0x53); read_spd (&spd[3], 0x53);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -128,3 +128,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd(&spd[0], 0x50); read_spd(&spd[0], 0x50);
read_spd(&spd[2], 0x52); read_spd(&spd[2], 0x52);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -67,3 +67,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd(&spd[0], 0x50); read_spd(&spd[0], 0x50);
read_spd(&spd[2], 0x51); read_spd(&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -67,3 +67,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd(&spd[0], 0x50); read_spd(&spd[0], 0x50);
read_spd(&spd[2], 0x51); read_spd(&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -82,3 +82,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd (&spd[0], 0x50); read_spd (&spd[0], 0x50);
read_spd (&spd[2], 0x51); read_spd (&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -69,3 +69,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd (&spd[0], 0x50); read_spd (&spd[0], 0x50);
read_spd (&spd[2], 0x51); read_spd (&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -79,3 +79,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd (&spd[0], 0x50); read_spd (&spd[0], 0x50);
read_spd (&spd[2], 0x51); read_spd (&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -82,3 +82,6 @@ void mainboard_get_spd(spd_raw_data *spd) {
read_spd (&spd[0], 0x50); read_spd (&spd[0], 0x50);
read_spd (&spd[2], 0x51); read_spd (&spd[2], 0x51);
} }
void mainboard_early_init(int s3resume) {
}

View File

@ -24,5 +24,6 @@ void read_spd(spd_raw_data *spd, u8 addr);
void mainboard_get_spd(spd_raw_data *spd); void mainboard_get_spd(spd_raw_data *spd);
void rcba_config(void); void rcba_config(void);
void pch_enable_lpc(void); void pch_enable_lpc(void);
void mainboard_early_init(int s3resume);
#endif /* RAMINIT_H */ #endif /* RAMINIT_H */

View File

@ -103,6 +103,9 @@ void main(unsigned long bist)
s3resume = southbridge_detect_s3_resume(); s3resume = southbridge_detect_s3_resume();
post_code(0x38); post_code(0x38);
mainboard_early_init(s3resume);
/* Enable SPD ROMs and DDR-III DRAM */ /* Enable SPD ROMs and DDR-III DRAM */
enable_smbus(); enable_smbus();

View File

@ -358,6 +358,10 @@ void rcba_config(void)
guessedMap := GuessSPDMap(ctx) guessedMap := GuessSPDMap(ctx)
sb.WriteString(` sb.WriteString(`
void mainboard_early_init(int s3resume)
{
}
/* FIXME: Put proper SPD map here. */ /* FIXME: Put proper SPD map here. */
void mainboard_get_spd(spd_raw_data *spd) void mainboard_get_spd(spd_raw_data *spd)
{ {