1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (c) 2015-2016, Linaro Limited 4 */ 5 #ifndef TEE_PRIVATE_H 6 #define TEE_PRIVATE_H 7 8 #include <linux/cdev.h> 9 #include <linux/completion.h> 10 #include <linux/device.h> 11 #include <linux/kref.h> 12 #include <linux/mutex.h> 13 #include <linux/types.h> 14 15 int tee_shm_get_fd(struct tee_shm *shm); 16 17 bool tee_device_get(struct tee_device *teedev); 18 void tee_device_put(struct tee_device *teedev); 19 20 void teedev_ctx_get(struct tee_context *ctx); 21 void teedev_ctx_put(struct tee_context *ctx); 22 23 struct tee_shm *tee_shm_alloc_user_buf(struct tee_context *ctx, size_t size); 24 struct tee_shm *tee_shm_register_user_buf(struct tee_context *ctx, 25 unsigned long addr, size_t length); 26 27 #endif /*TEE_PRIVATE_H*/ 28