aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/misc
diff options
context:
space:
mode:
authorIan Munsie <imunsie@au1.ibm.com>2014-10-08 04:55:05 -0400
committerMichael Ellerman <mpe@ellerman.id.au>2014-10-08 05:16:19 -0400
commita9282d01cf357379ce29103cec5e7651a53c634d (patch)
treeefbc02a23f5dbc8453cdb4584c0ac2cef1316ba0 /include/uapi/misc
parent881632c905f29fd7173250fd1d5b3a9a769d02be (diff)
cxl: Add documentation for userspace APIs
This documentation gives an overview of the hardware architecture, userspace APIs via /dev/cxl/afuM.N and the syfs files. It also adds a MAINTAINERS file entry for cxl. Signed-off-by: Ian Munsie <imunsie@au1.ibm.com> Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'include/uapi/misc')
-rw-r--r--include/uapi/misc/cxl.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/include/uapi/misc/cxl.h b/include/uapi/misc/cxl.h
index c232be6ae21f..cd6d789b73ec 100644
--- a/include/uapi/misc/cxl.h
+++ b/include/uapi/misc/cxl.h
@@ -13,7 +13,7 @@
13#include <linux/types.h> 13#include <linux/types.h>
14#include <linux/ioctl.h> 14#include <linux/ioctl.h>
15 15
16/* Structs for IOCTLS for userspace to talk to the kernel */ 16
17struct cxl_ioctl_start_work { 17struct cxl_ioctl_start_work {
18 __u64 flags; 18 __u64 flags;
19 __u64 work_element_descriptor; 19 __u64 work_element_descriptor;
@@ -26,19 +26,20 @@ struct cxl_ioctl_start_work {
26 __u64 reserved5; 26 __u64 reserved5;
27 __u64 reserved6; 27 __u64 reserved6;
28}; 28};
29
29#define CXL_START_WORK_AMR 0x0000000000000001ULL 30#define CXL_START_WORK_AMR 0x0000000000000001ULL
30#define CXL_START_WORK_NUM_IRQS 0x0000000000000002ULL 31#define CXL_START_WORK_NUM_IRQS 0x0000000000000002ULL
31#define CXL_START_WORK_ALL (CXL_START_WORK_AMR |\ 32#define CXL_START_WORK_ALL (CXL_START_WORK_AMR |\
32 CXL_START_WORK_NUM_IRQS) 33 CXL_START_WORK_NUM_IRQS)
33 34
34/* IOCTL numbers */ 35/* ioctl numbers */
35#define CXL_MAGIC 0xCA 36#define CXL_MAGIC 0xCA
36#define CXL_IOCTL_START_WORK _IOW(CXL_MAGIC, 0x00, struct cxl_ioctl_start_work) 37#define CXL_IOCTL_START_WORK _IOW(CXL_MAGIC, 0x00, struct cxl_ioctl_start_work)
37#define CXL_IOCTL_GET_PROCESS_ELEMENT _IOR(CXL_MAGIC, 0x01, __u32) 38#define CXL_IOCTL_GET_PROCESS_ELEMENT _IOR(CXL_MAGIC, 0x01, __u32)
38 39
39/* Events from read() */
40#define CXL_READ_MIN_SIZE 0x1000 /* 4K */ 40#define CXL_READ_MIN_SIZE 0x1000 /* 4K */
41 41
42/* Events from read() */
42enum cxl_event_type { 43enum cxl_event_type {
43 CXL_EVENT_RESERVED = 0, 44 CXL_EVENT_RESERVED = 0,
44 CXL_EVENT_AFU_INTERRUPT = 1, 45 CXL_EVENT_AFU_INTERRUPT = 1,