On 2011-08-04 10:01, Gleb Natapov wrote:
On Wed, Aug 03, 2011 at 06:25:07PM +0200, Vasilis Liaskovitis wrote:
On Wed, Aug 03, 2011 at 12:42:11PM +0200, Jan Kiszka wrote:
Why can't Seabios read to true number online CPUs from the PIIX4 device? The information is there already, no need for addition PV here.
Where is it in PIIX4 device?
PROC registers (or however they are called).
In qemu-kvm, the cpus_sts bitmap array in PIIX4PMState/ACPIGPE has the true number of online CPUS. This is accessed from the DSDT hotplug method in Seabios as "OperationRegion SystemIO" with address 0xaf00. Is this i/o address in the piix4 spec? How can it be accessed from the rest of SeaBIOS? It seems to reside in ACPI_PM space.
0xaf00 is not part of PIIX4. PIIX4 supports nor cpu host plug neither pci hot plug. I haven't found any PROC register in PIIX4 spec so far.
So it is some "board" extension that is declared to BIOS/OS via ACPI? In any case, the channel we need to read the number of online CPUs already exists.
Jan