Commit fec5fa0210a853635d3011fbce26f137206958c6
1 parent
37e828b4
Reset I32_APIC_BASE on system RESET
Should be done according to spec. Signed-off-by: Gleb Natapov <gleb@qumranet.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5128 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
4 additions
and
2 deletions
hw/apic.c
... | ... | @@ -869,6 +869,10 @@ static int apic_load(QEMUFile *f, void *opaque, int version_id) |
869 | 869 | static void apic_reset(void *opaque) |
870 | 870 | { |
871 | 871 | APICState *s = opaque; |
872 | + | |
873 | + s->apicbase = 0xfee00000 | | |
874 | + (s->id ? 0 : MSR_IA32_APICBASE_BSP) | MSR_IA32_APICBASE_ENABLE; | |
875 | + | |
872 | 876 | apic_init_ipi(s); |
873 | 877 | |
874 | 878 | if (s->id == 0) { |
... | ... | @@ -906,8 +910,6 @@ int apic_init(CPUState *env) |
906 | 910 | s->id = last_apic_id++; |
907 | 911 | env->cpuid_apic_id = s->id; |
908 | 912 | s->cpu_env = env; |
909 | - s->apicbase = 0xfee00000 | | |
910 | - (s->id ? 0 : MSR_IA32_APICBASE_BSP) | MSR_IA32_APICBASE_ENABLE; | |
911 | 913 | |
912 | 914 | apic_reset(s); |
913 | 915 | ... | ... |