summaryrefslogtreecommitdiff
path: root/include/linux/dma-buf.h
diff options
context:
space:
mode:
authorXuelian Bai <xuelian.bai@samsung.com>2023-02-23 17:01:12 +0800
committerXuelian Bai <xuelian.bai@samsung.com>2023-08-15 14:02:15 +0800
commita69294ca3dd95a5dbf74dcf72a14c6b0c9268de6 (patch)
treec315af7529cbd3b839e9a1a61035595c566e3995 /include/linux/dma-buf.h
parent214093b11c1497342656c8b885110a0620ae95be (diff)
downloadmesa-a69294ca3dd95a5dbf74dcf72a14c6b0c9268de6.tar.gz
mesa-a69294ca3dd95a5dbf74dcf72a14c6b0c9268de6.tar.bz2
mesa-a69294ca3dd95a5dbf74dcf72a14c6b0c9268de6.zip
Upgrade to mesa22.3.5
1. Add missing linux header files which is not included in glibc 2. Disable unsupported fence syn related features 3. Fixed crash in pipeline cases Change-Id: I64c9b3fcddf119ccc34ad393244f03ec96618942 Signed-off-by: Xuelian Bai <xuelian.bai@samsung.com>
Diffstat (limited to 'include/linux/dma-buf.h')
-rw-r--r--include/linux/dma-buf.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/include/linux/dma-buf.h b/include/linux/dma-buf.h
new file mode 100644
index 00000000000..7f30393b92c
--- /dev/null
+++ b/include/linux/dma-buf.h
@@ -0,0 +1,50 @@
+/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
+/*
+ * Framework for buffer objects that can be shared across devices/subsystems.
+ *
+ * Copyright(C) 2015 Intel Ltd
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef _DMA_BUF_UAPI_H_
+#define _DMA_BUF_UAPI_H_
+
+#include <linux/types.h>
+
+/* begin/end dma-buf functions used for userspace mmap. */
+struct dma_buf_sync {
+ __u64 flags;
+};
+
+#define DMA_BUF_SYNC_READ (1 << 0)
+#define DMA_BUF_SYNC_WRITE (2 << 0)
+#define DMA_BUF_SYNC_RW (DMA_BUF_SYNC_READ | DMA_BUF_SYNC_WRITE)
+#define DMA_BUF_SYNC_START (0 << 2)
+#define DMA_BUF_SYNC_END (1 << 2)
+#define DMA_BUF_SYNC_VALID_FLAGS_MASK \
+ (DMA_BUF_SYNC_RW | DMA_BUF_SYNC_END)
+
+#define DMA_BUF_NAME_LEN 32
+
+#define DMA_BUF_BASE 'b'
+#define DMA_BUF_IOCTL_SYNC _IOW(DMA_BUF_BASE, 0, struct dma_buf_sync)
+
+/* 32/64bitness of this uapi was botched in android, there's no difference
+ * between them in actual uapi, they're just different numbers.
+ */
+#define DMA_BUF_SET_NAME _IOW(DMA_BUF_BASE, 1, const char *)
+#define DMA_BUF_SET_NAME_A _IOW(DMA_BUF_BASE, 1, u32)
+#define DMA_BUF_SET_NAME_B _IOW(DMA_BUF_BASE, 1, u64)
+
+#endif