xref: /linux/drivers/tee/tee_private.h (revision 621cde16e49b3ecf7d59a8106a20aaebfb4a59a9)
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