diff mbox series

[v4,1/6] selftests: pci_endpoint: Add GET_IRQTYPE checks to each interrupt test

Message ID 20250225110252.28866-2-hayashi.kunihiko@socionext.com (mailing list archive)
State New
Delegated to: Krzysztof WilczyƄski
Headers show
Series Fix some issues related to an interrupt type in pci_endpoint_test | expand

Commit Message

Kunihiko Hayashi Feb. 25, 2025, 11:02 a.m. UTC
Add GET_IRQTYPE API checks to each interrupt test.
And change pci_ep_ioctl() to get the appropriate return value from
ioctl().

Suggested-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
---
 .../selftests/pci_endpoint/pci_endpoint_test.c        | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c b/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
index 576c590b277b..d05e107d0698 100644
--- a/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
+++ b/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c
@@ -25,7 +25,7 @@ 
 #define pci_ep_ioctl(cmd, arg)			\
 ({						\
 	ret = ioctl(self->fd, cmd, arg);	\
-	ret = ret < 0 ? -errno : 0;		\
+	ret = ret < 0 ? -errno : ret;		\
 })
 
 static const char *test_device = "/dev/pci-endpoint-test.0";
@@ -102,6 +102,9 @@  TEST_F(pci_ep_basic, LEGACY_IRQ_TEST)
 	pci_ep_ioctl(PCITEST_SET_IRQTYPE, 0);
 	ASSERT_EQ(0, ret) TH_LOG("Can't set Legacy IRQ type");
 
+	pci_ep_ioctl(PCITEST_GET_IRQTYPE, 0);
+	ASSERT_EQ(0, ret) TH_LOG("Can't get Legacy IRQ type");
+
 	pci_ep_ioctl(PCITEST_LEGACY_IRQ, 0);
 	EXPECT_FALSE(ret) TH_LOG("Test failed for Legacy IRQ");
 }
@@ -113,6 +116,9 @@  TEST_F(pci_ep_basic, MSI_TEST)
 	pci_ep_ioctl(PCITEST_SET_IRQTYPE, 1);
 	ASSERT_EQ(0, ret) TH_LOG("Can't set MSI IRQ type");
 
+	pci_ep_ioctl(PCITEST_GET_IRQTYPE, 0);
+	ASSERT_EQ(1, ret) TH_LOG("Can't get MSI IRQ type");
+
 	for (i = 1; i <= 32; i++) {
 		pci_ep_ioctl(PCITEST_MSI, i);
 		EXPECT_FALSE(ret) TH_LOG("Test failed for MSI%d", i);
@@ -126,6 +132,9 @@  TEST_F(pci_ep_basic, MSIX_TEST)
 	pci_ep_ioctl(PCITEST_SET_IRQTYPE, 2);
 	ASSERT_EQ(0, ret) TH_LOG("Can't set MSI-X IRQ type");
 
+	pci_ep_ioctl(PCITEST_GET_IRQTYPE, 0);
+	ASSERT_EQ(2, ret) TH_LOG("Can't get MSI-X IRQ type");
+
 	for (i = 1; i <= 2048; i++) {
 		pci_ep_ioctl(PCITEST_MSIX, i);
 		EXPECT_FALSE(ret) TH_LOG("Test failed for MSI-X%d", i);