1*4882a593Smuzhiyun /* SPDX-License-Identifier: MIT */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * Copyright © 2020 Intel Corporation 4*4882a593Smuzhiyun */ 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun #ifndef SHMEM_UTILS_H 7*4882a593Smuzhiyun #define SHMEM_UTILS_H 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun #include <linux/types.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun struct drm_i915_gem_object; 12*4882a593Smuzhiyun struct file; 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun struct file *shmem_create_from_data(const char *name, void *data, size_t len); 15*4882a593Smuzhiyun struct file *shmem_create_from_object(struct drm_i915_gem_object *obj); 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun void *shmem_pin_map(struct file *file); 18*4882a593Smuzhiyun void shmem_unpin_map(struct file *file, void *ptr); 19*4882a593Smuzhiyun 20*4882a593Smuzhiyun int shmem_read(struct file *file, loff_t off, void *dst, size_t len); 21*4882a593Smuzhiyun int shmem_write(struct file *file, loff_t off, void *src, size_t len); 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #endif /* SHMEM_UTILS_H */ 24