1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _LINUX_UDMABUF_H
3 #define _LINUX_UDMABUF_H
4 
5 #include "standard-headers/linux/types.h"
6 
7 #define UDMABUF_FLAGS_CLOEXEC	0x01
8 
9 struct udmabuf_create {
10 	uint32_t memfd;
11 	uint32_t flags;
12 	uint64_t offset;
13 	uint64_t size;
14 };
15 
16 struct udmabuf_create_item {
17 	uint32_t memfd;
18 	uint32_t __pad;
19 	uint64_t offset;
20 	uint64_t size;
21 };
22 
23 struct udmabuf_create_list {
24 	uint32_t flags;
25 	uint32_t count;
26 	struct udmabuf_create_item list[];
27 };
28 
29 #define UDMABUF_CREATE       _IOW('u', 0x42, struct udmabuf_create)
30 #define UDMABUF_CREATE_LIST  _IOW('u', 0x43, struct udmabuf_create_list)
31 
32 #endif /* _LINUX_UDMABUF_H */
33