Re: [EXT] [RFC PATCH 06/11] misc: pci_endpoint_test: Use a common header file between endpoint driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 2023/03/17 23:47, Frank Li wrote:
pci@xxxxxxxxxxxxxxx
Subject: [EXT] [RFC PATCH 06/11] misc: pci_endpoint_test: Use a common
header file between endpoint driver

Caution: EXT Email

Duplicated definitions between pci-epf-test and pci_endpoint_test are
already moved to a header file. Remove the common definitions and include
the header file. In addition, the separate register address writes were
combined into a single write.

Signed-off-by: Shunsuke Mie <mie@xxxxxxxxxx>
---
  drivers/misc/pci_endpoint_test.c | 42 +-------------------------------
  1 file changed, 1 insertion(+), 41 deletions(-)

diff --git a/drivers/misc/pci_endpoint_test.c
b/drivers/misc/pci_endpoint_test.c
index 55733dee95ad..d4a42e9ab86a 100644
--- a/drivers/misc/pci_endpoint_test.c
+++ b/drivers/misc/pci_endpoint_test.c
@@ -22,52 +22,12 @@
  #include <linux/pci_ids.h>

  #include <linux/pci_regs.h>
+#include <linux/pci-epf-test.h>
Pci-epf-test.h was only used by these two files.

Actually, I think move  drivers/misc/pci_endpoint_test.c to under drivers/pci/endpoint/functions/
And shared one private header is more reasonable.
These two files should be stay together because tight coupling.

I agree that the shared header is not reasonable. However, it seems difficult to move pci_endpoint_test.c

because it is not an endpoint function driver. Furthermore, since Kselftest adaption [1] is being worked

on, I'd like to reconsider how we can apply the Kselftest patch.

[1] https://lore.kernel.org/all/20221007053934.5188-1-aman1.gupta@xxxxxxxxxxx/


  #include <uapi/linux/pcitest.h>

  #define DRV_MODULE_NAME                                "pci-endpoint-test"

-#define IRQ_TYPE_UNDEFINED                     -1
-#define IRQ_TYPE_LEGACY                                0
-#define IRQ_TYPE_MSI                           1
-#define IRQ_TYPE_MSIX                          2
-
-#define PCI_ENDPOINT_TEST_MAGIC                        0x0
-
-#define PCI_ENDPOINT_TEST_COMMAND              0x4
-#define COMMAND_RAISE_LEGACY_IRQ               BIT(0)
-#define COMMAND_RAISE_MSI_IRQ                  BIT(1)
-#define COMMAND_RAISE_MSIX_IRQ                 BIT(2)
-#define COMMAND_READ                           BIT(3)
-#define COMMAND_WRITE                          BIT(4)
-#define COMMAND_COPY                           BIT(5)
-
-#define PCI_ENDPOINT_TEST_STATUS               0x8
-#define STATUS_READ_SUCCESS                    BIT(0)
-#define STATUS_READ_FAIL                       BIT(1)
-#define STATUS_WRITE_SUCCESS                   BIT(2)
-#define STATUS_WRITE_FAIL                      BIT(3)
-#define STATUS_COPY_SUCCESS                    BIT(4)
-#define STATUS_COPY_FAIL                       BIT(5)
-#define STATUS_IRQ_RAISED                      BIT(6)
-#define STATUS_SRC_ADDR_INVALID                        BIT(7)
-#define STATUS_DST_ADDR_INVALID                        BIT(8)
-
-#define PCI_ENDPOINT_TEST_LOWER_SRC_ADDR       0x0c
-#define PCI_ENDPOINT_TEST_UPPER_SRC_ADDR       0x10
-
-#define PCI_ENDPOINT_TEST_LOWER_DST_ADDR       0x14
-#define PCI_ENDPOINT_TEST_UPPER_DST_ADDR       0x18
-
-#define PCI_ENDPOINT_TEST_SIZE                 0x1c
-#define PCI_ENDPOINT_TEST_CHECKSUM             0x20
-
-#define PCI_ENDPOINT_TEST_IRQ_TYPE             0x24
-#define PCI_ENDPOINT_TEST_IRQ_NUMBER           0x28
-
-#define PCI_ENDPOINT_TEST_FLAGS                        0x2c
-#define FLAG_USE_DMA                           BIT(0)
-
  #define PCI_DEVICE_ID_TI_AM654                 0xb00c
  #define PCI_DEVICE_ID_TI_J7200                 0xb00f
  #define PCI_DEVICE_ID_TI_AM64                  0xb010
--
2.25.1

Best,

Shunsuke.




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux