19c92ab61SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2967c9ccaSJens Wiklander /* 3967c9ccaSJens Wiklander * Copyright (c) 2015-2016, Linaro Limited 4967c9ccaSJens Wiklander */ 5967c9ccaSJens Wiklander #ifndef TEE_PRIVATE_H 6967c9ccaSJens Wiklander #define TEE_PRIVATE_H 7967c9ccaSJens Wiklander 8967c9ccaSJens Wiklander #include <linux/cdev.h> 9967c9ccaSJens Wiklander #include <linux/completion.h> 10967c9ccaSJens Wiklander #include <linux/device.h> 11967c9ccaSJens Wiklander #include <linux/kref.h> 12967c9ccaSJens Wiklander #include <linux/mutex.h> 13967c9ccaSJens Wiklander #include <linux/types.h> 14967c9ccaSJens Wiklander 15967c9ccaSJens Wiklander int tee_shm_get_fd(struct tee_shm *shm); 16967c9ccaSJens Wiklander 17967c9ccaSJens Wiklander bool tee_device_get(struct tee_device *teedev); 18967c9ccaSJens Wiklander void tee_device_put(struct tee_device *teedev); 19967c9ccaSJens Wiklander 20217e0250SVolodymyr Babchuk void teedev_ctx_get(struct tee_context *ctx); 21217e0250SVolodymyr Babchuk void teedev_ctx_put(struct tee_context *ctx); 22217e0250SVolodymyr Babchuk 2371cc47d4SJens Wiklander struct tee_shm *tee_shm_alloc_user_buf(struct tee_context *ctx, size_t size); 24*056d3fedSJens Wiklander struct tee_shm *tee_shm_register_user_buf(struct tee_context *ctx, 25*056d3fedSJens Wiklander unsigned long addr, size_t length); 2671cc47d4SJens Wiklander 27967c9ccaSJens Wiklander #endif /*TEE_PRIVATE_H*/ 28