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 */