From: Igor Mammedov <imammedo@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Michael S. Tsirkin" <mst@redhat.com>, Ani Sinha <ani@anisinha.ca>
Subject: [PATCH 25/40] tests: acpi: add endpoint devices to bridges
Date: Thu, 12 Jan 2023 15:02:57 +0100 [thread overview]
Message-ID: <20230112140312.3096331-26-imammedo@redhat.com> (raw)
In-Reply-To: <20230112140312.3096331-1-imammedo@redhat.com>
to make sure that they are enumerated or ignored as expected
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
---
tests/qtest/bios-tables-test.c | 37 ++++++++++++++++++++++++++--------
1 file changed, 29 insertions(+), 8 deletions(-)
diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
index a8c17461c8..22b22c403d 100644
--- a/tests/qtest/bios-tables-test.c
+++ b/tests/qtest/bios-tables-test.c
@@ -875,7 +875,9 @@ static void test_acpi_piix4_tcg_bridge(void)
data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
test_vm_prepare("-S"
" -device pci-bridge,chassis_nr=1"
- " -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2", &data);
+ " -device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2"
+ " -device pci-testdev,bus=pci.0,addr=5.0"
+ " -device pci-testdev,bus=pci.1", &data);
/* hotplugged bridges section */
qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr",
@@ -884,6 +886,10 @@ static void test_acpi_piix4_tcg_bridge(void)
"{'bus': 'pci.1', 'addr': '0xf.1', 'chassis_nr': 4 }");
qtest_qmp_device_add(data.qts, "pci-bridge", "hpbrhost",
"{'bus': 'pci.0', 'addr': '4.0', 'chassis_nr': 5 }");
+ qtest_qmp_device_add(data.qts, "pci-testdev", "d1", "{'bus': 'pci.0' }");
+ qtest_qmp_device_add(data.qts, "pci-testdev", "d2", "{'bus': 'pci.1' }");
+ qtest_qmp_device_add(data.qts, "pci-testdev", "d3", "{'bus': 'hpbr', "
+ "'addr': '1.0' }");
qtest_qmp_send(data.qts, "{'execute':'cont' }");
qtest_qmp_eventwait(data.qts, "RESUME");
@@ -907,7 +913,9 @@ static void test_acpi_piix4_no_root_hotplug(void)
data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
test_acpi_one("-global PIIX4_PM.acpi-root-pci-hotplug=off "
"-device pci-bridge,chassis_nr=1 "
- "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data);
+ "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 "
+ "-device pci-testdev,bus=pci.0 "
+ "-device pci-testdev,bus=pci.1", &data);
free_test_data(&data);
}
@@ -922,7 +930,9 @@ static void test_acpi_piix4_no_bridge_hotplug(void)
data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
test_acpi_one("-global PIIX4_PM.acpi-pci-hotplug-with-bridge-support=off "
"-device pci-bridge,chassis_nr=1 "
- "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 ", &data);
+ "-device pci-bridge,bus=pci.1,addr=1.0,chassis_nr=2 "
+ "-device pci-testdev,bus=pci.0 "
+ "-device pci-testdev,bus=pci.1,addr=2.0", &data);
free_test_data(&data);
}
@@ -937,7 +947,9 @@ 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", &data);
+ "-device pci-bridge,chassis_nr=1 "
+ "-device pci-testdev,bus=pci.0 "
+ "-device pci-testdev,bus=pci.1", &data);
free_test_data(&data);
}
@@ -982,7 +994,9 @@ static void test_acpi_q35_tcg_bridge(void)
data.variant = ".bridge";
data.required_struct_types = base_required_struct_types;
data.required_struct_types_len = ARRAY_SIZE(base_required_struct_types);
- test_acpi_one("-device pci-bridge,chassis_nr=1", &data);
+ test_acpi_one("-device pci-bridge,chassis_nr=1,id=br1"
+ " -device pci-testdev,bus=pcie.0"
+ " -device pci-testdev,bus=br1", &data);
free_test_data(&data);
}
@@ -1001,8 +1015,11 @@ static void test_acpi_q35_multif_bridge(void)
" -device pci-bridge,bus=rp2,chassis_nr=4,id=br1"
" -device pcie-root-port,id=rphptgt1,port=0x0,chassis=5,addr=2.1"
" -device pcie-root-port,id=rphptgt2,port=0x0,chassis=6,addr=2.2"
- " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3",
- &data);
+ " -device pcie-root-port,id=rphptgt3,port=0x0,chassis=7,addr=2.3"
+ " -device pci-testdev,bus=pcie.0,addr=2.4"
+ " -device pci-testdev,bus=pcie.0,addr=5.0"
+ " -device pci-testdev,bus=rp0,addr=0.0"
+ " -device pci-testdev,bus=br1", &data);
/* hotplugged bridges section */
qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr1",
@@ -1010,7 +1027,11 @@ static void test_acpi_q35_multif_bridge(void)
qtest_qmp_device_add(data.qts, "pci-bridge", "hpbr2-multiif",
"{ 'bus': 'br1', 'addr': '2.2', 'chassis_nr': 129 }");
qtest_qmp_device_add(data.qts, "pcie-pci-bridge", "hpbr3",
- "{'bus': 'rp0', 'addr': '0.0' }");
+ "{'bus': 'rphptgt1', 'addr': '0.0' }");
+ qtest_qmp_device_add(data.qts, "pcie-root-port", "hprp",
+ "{'bus': 'rphptgt2', 'addr': '0.0' }");
+ qtest_qmp_device_add(data.qts, "pci-testdev", "hpnic",
+ "{'bus': 'rphptgt3', 'addr': '0.0' }");
qtest_qmp_send(data.qts, "{'execute':'cont' }");
qtest_qmp_eventwait(data.qts, "RESUME");
--
2.31.1
next prev parent reply other threads:[~2023-01-12 14:26 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-12 14:02 [PATCH 00/40] x86: fixing and cleaning up ACPI PCI code part 3 Igor Mammedov
2023-01-12 14:02 ` [PATCH 01/40] tests: qtest: print device_add error before failing test Igor Mammedov
2023-01-12 14:02 ` [PATCH 02/40] tests: acpi: cleanup arguments to make them more readable Igor Mammedov
2023-01-12 14:02 ` [PATCH 03/40] tests: acpi: whitelist DSDT blobs for tests that use pci-bridges Igor Mammedov
2023-01-12 14:02 ` [PATCH 04/40] tests: acpi: extend pcihp with nested bridges Igor Mammedov
2023-01-12 14:02 ` [PATCH 05/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:02 ` [PATCH 06/40] tests: acpi: cleanup use_uefi argument usage Igor Mammedov
2023-01-12 14:02 ` [PATCH 07/40] pci_bridge: remove whitespace Igor Mammedov
2023-01-12 14:02 ` [PATCH 08/40] x86: acpi: pcihp: clean up duplicate bridge_in_acpi assignment Igor Mammedov
2023-01-12 14:02 ` [PATCH 09/40] pci: acpi hotplug: rename x-native-hotplug to x-do-not-expose-native-hotplug-cap Igor Mammedov
2023-01-12 14:02 ` [PATCH 10/40] pcihp: piix4: do not call acpi_pcihp_reset() when ACPI PCI hotplug is disabled Igor Mammedov
2023-01-12 14:02 ` [PATCH 11/40] pci: acpihp: assign BSEL only to coldplugged bridges Igor Mammedov
2023-01-12 14:02 ` [PATCH 12/40] x86: pcihp: fix invalid AML PCNT calls to hotplugged bridges Igor Mammedov
2023-01-12 14:02 ` [PATCH 13/40] tests: boot_sector_test: avoid crashing if status is not available yet Igor Mammedov
2023-01-12 14:02 ` [PATCH 14/40] tests: acpi: extend bridge tests with hotplugged bridges Igor Mammedov
2023-01-12 14:02 ` [PATCH 15/40] tests: boot_sector_test(): make it multi-shot Igor Mammedov
2023-01-12 14:02 ` [PATCH 16/40] tests: acpi: add reboot cycle to bridge test Igor Mammedov
2023-01-12 14:02 ` [PATCH 17/40] tests: acpi: whitelist DSDT before refactoring acpi based PCI hotplug machinery Igor Mammedov
2023-01-12 14:02 ` [PATCH 18/40] pcihp: drop pcihp_bridge_en dependency when composing PCNT method Igor Mammedov
2023-01-12 14:02 ` [PATCH 19/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:02 ` [PATCH 20/40] tests: acpi: whitelist DSDT before refactoring acpi based PCI hotplug machinery Igor Mammedov
2023-01-12 14:02 ` [PATCH 21/40] pcihp: compose PCNT callchain right before its user _GPE._E01 Igor Mammedov
2023-01-12 14:02 ` [PATCH 22/40] pcihp: do not put empty PCNT in DSDT Igor Mammedov
2023-01-12 14:02 ` [PATCH 23/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:02 ` [PATCH 24/40] whitelist DSDT before adding endpoint devices to bridge testcases Igor Mammedov
2023-01-12 14:02 ` Igor Mammedov [this message]
2023-01-12 14:02 ` [PATCH 26/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:02 ` [PATCH 27/40] x86: pcihp: acpi: prepare slot ignore rule to work with self describing bridges Igor Mammedov
2023-01-12 14:03 ` [PATCH 28/40] pci: acpi: wire up AcpiDevAmlIf interface to generic bridge Igor Mammedov
2023-01-12 14:03 ` [PATCH 29/40] pcihp: make bridge describe itself using AcpiDevAmlIfClass:build_dev_aml Igor Mammedov
2023-01-12 14:03 ` [PATCH 30/40] pci: make sure pci_bus_is_express() won't error out with "discards ‘const’ qualifier" Igor Mammedov
2023-01-12 14:03 ` [PATCH 31/40] pcihp: isolate rule whether slot should be described in DSDT Igor Mammedov
2023-01-12 14:03 ` [PATCH 32/40] tests: acpi: whitelist DSDT before decoupling PCI hotplug code from basic slots description Igor Mammedov
2023-01-12 14:03 ` [PATCH 33/40] pcihp: acpi: decouple hotplug and generic " Igor Mammedov
2023-01-12 14:03 ` [PATCH 34/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:03 ` [PATCH 35/40] tests: acpi: whitelist DSDT blobs before removing dynamic _DSM on coldplugged bridges Igor Mammedov
2023-01-12 14:03 ` [PATCH 36/40] pcihp: acpi: ignore coldplugged bridges when composing hotpluggable slots Igor Mammedov
2023-01-12 14:03 ` [PATCH 37/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-12 14:03 ` [PATCH 38/40] tests: acpi: whitelist DSDT before moving non-hotpluggble slots description from hotplug path Igor Mammedov
2023-01-12 14:03 ` [PATCH 39/40] pcihp: generate populated non-hotpluggble slot descriptions on non-hotplug path Igor Mammedov
2023-01-12 14:03 ` [PATCH 40/40] tests: acpi: update expected blobs Igor Mammedov
2023-01-25 17:02 ` [PATCH 00/40] x86: fixing and cleaning up ACPI PCI code part 3 Igor Mammedov
2023-01-25 17:34 ` Michael S. Tsirkin
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=20230112140312.3096331-26-imammedo@redhat.com \
--to=imammedo@redhat.com \
--cc=ani@anisinha.ca \
--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).