1 | /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ |
2 | #ifndef _UAPIUUACCE_H |
3 | #define _UAPIUUACCE_H |
4 | |
5 | #include <linux/types.h> |
6 | #include <linux/ioctl.h> |
7 | |
8 | /* |
9 | * UACCE_CMD_START_Q: Start queue |
10 | */ |
11 | #define UACCE_CMD_START_Q _IO('W', 0) |
12 | |
13 | /* |
14 | * UACCE_CMD_PUT_Q: |
15 | * User actively stop queue and free queue resource immediately |
16 | * Optimization method since close fd may delay |
17 | */ |
18 | #define UACCE_CMD_PUT_Q _IO('W', 1) |
19 | |
20 | /* |
21 | * UACCE Device flags: |
22 | * UACCE_DEV_SVA: Shared Virtual Addresses |
23 | * Support PASID |
24 | * Support device page faults (PCI PRI or SMMU Stall) |
25 | */ |
26 | #define UACCE_DEV_SVA BIT(0) |
27 | |
28 | /** |
29 | * enum uacce_qfrt: queue file region type |
30 | * @UACCE_QFRT_MMIO: device mmio region |
31 | * @UACCE_QFRT_DUS: device user share region |
32 | */ |
33 | enum uacce_qfrt { |
34 | UACCE_QFRT_MMIO = 0, |
35 | UACCE_QFRT_DUS = 1, |
36 | }; |
37 | |
38 | #endif |
39 | |