-
Notifications
You must be signed in to change notification settings - Fork 198
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
xtest: copy dma-heap.h from Linux kernel v6.9
Copy the needed dma-heap.h from Linux kernel v6.9. This is a stable ABI so it doesn't have to be synced with each new kernel. dma-heap.h can be removed when the cross toolchains provide the file. Signed-off-by: Jens Wiklander <[email protected]>
- Loading branch information
1 parent
c7e0b13
commit 98f0407
Showing
3 changed files
with
55 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ | ||
/* | ||
* DMABUF Heaps Userspace API | ||
* | ||
* Copyright (C) 2011 Google, Inc. | ||
* Copyright (C) 2019 Linaro Ltd. | ||
*/ | ||
#ifndef _UAPI_LINUX_DMABUF_POOL_H | ||
#define _UAPI_LINUX_DMABUF_POOL_H | ||
|
||
#include <linux/ioctl.h> | ||
#include <linux/types.h> | ||
|
||
/** | ||
* DOC: DMABUF Heaps Userspace API | ||
*/ | ||
|
||
/* Valid FD_FLAGS are O_CLOEXEC, O_RDONLY, O_WRONLY, O_RDWR */ | ||
#define DMA_HEAP_VALID_FD_FLAGS (O_CLOEXEC | O_ACCMODE) | ||
|
||
/* Currently no heap flags */ | ||
#define DMA_HEAP_VALID_HEAP_FLAGS (0) | ||
|
||
/** | ||
* struct dma_heap_allocation_data - metadata passed from userspace for | ||
* allocations | ||
* @len: size of the allocation | ||
* @fd: will be populated with a fd which provides the | ||
* handle to the allocated dma-buf | ||
* @fd_flags: file descriptor flags used when allocating | ||
* @heap_flags: flags passed to heap | ||
* | ||
* Provided by userspace as an argument to the ioctl | ||
*/ | ||
struct dma_heap_allocation_data { | ||
__u64 len; | ||
__u32 fd; | ||
__u32 fd_flags; | ||
__u64 heap_flags; | ||
}; | ||
|
||
#define DMA_HEAP_IOC_MAGIC 'H' | ||
|
||
/** | ||
* DOC: DMA_HEAP_IOCTL_ALLOC - allocate memory from pool | ||
* | ||
* Takes a dma_heap_allocation_data struct and returns it with the fd field | ||
* populated with the dmabuf handle of the allocation. | ||
*/ | ||
#define DMA_HEAP_IOCTL_ALLOC _IOWR(DMA_HEAP_IOC_MAGIC, 0x0,\ | ||
struct dma_heap_allocation_data) | ||
|
||
#endif /* _UAPI_LINUX_DMABUF_POOL_H */ |