6e2e2e8a42
here is diff against tests/data/acpi/q35/DSDT for currently shipped ovmf binary. (once firmware blob is updated, it will negotiate CPU hotplug feature which will ad extra hunk sending SMI and Q35 tests will need to be updated), but otherwise diff shows new CPU hotplug AML that is shared between q35 and pc machines. Method (CSCN, 0, Serialized) { Acquire (\_SB.PCI0.PRES.CPLK, 0xFFFF) - Local0 = One - While ((Local0 == One)) - { - Local0 = Zero - \_SB.PCI0.PRES.CCMD = Zero - If ((\_SB.PCI0.PRES.CINS == One)) + Name (CNEW, Package (0xFF){}) + Local3 = Zero + Local4 = One + While ((Local4 == One)) + { + Local4 = Zero + Local0 = One + Local1 = Zero + While (((Local0 == One) && (Local3 < One))) { - CTFY (\_SB.PCI0.PRES.CDAT, One) - \_SB.PCI0.PRES.CINS = One - Local0 = One + Local0 = Zero + \_SB.PCI0.PRES.CSEL = Local3 + \_SB.PCI0.PRES.CCMD = Zero + If ((\_SB.PCI0.PRES.CDAT < Local3)) + { + Break + } + + If ((Local1 == 0xFF)) + { + Local4 = One + Break + } + + Local3 = \_SB.PCI0.PRES.CDAT + If ((\_SB.PCI0.PRES.CINS == One)) + { + CNEW [Local1] = Local3 + Local1++ + Local0 = One + } + ElseIf ((\_SB.PCI0.PRES.CRMV == One)) + { + CTFY (Local3, 0x03) + \_SB.PCI0.PRES.CRMV = One + Local0 = One + } + + Local3++ } - ElseIf ((\_SB.PCI0.PRES.CRMV == One)) + + Local2 = Zero + While ((Local2 < Local1)) { - CTFY (\_SB.PCI0.PRES.CDAT, 0x03) - \_SB.PCI0.PRES.CRMV = One - Local0 = One + Local3 = DerefOf (CNEW [Local2]) + CTFY (Local3, One) + Debug = Local3 + \_SB.PCI0.PRES.CSEL = Local3 + \_SB.PCI0.PRES.CINS = One + Local2++ } } Signed-off-by: Igor Mammedov <imammedo@redhat.com> Message-Id: <20200923094650.1301166-11-imammedo@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> |
||
---|---|---|
.. | ||
acceptance | ||
data | ||
decode | ||
docker | ||
fp | ||
guest-debug | ||
image-fuzzer | ||
include | ||
keys | ||
migration | ||
multiboot | ||
perf/block/qcow2 | ||
plugin | ||
qapi-schema | ||
qemu-iotests | ||
qtest | ||
rocker | ||
tcg | ||
tsan | ||
uefi-test-tools | ||
vm | ||
vmstate-static-checker-data | ||
.gitignore | ||
atomic64-bench.c | ||
atomic_add-bench.c | ||
benchmark-crypto-cipher.c | ||
benchmark-crypto-hash.c | ||
benchmark-crypto-hmac.c | ||
check-block-qdict.c | ||
check-block.sh | ||
check-qdict.c | ||
check-qjson.c | ||
check-qlist.c | ||
check-qlit.c | ||
check-qnull.c | ||
check-qnum.c | ||
check-qobject.c | ||
check-qom-interface.c | ||
check-qom-proplist.c | ||
check-qstring.c | ||
crypto-tls-psk-helpers.c | ||
crypto-tls-psk-helpers.h | ||
crypto-tls-x509-helpers.c | ||
crypto-tls-x509-helpers.h | ||
dbus-vmstate-daemon.sh | ||
io-channel-helpers.c | ||
io-channel-helpers.h | ||
iothread.c | ||
iothread.h | ||
Makefile.include | ||
meson.build | ||
pkix_asn1_tab.c | ||
ptimer-test-stubs.c | ||
ptimer-test.c | ||
ptimer-test.h | ||
qht-bench.c | ||
rcutorture.c | ||
requirements.txt | ||
socket-helpers.c | ||
socket-helpers.h | ||
test-aio-multithread.c | ||
test-aio.c | ||
test-authz-list.c | ||
test-authz-listfile.c | ||
test-authz-pam.c | ||
test-authz-simple.c | ||
test-base64.c | ||
test-bdrv-drain.c | ||
test-bdrv-graph-mod.c | ||
test-bitcnt.c | ||
test-bitmap.c | ||
test-bitops.c | ||
test-block-backend.c | ||
test-block-iothread.c | ||
test-blockjob-txn.c | ||
test-blockjob.c | ||
test-bufferiszero.c | ||
test-char.c | ||
test-clone-visitor.c | ||
test-coroutine.c | ||
test-crypto-afsplit.c | ||
test-crypto-block.c | ||
test-crypto-cipher.c | ||
test-crypto-hash.c | ||
test-crypto-hmac.c | ||
test-crypto-ivgen.c | ||
test-crypto-pbkdf.c | ||
test-crypto-secret.c | ||
test-crypto-tlscredsx509.c | ||
test-crypto-tlssession.c | ||
test-crypto-xts.c | ||
test-cutils.c | ||
test-fdmon-epoll.c | ||
test-hbitmap.c | ||
test-image-locking.c | ||
test-int128.c | ||
test-io-channel-buffer.c | ||
test-io-channel-command.c | ||
test-io-channel-file.c | ||
test-io-channel-socket.c | ||
test-io-channel-tls.c | ||
test-io-task.c | ||
test-iov.c | ||
test-keyval.c | ||
test-logging.c | ||
test-mul64.c | ||
test-opts-visitor.c | ||
test-qapi-util.c | ||
test-qdev-global-props.c | ||
test-qdist.c | ||
test-qemu-opts.c | ||
test-qga.c | ||
test-qgraph.c | ||
test-qht-par.c | ||
test-qht.c | ||
test-qmp-cmds.c | ||
test-qmp-event.c | ||
test-qobject-input-visitor.c | ||
test-qobject-output-visitor.c | ||
test-rcu-list.c | ||
test-rcu-simpleq.c | ||
test-rcu-slist.c | ||
test-rcu-tailq.c | ||
test-replication.c | ||
test-shift128.c | ||
test-string-input-visitor.c | ||
test-string-output-visitor.c | ||
test-thread-pool.c | ||
test-throttle.c | ||
test-timed-average.c | ||
test-util-filemonitor.c | ||
test-util-sockets.c | ||
test-uuid.c | ||
test-visitor-serialization.c | ||
test-vmstate.c | ||
test-write-threshold.c | ||
test-x86-cpuid.c | ||
test-xbzrle.c | ||
vhost-user-bridge.c |