mirror of
https://github.com/Motorhead1991/qemu.git
synced 2026-01-06 14:37:42 -07:00
This patch adds a binary blob corresponding to the DSDT acpi table. It is used
to unit test the flag 'acpi-pci-hotplug-with-bridge-support' used with pci
bridges.
This change also clears the file tests/qtest/bios-tables-test-allowed-diff.h
so that future changes which affect the table can be caught.
The following is the diff between files tests/data/acpi/pc/DSDT.bridge and
tests/data/acpi/pc/DSDT.hpbridge after disassembly :
@@ -1,30 +1,30 @@
/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20180105 (64-bit version)
* Copyright (c) 2000 - 2018 Intel Corporation
*
* Disassembling to symbolic ASL+ operators
*
- * Disassembly of tests/data/acpi/pc/DSDT.bridge, Fri Sep 11 23:21:34 2020
+ * Disassembly of /tmp/aml-7UURQ0, Fri Sep 11 23:21:34 2020
*
* Original Table Header:
* Signature "DSDT"
- * Length 0x00001A89 (6793)
+ * Length 0x0000131F (4895)
* Revision 0x01 **** 32-bit table (V1), no 64-bit math support
- * Checksum 0x09
+ * Checksum 0xF9
* OEM ID "BOCHS "
* OEM Table ID "BXPCDSDT"
* OEM Revision 0x00000001 (1)
* Compiler ID "BXPC"
* Compiler Version 0x00000001 (1)
*/
DefinitionBlock ("", "DSDT", 1, "BOCHS ", "BXPCDSDT", 0x00000001)
{
Scope (\)
{
OperationRegion (DBG, SystemIO, 0x0402, One)
Field (DBG, ByteAcc, NoLock, Preserve)
{
DBGB, 8
}
@@ -859,522 +859,32 @@
}
Method (_S2D, 0, NotSerialized) // _S2D: S2 Device State
{
Return (Zero)
}
Method (_S3D, 0, NotSerialized) // _S3D: S3 Device State
{
Return (Zero)
}
}
Device (S18)
{
Name (_ADR, 0x00030000) // _ADR: Address
- Name (BSEL, One)
- Device (S00)
- {
- Name (_SUN, Zero) // _SUN: Slot User Number
- Name (_ADR, Zero) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S08)
- {
- Name (_SUN, One) // _SUN: Slot User Number
- Name (_ADR, 0x00010000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S10)
- {
- Name (_SUN, 0x02) // _SUN: Slot User Number
- Name (_ADR, 0x00020000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S18)
- {
- Name (_SUN, 0x03) // _SUN: Slot User Number
- Name (_ADR, 0x00030000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S20)
- {
- Name (_SUN, 0x04) // _SUN: Slot User Number
- Name (_ADR, 0x00040000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S28)
- {
- Name (_SUN, 0x05) // _SUN: Slot User Number
- Name (_ADR, 0x00050000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S30)
- {
- Name (_SUN, 0x06) // _SUN: Slot User Number
- Name (_ADR, 0x00060000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S38)
- {
- Name (_SUN, 0x07) // _SUN: Slot User Number
- Name (_ADR, 0x00070000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S40)
- {
- Name (_SUN, 0x08) // _SUN: Slot User Number
- Name (_ADR, 0x00080000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S48)
- {
- Name (_SUN, 0x09) // _SUN: Slot User Number
- Name (_ADR, 0x00090000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S50)
- {
- Name (_SUN, 0x0A) // _SUN: Slot User Number
- Name (_ADR, 0x000A0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S58)
- {
- Name (_SUN, 0x0B) // _SUN: Slot User Number
- Name (_ADR, 0x000B0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S60)
- {
- Name (_SUN, 0x0C) // _SUN: Slot User Number
- Name (_ADR, 0x000C0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S68)
- {
- Name (_SUN, 0x0D) // _SUN: Slot User Number
- Name (_ADR, 0x000D0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S70)
- {
- Name (_SUN, 0x0E) // _SUN: Slot User Number
- Name (_ADR, 0x000E0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S78)
- {
- Name (_SUN, 0x0F) // _SUN: Slot User Number
- Name (_ADR, 0x000F0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S80)
- {
- Name (_SUN, 0x10) // _SUN: Slot User Number
- Name (_ADR, 0x00100000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S88)
- {
- Name (_SUN, 0x11) // _SUN: Slot User Number
- Name (_ADR, 0x00110000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S90)
- {
- Name (_SUN, 0x12) // _SUN: Slot User Number
- Name (_ADR, 0x00120000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (S98)
- {
- Name (_SUN, 0x13) // _SUN: Slot User Number
- Name (_ADR, 0x00130000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SA0)
- {
- Name (_SUN, 0x14) // _SUN: Slot User Number
- Name (_ADR, 0x00140000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SA8)
- {
- Name (_SUN, 0x15) // _SUN: Slot User Number
- Name (_ADR, 0x00150000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SB0)
- {
- Name (_SUN, 0x16) // _SUN: Slot User Number
- Name (_ADR, 0x00160000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SB8)
- {
- Name (_SUN, 0x17) // _SUN: Slot User Number
- Name (_ADR, 0x00170000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SC0)
- {
- Name (_SUN, 0x18) // _SUN: Slot User Number
- Name (_ADR, 0x00180000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SC8)
- {
- Name (_SUN, 0x19) // _SUN: Slot User Number
- Name (_ADR, 0x00190000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SD0)
- {
- Name (_SUN, 0x1A) // _SUN: Slot User Number
- Name (_ADR, 0x001A0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SD8)
- {
- Name (_SUN, 0x1B) // _SUN: Slot User Number
- Name (_ADR, 0x001B0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SE0)
- {
- Name (_SUN, 0x1C) // _SUN: Slot User Number
- Name (_ADR, 0x001C0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SE8)
- {
- Name (_SUN, 0x1D) // _SUN: Slot User Number
- Name (_ADR, 0x001D0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SF0)
- {
- Name (_SUN, 0x1E) // _SUN: Slot User Number
- Name (_ADR, 0x001E0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Device (SF8)
- {
- Name (_SUN, 0x1F) // _SUN: Slot User Number
- Name (_ADR, 0x001F0000) // _ADR: Address
- Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
- {
- PCEJ (BSEL, _SUN)
- }
- }
-
- Method (DVNT, 2, NotSerialized)
- {
- If ((Arg0 & One))
- {
- Notify (S00, Arg1)
- }
-
- If ((Arg0 & 0x02))
- {
- Notify (S08, Arg1)
- }
-
- If ((Arg0 & 0x04))
- {
- Notify (S10, Arg1)
- }
-
- If ((Arg0 & 0x08))
- {
- Notify (S18, Arg1)
- }
-
- If ((Arg0 & 0x10))
- {
- Notify (S20, Arg1)
- }
-
- If ((Arg0 & 0x20))
- {
- Notify (S28, Arg1)
- }
-
- If ((Arg0 & 0x40))
- {
- Notify (S30, Arg1)
- }
-
- If ((Arg0 & 0x80))
- {
- Notify (S38, Arg1)
- }
-
- If ((Arg0 & 0x0100))
- {
- Notify (S40, Arg1)
- }
-
- If ((Arg0 & 0x0200))
- {
- Notify (S48, Arg1)
- }
-
- If ((Arg0 & 0x0400))
- {
- Notify (S50, Arg1)
- }
-
- If ((Arg0 & 0x0800))
- {
- Notify (S58, Arg1)
- }
-
- If ((Arg0 & 0x1000))
- {
- Notify (S60, Arg1)
- }
-
- If ((Arg0 & 0x2000))
- {
- Notify (S68, Arg1)
- }
-
- If ((Arg0 & 0x4000))
- {
- Notify (S70, Arg1)
- }
-
- If ((Arg0 & 0x8000))
- {
- Notify (S78, Arg1)
- }
-
- If ((Arg0 & 0x00010000))
- {
- Notify (S80, Arg1)
- }
-
- If ((Arg0 & 0x00020000))
- {
- Notify (S88, Arg1)
- }
-
- If ((Arg0 & 0x00040000))
- {
- Notify (S90, Arg1)
- }
-
- If ((Arg0 & 0x00080000))
- {
- Notify (S98, Arg1)
- }
-
- If ((Arg0 & 0x00100000))
- {
- Notify (SA0, Arg1)
- }
-
- If ((Arg0 & 0x00200000))
- {
- Notify (SA8, Arg1)
- }
-
- If ((Arg0 & 0x00400000))
- {
- Notify (SB0, Arg1)
- }
-
- If ((Arg0 & 0x00800000))
- {
- Notify (SB8, Arg1)
- }
-
- If ((Arg0 & 0x01000000))
- {
- Notify (SC0, Arg1)
- }
-
- If ((Arg0 & 0x02000000))
- {
- Notify (SC8, Arg1)
- }
-
- If ((Arg0 & 0x04000000))
- {
- Notify (SD0, Arg1)
- }
-
- If ((Arg0 & 0x08000000))
- {
- Notify (SD8, Arg1)
- }
-
- If ((Arg0 & 0x10000000))
- {
- Notify (SE0, Arg1)
- }
-
- If ((Arg0 & 0x20000000))
- {
- Notify (SE8, Arg1)
- }
-
- If ((Arg0 & 0x40000000))
- {
- Notify (SF0, Arg1)
- }
-
- If ((Arg0 & 0x80000000))
- {
- Notify (SF8, Arg1)
- }
- }
-
- Method (PCNT, 0, NotSerialized)
- {
- BNUM = One
- DVNT (PCIU, One)
- DVNT (PCID, 0x03)
- }
}
Device (S20)
{
Name (_SUN, 0x04) // _SUN: Slot User Number
Name (_ADR, 0x00040000) // _ADR: Address
Method (_EJ0, 1, NotSerialized) // _EJx: Eject Device
{
PCEJ (BSEL, _SUN)
}
}
Device (S28)
{
Name (_SUN, 0x05) // _SUN: Slot User Number
Name (_ADR, 0x00050000) // _ADR: Address
@@ -1779,22 +1289,21 @@
If ((Arg0 & 0x40000000))
{
Notify (SF0, Arg1)
}
If ((Arg0 & 0x80000000))
{
Notify (SF8, Arg1)
}
}
Method (PCNT, 0, NotSerialized)
{
BNUM = Zero
DVNT (PCIU, One)
DVNT (PCID, 0x03)
- ^S18.PCNT ()
}
}
}
}
Signed-off-by: Ani Sinha <ani@anisinha.ca>
Acked-by: Igor Mammedov <imammedo@redhat.com>
Message-Id: <20200918084111.15339-9-ani@anisinha.ca>
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 | ||