i386-softmmu/qemu -M isapc -bios pc-bios/bios.bin (qemu) info cpus * CPU #0: pc=0x000f3852 (qemu) x/20i $pc 0x000f3852: mov 0xfd408,%eax 0x000f3857: cmp %eax,%edx 0x000f3859: jne 0xf3852 0x000f385b: mov %ecx,0x10000 0x000f3861: mov %ebx,0x10004 0x000f3867: xor %eax,%eax 0x000f3869: cmpl $0x0,0xf78ec 0x000f3870: je 0xf3897 0x000f3872: mov $0x510,%edx 0x000f3877: mov $0xf,%eax 0x000f387c: out %ax,(%dx) 0x000f387e: mov $0x11,%dl 0x000f3880: in (%dx),%al 0x000f3881: mov %al,0xe4(%esp) 0x000f3888: in (%dx),%al 0x000f3889: mov %al,0xe5(%esp) 0x000f3890: mov 0xe4(%esp),%eax 0x000f3897: movzwl %ax,%eax 0x000f389a: mov %eax,0xfd40c 0x000f389f: test %eax,%eax
Could be smp_probe(): // Wait for other CPUs to process the SIPI. if (CONFIG_COREBOOT) { msleep(10); } else { u8 cmos_smp_count = inb_cmos(CMOS_BIOS_SMP_COUNT); while (cmos_smp_count + 1 != readl(&CountCPUs)) ; } Works with pcbios.bin. - Sebastian