From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: mst@redhat.com, ani@anisinha.ca, berrange@redhat.com
Subject: [PATCH 02/33] tests: acpi: add test_acpi_q35_tcg_no_acpi_hotplug test and extend test_acpi_piix4_no_acpi_pci_hotplug
Date: Fri, 24 Feb 2023 16:37:41 +0100 [thread overview]
Message-ID: <20230224153812.4176226-3-imammedo@redhat.com> (raw)
In-Reply-To: <20230224153812.4176226-1-imammedo@redhat.com>
test bridge AML generator with ACPI PCI hotplug disabled
(i.e. with native hotplug enabled/disabled per bridge/root port)
PS:
while at make sure that devices on pci-bridge are starting
from addr=1.0 as slot 0 is not available there and test
passes only because of a bug in ACPI hotplug that will be
fixed by follow up patch
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
---
tests/qtest/bios-tables-test.c | 42 +++++++++++++++++++++++++++++++---
1 file changed, 39 insertions(+), 3 deletions(-)
diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
index d29a4e47af..5128b62634 100644
--- a/tests/qtest/bios-tables-test.c
+++ b/tests/qtest/bios-tables-test.c
@@ -949,9 +949,14 @@ static void test_acpi_piix4_no_acpi_pci_hotplug(void)
data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
test_acpi_one("-global PIIX4_PM.acpi-root-pci-hotplug=off "
"-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
- "-device pci-bridge,chassis_nr=1 "
- "-device pci-testdev,bus=pci.0 "
- "-device pci-testdev,bus=pci.1", &data);
+ "-device pci-bridge,chassis_nr=1,addr=4.0 "
+ "-device pci-testdev,bus=pci.0,addr=5.0 "
+ "-device pci-testdev,bus=pci.0,addr=6.0,acpi-index=101 "
+ "-device pci-testdev,bus=pci.1,addr=1.0 "
+ "-device pci-testdev,bus=pci.1,addr=2.0,acpi-index=201 "
+ "-device pci-bridge,id=nhpbr,chassis_nr=2,shpc=off,addr=7.0 "
+ "-device pci-testdev,bus=nhpbr,addr=1.0,acpi-index=301 "
+ , &data);
free_test_data(&data);
}
@@ -1002,6 +1007,35 @@ static void test_acpi_q35_tcg_bridge(void)
free_test_data(&data);
}
+static void test_acpi_q35_tcg_no_acpi_hotplug(void)
+{
+ test_data data;
+
+ memset(&data, 0, sizeof(data));
+ data.machine = MACHINE_Q35;
+ data.variant = ".noacpihp";
+ data.required_struct_types = base_required_struct_types;
+ data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
+ test_acpi_one("-global ICH9-LPC.acpi-pci-hotplug-with-bridge-support=off"
+ " -device pci-testdev,bus=pcie.0,acpi-index=101,addr=3.0"
+ " -device pci-bridge,chassis_nr=1,id=shpcbr,addr=4.0"
+ " -device pci-testdev,bus=shpcbr,addr=1.0,acpi-index=201"
+ " -device pci-bridge,chassis_nr=2,shpc=off,id=noshpcbr,addr=5.0"
+ " -device pci-testdev,bus=noshpcbr,addr=1.0,acpi-index=301"
+ " -device pcie-root-port,id=hprp,port=0x0,chassis=1,addr=6.0"
+ " -device pci-testdev,bus=hprp,acpi-index=401"
+ " -device pcie-root-port,id=nohprp,port=0x0,chassis=2,hotplug=off,"
+ "addr=7.0"
+ " -device pci-testdev,bus=nohprp,acpi-index=501"
+ " -device pcie-root-port,id=nohprpint,port=0x0,chassis=3,hotplug=off,"
+ "addr=8.0"
+ " -device pcie-root-port,id=hprp2,port=0x0,chassis=4,bus=nohprpint,"
+ "addr=9.0"
+ " -device pci-testdev,bus=hprp2,acpi-index=601"
+ , &data);
+ free_test_data(&data);
+}
+
static void test_acpi_q35_multif_bridge(void)
{
test_data data = {
@@ -2161,6 +2195,8 @@ int main(int argc, char *argv[])
test_acpi_q35_tcg_tpm12_tis);
}
qtest_add_func("acpi/q35/bridge", test_acpi_q35_tcg_bridge);
+ qtest_add_func("acpi/q35/no-acpi-hotplug",
+ test_acpi_q35_tcg_no_acpi_hotplug);
qtest_add_func("acpi/q35/multif-bridge",
test_acpi_q35_multif_bridge);
qtest_add_func("acpi/q35/mmio64", test_acpi_q35_tcg_mmio64);
--
2.39.1
next prev parent reply other threads:[~2023-02-24 15:39 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-24 15:37 [PATCH 00/33] pci(pc/q35): acpi-index support on non-hotpluggable slots Igor Mammedov
2023-02-24 15:37 ` [PATCH 01/33] tests: acpi: whitelist new q35.noacpihp test and pc.hpbrroot Igor Mammedov
2023-02-24 15:37 ` Igor Mammedov [this message]
2023-02-24 15:37 ` [PATCH 03/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:37 ` [PATCH 04/33] tests: acpi: whitelist q35/DSDT.multi-bridge before extending testcase Igor Mammedov
2023-02-24 15:37 ` [PATCH 05/33] tests: acpi: extend multi-bridge case with case 'root-port, id=HOHP, hotplug=off root-port, bus=NOHP' Igor Mammedov
2023-02-24 15:37 ` [PATCH 06/33] x86: pcihp: fix missing PCNT callchain when intermediate root-port has 'hotplug=off' set Igor Mammedov
2023-02-24 15:37 ` [PATCH 07/33] tests: acpi: whitelist pc/DSDT.hpbrroot and pc/DSDT.hpbridge tests Igor Mammedov
2023-02-24 15:37 ` [PATCH 08/33] x86: pcihp: fix missing bridge AML when intermediate root-port has 'hotplug=off' set Igor Mammedov
2023-02-24 15:37 ` [PATCH 09/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:37 ` [PATCH 10/33] pcihp: piix4: do not redirect hotplug controller to piix4 when ACPI hotplug is disabled Igor Mammedov
2023-02-24 15:37 ` [PATCH 11/33] pci: fix 'hotplugglable' property behavior Igor Mammedov
2023-02-24 15:37 ` [PATCH 12/33] tests: acpi: whitelist DSDT blobs before isolating PCI _DSM func 0 prolog Igor Mammedov
2023-02-24 15:37 ` [PATCH 13/33] pcihp: move PCI _DSM function 0 prolog into separate function Igor Mammedov
2023-02-24 15:37 ` [PATCH 14/33] tests: acpi: update expected blobs Igor Mammedov
2023-03-02 0:27 ` Michael S. Tsirkin
2023-03-02 12:02 ` Igor Mammedov
2023-03-02 12:55 ` Fabiano Rosas
2023-03-02 14:57 ` Igor Mammedov
2023-03-02 15:43 ` Fabiano Rosas
2023-03-02 15:59 ` Igor Mammedov
2023-03-02 0:37 ` Michael S. Tsirkin
2023-02-24 15:37 ` [PATCH 15/33] tests: acpi: whitelist DSDT before adding EDSM method Igor Mammedov
2023-02-24 15:37 ` [PATCH 16/33] acpi: pci: add EDSM method to DSDT Igor Mammedov
2023-02-24 15:37 ` [PATCH 17/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:37 ` [PATCH 18/33] tests: acpi: whitelist DSDT before adding device with acpi-index to testcases Igor Mammedov
2023-02-24 15:37 ` [PATCH 19/33] tests: acpi: add device with acpi-index on non-hotpluggble bus Igor Mammedov
2023-02-24 15:37 ` [PATCH 20/33] acpi: pci: support acpi-index for non-hotpluggable devices Igor Mammedov
2023-02-24 15:38 ` [PATCH 21/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:38 ` [PATCH 22/33] tests: acpi: whitelist DSDT before exposing non zero functions Igor Mammedov
2023-02-24 15:38 ` [PATCH 23/33] acpi: pci: describe all functions on populated slots Igor Mammedov
2023-02-24 15:38 ` [PATCH 24/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:38 ` [PATCH 25/33] tests: acpi: whitelist DSDT before adding non-0 function device with acpi-index to testcases Igor Mammedov
2023-02-24 15:38 ` [PATCH 26/33] tests: acpi: add non zero function device with acpi-index on non-hotpluggble bus Igor Mammedov
2023-02-24 15:38 ` [PATCH 27/33] tests: acpi: update expected blobs Igor Mammedov
2023-02-24 15:38 ` [PATCH 28/33] pci: move acpi-index uniqueness check to generic PCI device code Igor Mammedov
2023-02-24 15:38 ` [PATCH 29/33] acpi: pci: drop BSEL usage when deciding that device isn't hotpluggable Igor Mammedov
2023-02-24 15:38 ` [PATCH 30/33] acpi: pci: move BSEL into build_append_pcihp_slots() Igor Mammedov
2023-02-24 15:38 ` [PATCH 31/33] acpi: pci: move out ACPI PCI hotplug generator from generic slot generator build_append_pci_bus_devices() Igor Mammedov
2023-02-24 15:38 ` [PATCH 32/33] pcihp: move fields enabling hotplug into AcpiPciHpState Igor Mammedov
2023-02-24 15:38 ` [PATCH 33/33] pcihp: add ACPI PCI hotplug specific is_hotpluggable_bus() callback Igor Mammedov
2023-03-02 10:59 ` [PATCH 00/33] pci(pc/q35): acpi-index support on non-hotpluggable slots Michael S. Tsirkin
2023-03-02 12:05 ` Jonathan Cameron via
2023-03-02 12:07 ` Igor Mammedov
2023-03-02 23:21 ` Michael S. Tsirkin
2023-03-06 10:49 ` Igor Mammedov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230224153812.4176226-3-imammedo@redhat.com \
--to=imammedo@redhat.com \
--cc=ani@anisinha.ca \
--cc=berrange@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).