diff options
-rw-r--r-- | src/mainboard/Iwill/DK8S2/auto.c | 6 | ||||
-rw-r--r-- | src/mainboard/Iwill/DK8S2/failover.c | 4 | ||||
-rw-r--r-- | src/mainboard/Iwill/DK8X/auto.c | 6 | ||||
-rw-r--r-- | src/mainboard/Iwill/DK8X/failover.c | 4 | ||||
-rw-r--r-- | src/mainboard/newisys/khepri/auto.c | 9 | ||||
-rw-r--r-- | src/mainboard/newisys/khepri/failover.c | 3 |
6 files changed, 23 insertions, 9 deletions
diff --git a/src/mainboard/Iwill/DK8S2/auto.c b/src/mainboard/Iwill/DK8S2/auto.c index 9b40059e43..6c4e8373e5 100644 --- a/src/mainboard/Iwill/DK8S2/auto.c +++ b/src/mainboard/Iwill/DK8S2/auto.c @@ -158,17 +158,19 @@ static void main(unsigned long bist) }; int needs_reset; + unsigned nodeid; if (bist == 0) { /* Skip this if there was a built in self test failure */ amd_early_mtrr_init(); enable_lapic(); init_timer(); + /* Has this cpu already booted? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { asm volatile ("jmp __cpu_reset"); } - distinguish_cpu_resets(); + distinguish_cpu_resets(nodeid); if (!boot_cpu()) { stop_this_cpu(); } diff --git a/src/mainboard/Iwill/DK8S2/failover.c b/src/mainboard/Iwill/DK8S2/failover.c index e351cae83d..63fa9346e1 100644 --- a/src/mainboard/Iwill/DK8S2/failover.c +++ b/src/mainboard/Iwill/DK8S2/failover.c @@ -13,11 +13,13 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); /* Is this a cpu only reset? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { if (last_boot_normal()) { goto normal_image; } else { diff --git a/src/mainboard/Iwill/DK8X/auto.c b/src/mainboard/Iwill/DK8X/auto.c index b8ca3c82ba..8e83c3093d 100644 --- a/src/mainboard/Iwill/DK8X/auto.c +++ b/src/mainboard/Iwill/DK8X/auto.c @@ -160,16 +160,18 @@ static void main(unsigned long bist) }; int needs_reset; + unsigned nodeid; + if (bist == 0) { /* Skip this if there was a built in self test failure */ amd_early_mtrr_init(); enable_lapic(); init_timer(); /* Has this cpu already booted? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { asm volatile ("jmp __cpu_reset"); } - distinguish_cpu_resets(); + distinguish_cpu_resets(nodeid); if (!boot_cpu()) { stop_this_cpu(); } diff --git a/src/mainboard/Iwill/DK8X/failover.c b/src/mainboard/Iwill/DK8X/failover.c index e351cae83d..63fa9346e1 100644 --- a/src/mainboard/Iwill/DK8X/failover.c +++ b/src/mainboard/Iwill/DK8X/failover.c @@ -13,11 +13,13 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); /* Is this a cpu only reset? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { if (last_boot_normal()) { goto normal_image; } else { diff --git a/src/mainboard/newisys/khepri/auto.c b/src/mainboard/newisys/khepri/auto.c index 82d9bac85a..b17d22da5c 100644 --- a/src/mainboard/newisys/khepri/auto.c +++ b/src/mainboard/newisys/khepri/auto.c @@ -153,16 +153,21 @@ static void main(unsigned long bist) }; int needs_reset; + unsigned nodeid; + if (bist == 0) { /* Skip this if there was a built in self test failure */ amd_early_mtrr_init(); enable_lapic(); init_timer(); + + nodeid = lapicid() & 0xf; + /* Has this cpu already booted? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { asm volatile ("jmp __cpu_reset"); } - distinguish_cpu_resets(); + distinguish_cpu_resets(nodeid); if (!boot_cpu()) { stop_this_cpu(); } diff --git a/src/mainboard/newisys/khepri/failover.c b/src/mainboard/newisys/khepri/failover.c index e351cae83d..6b959fc738 100644 --- a/src/mainboard/newisys/khepri/failover.c +++ b/src/mainboard/newisys/khepri/failover.c @@ -13,11 +13,12 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; /* Make cerain my local apic is useable */ enable_lapic(); /* Is this a cpu only reset? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { if (last_boot_normal()) { goto normal_image; } else { |