blob: fd9ba2289b604bcc51f28cbbfebf94f2fdb50aeb [file] [log] [blame]
Patrick Georgic9fa96d2010-02-24 13:58:23 +00001#include <bootblock_common.h>
2
3static void main(unsigned long bist)
4{
5 if (boot_cpu()) {
6 bootblock_northbridge_init();
7 bootblock_southbridge_init();
Stefan Reinauera7163f12011-04-16 00:09:53 +00008 bootblock_cpu_init();
Patrick Georgifab35e32011-03-08 07:50:43 +00009
10#if CONFIG_USE_OPTION_TABLE
Kyösti Mälkkif28dbe02011-12-05 20:17:17 +020011 sanitize_cmos();
Patrick Georgifab35e32011-03-08 07:50:43 +000012#endif
Duncan Laurieb6e97b12012-09-09 19:09:56 -070013#if CONFIG_CMOS_POST
14 cmos_post_init();
15#endif
Kyösti Mälkkif28dbe02011-12-05 20:17:17 +020016 }
Patrick Georgifab35e32011-03-08 07:50:43 +000017
Patrick Georgic9fa96d2010-02-24 13:58:23 +000018 const char* target1 = "fallback/romstage";
19 unsigned long entry;
20 entry = findstage(target1);
21 if (entry) call(entry, bist);
22 asm volatile ("1:\n\thlt\n\tjmp 1b\n\t");
23}
24