[PATCH v3 0/1] PCI: Initial KUnit test fixture for resource assignment

From: Naveen Naidu
Date: Thu Nov 18 2021 - 12:19:16 EST


Currently it's hard to deubg issues in the resource assignment code of
the PCI because of the long reproduction cycles between the developer
trying to fix the code and the user testing it due to the lack of
hardware device with the developer [1].

[1]:
https://lore.kernel.org/all/20210621123714.GA3286648@bjorn-Precision-5520/

Bjorn, suggested that it would be really good if we could have a test
fixture for debugging/testing resource assignment.

The patch attached along with the cover letter is an attempt to lay the
foundation and also have a proof of concept to show that it is possible
to have a test fixture to debug the resource assignment code.

Since there are a lot of things which happens during the resource
assignement phase, the first version only tests the __pci_read_base()
function since that was the most easiest to set up.

Hopefully, in the future patches I'll be able to write more KUnit tests
for the other parts responsible during the resource assignment phase and
get closer to the goal of having a complete test fixtures :)

Thanks,
Naveen

Changelog
=========

v3:
- Rename init_registers to init_test_registers
v2:
- Add test cases to test resource assignment for Type 1 devices
- Fix a error (a function was not static) found by Kernel Test Robot

Naveen Naidu (1):
[PATCH v3 1/1] PCI: Add KUnit tests for __pci_read_base()

drivers/pci/Kconfig | 4 +
drivers/pci/Makefile | 3 +
drivers/pci/pci-read-base-test.c | 803 +++++++++++++++++++++++++++++++
3 files changed, 810 insertions(+)
create mode 100644 drivers/pci/pci-read-base-test.c

--
2.25.1