enable apic ext id to keep bsp using apid 0
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1847 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
90a04ee5a9
commit
0fe9902b50
|
@ -244,7 +244,9 @@ static void main(unsigned long bist)
|
||||||
nodeid = lapicid() & 0xf;
|
nodeid = lapicid() & 0xf;
|
||||||
#if ENABLE_APIC_EXT_ID == 1
|
#if ENABLE_APIC_EXT_ID == 1
|
||||||
enable_apic_ext_id(nodeid);
|
enable_apic_ext_id(nodeid);
|
||||||
|
if(nodeid != 0) {
|
||||||
lapic_write(LAPIC_ID, ( lapic_read(LAPIC_ID) | (APIC_ID_OFFSET<<24) ) ); // CPU apicid is from 0x10
|
lapic_write(LAPIC_ID, ( lapic_read(LAPIC_ID) | (APIC_ID_OFFSET<<24) ) ); // CPU apicid is from 0x10
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
if (cpu_init_detected(nodeid)) {
|
if (cpu_init_detected(nodeid)) {
|
||||||
asm volatile ("jmp __cpu_reset");
|
asm volatile ("jmp __cpu_reset");
|
||||||
|
|
|
@ -13,11 +13,16 @@
|
||||||
|
|
||||||
static unsigned long main(unsigned long bist)
|
static unsigned long main(unsigned long bist)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
unsigned nodeid;
|
||||||
|
|
||||||
/* Make cerain my local apic is useable */
|
/* Make cerain my local apic is useable */
|
||||||
enable_lapic();
|
enable_lapic();
|
||||||
|
|
||||||
|
nodeid = lapicid() & 0xf;
|
||||||
|
|
||||||
/* Is this a cpu only reset? */
|
/* Is this a cpu only reset? */
|
||||||
if (cpu_init_detected()) {
|
if (cpu_init_detected(nodeid)) {
|
||||||
if (last_boot_normal()) {
|
if (last_boot_normal()) {
|
||||||
goto normal_image;
|
goto normal_image;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue