diff options
author | Yinghai Lu <yinghailu@gmail.com> | 2005-01-10 22:27:47 +0000 |
---|---|---|
committer | Yinghai Lu <yinghailu@gmail.com> | 2005-01-10 22:27:47 +0000 |
commit | 7ee97999ad03c2134049ba4554e1f5036924cd6d (patch) | |
tree | 29abc1d0427616bd2b5e7d9fe22ec53349bc4d32 | |
parent | 3a23863a3a43c23b8405524406ddff11edb0a407 (diff) |
nodeid
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1850 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
-rw-r--r-- | src/mainboard/amd/quartet/auto.c | 6 | ||||
-rw-r--r-- | src/mainboard/amd/quartet/failover.c | 6 | ||||
-rw-r--r-- | src/mainboard/amd/serenade/auto.c | 6 | ||||
-rw-r--r-- | src/mainboard/amd/serenade/failover.c | 6 | ||||
-rw-r--r-- | src/mainboard/amd/solo/auto.c | 7 | ||||
-rw-r--r-- | src/mainboard/amd/solo/failover.c | 6 | ||||
-rw-r--r-- | src/mainboard/arima/hdama/auto.c | 6 | ||||
-rw-r--r-- | src/mainboard/arima/hdama/failover.c | 6 |
8 files changed, 37 insertions, 12 deletions
diff --git a/src/mainboard/amd/quartet/auto.c b/src/mainboard/amd/quartet/auto.c index 5a6f195f75..638d09b861 100644 --- a/src/mainboard/amd/quartet/auto.c +++ b/src/mainboard/amd/quartet/auto.c @@ -209,18 +209,20 @@ 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/amd/quartet/failover.c b/src/mainboard/amd/quartet/failover.c index e351cae83d..139862c767 100644 --- a/src/mainboard/amd/quartet/failover.c +++ b/src/mainboard/amd/quartet/failover.c @@ -13,11 +13,15 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); + nodeid = lapicid() & 0xf; + /* 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/amd/serenade/auto.c b/src/mainboard/amd/serenade/auto.c index fb595f7acd..9a9de15b49 100644 --- a/src/mainboard/amd/serenade/auto.c +++ b/src/mainboard/amd/serenade/auto.c @@ -161,17 +161,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(); + 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/amd/serenade/failover.c b/src/mainboard/amd/serenade/failover.c index e351cae83d..139862c767 100644 --- a/src/mainboard/amd/serenade/failover.c +++ b/src/mainboard/amd/serenade/failover.c @@ -13,11 +13,15 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); + nodeid = lapicid() & 0xf; + /* 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/amd/solo/auto.c b/src/mainboard/amd/solo/auto.c index aa3da9be28..fff604dc35 100644 --- a/src/mainboard/amd/solo/auto.c +++ b/src/mainboard/amd/solo/auto.c @@ -108,6 +108,7 @@ 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 */ @@ -115,12 +116,14 @@ static void main(unsigned long bist) enable_lapic(); init_timer(); + + nodeid = lapicid() & 0xf; - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { asm volatile ("jmp __cpu_reset"); } - distinguish_cpu_resets(); + distinguish_cpu_resets(nodeid); if (!boot_cpu()) { /* This LinuxBIOS image is built for UP only */ diff --git a/src/mainboard/amd/solo/failover.c b/src/mainboard/amd/solo/failover.c index e351cae83d..139862c767 100644 --- a/src/mainboard/amd/solo/failover.c +++ b/src/mainboard/amd/solo/failover.c @@ -13,11 +13,15 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); + nodeid = lapicid() & 0xf; + /* 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/arima/hdama/auto.c b/src/mainboard/arima/hdama/auto.c index c962197060..b4d955385f 100644 --- a/src/mainboard/arima/hdama/auto.c +++ b/src/mainboard/arima/hdama/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(); + 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/arima/hdama/failover.c b/src/mainboard/arima/hdama/failover.c index e351cae83d..139862c767 100644 --- a/src/mainboard/arima/hdama/failover.c +++ b/src/mainboard/arima/hdama/failover.c @@ -13,11 +13,15 @@ static unsigned long main(unsigned long bist) { + unsigned nodeid; + /* Make cerain my local apic is useable */ enable_lapic(); + nodeid = lapicid() & 0xf; + /* Is this a cpu only reset? */ - if (cpu_init_detected()) { + if (cpu_init_detected(nodeid)) { if (last_boot_normal()) { goto normal_image; } else { |