symbian-qemu-0.9.1-12/qemu-symbian-svp/pc-bios/bios-pq/0003_smp-startup-poll.patch
changeset 1 2fb8b9db1c86
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/symbian-qemu-0.9.1-12/qemu-symbian-svp/pc-bios/bios-pq/0003_smp-startup-poll.patch	Fri Jul 31 15:01:17 2009 +0100
@@ -0,0 +1,21 @@
+From: Avi Kivity <avi@qumranet.com>
+
+instead of timing out, wait until all cpus are up
+
+diff --git a/bios/rombios32.c b/bios/rombios32.c
+index ef98a41..05ba40d 100644
+--- a/bios/rombios32.c
++++ b/bios/rombios32.c
+@@ -512,7 +512,12 @@ void smp_probe(void)
+         sipi_vector = AP_BOOT_ADDR >> 12;
+         writel(APIC_BASE + APIC_ICR_LOW, 0x000C4600 | sipi_vector);
+ 
++#ifndef BX_QEMU
+         delay_ms(10);
++#else
++        while (cmos_readb(0x5f) + 1 != readw(&smp_cpus))
++            ;
++#endif
+     }
+     BX_INFO("Found %d cpu(s)\n", readw(&smp_cpus));
+ }