master
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2/*
3 * pcitest.h - PCI test uapi defines
4 *
5 * Copyright (C) 2017 Texas Instruments
6 * Author: Kishon Vijay Abraham I <kishon@ti.com>
7 *
8 */
9
10#ifndef __UAPI_LINUX_PCITEST_H
11#define __UAPI_LINUX_PCITEST_H
12
13#define PCITEST_BAR _IO('P', 0x1)
14#define PCITEST_INTX_IRQ _IO('P', 0x2)
15#define PCITEST_LEGACY_IRQ PCITEST_INTX_IRQ
16#define PCITEST_MSI _IOW('P', 0x3, int)
17#define PCITEST_WRITE _IOW('P', 0x4, unsigned long)
18#define PCITEST_READ _IOW('P', 0x5, unsigned long)
19#define PCITEST_COPY _IOW('P', 0x6, unsigned long)
20#define PCITEST_MSIX _IOW('P', 0x7, int)
21#define PCITEST_SET_IRQTYPE _IOW('P', 0x8, int)
22#define PCITEST_GET_IRQTYPE _IO('P', 0x9)
23#define PCITEST_BARS _IO('P', 0xa)
24#define PCITEST_DOORBELL _IO('P', 0xb)
25#define PCITEST_CLEAR_IRQ _IO('P', 0x10)
26
27#define PCITEST_IRQ_TYPE_UNDEFINED -1
28#define PCITEST_IRQ_TYPE_INTX 0
29#define PCITEST_IRQ_TYPE_MSI 1
30#define PCITEST_IRQ_TYPE_MSIX 2
31#define PCITEST_IRQ_TYPE_AUTO 3
32
33#define PCITEST_FLAGS_USE_DMA 0x00000001
34
35struct pci_endpoint_test_xfer_param {
36 unsigned long size;
37 unsigned char flags;
38};
39
40#endif /* __UAPI_LINUX_PCITEST_H */