|
|
|
|
|
|
|
|
|
|
xen-bugs
[Xen-bugs] [Bug 1727] Hypevisor hangs on boot.
http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=1727
------- Comment #8 from dmitry.trikoz@xxxxxxxxxxx 2011-01-29 01:09 -------
Looking into the linux diff..
The only thing it does is enable "acpi mode" early in the boot process.
It's doing it before local apic setup on boot cpu and before booting other
cpus.
I tried to do the same in 3.0.1 code and it works great. Problem fixed.
Here is the ugly version of the fix just to demonstrates what needs to be done:
in xen/arch/x86/setup.c
add lines in __start_xen():
arch_init_memory();
+ {
+ extern u32 acpi_smi_cmd;
+ extern u8 acpi_enable_value;
+ u32 value = 0;
+ int i;
+ acpi_hw_register_read(ACPI_REGISTER_PM1_CONTROL, &value);
+ if (!(value & 1)) {
+ printk("Enabling ACPI mode.\n");
+ outb(acpi_enable_value, acpi_smi_cmd);
+ // wait for 3 seconds max
+ for(i = 0; i < 300; i++) {
+ acpi_hw_register_read(ACPI_REGISTER_PM1_CONTROL, &value);
+ if(value & 1) {
+ printk("Entered ACPI mode\n");
+ break;
+ }
+ mdelay(10);
+ }
+ if(i == 300) {
+ printk("Failed to enter ACPI mode\n");
+ }
+ }
+ }
identify_cpu(&boot_cpu_data);
--
Configure bugmail:
http://bugzilla.xensource.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
_______________________________________________
Xen-bugs mailing list
Xen-bugs@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-bugs
|
|
|
|
|