tz_mod.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #ifndef TZ_MOD_H
  2. #define TZ_MOD_H
  3. /*****************************************************************************
  4. * MODULE DEFINITION
  5. *****************************************************************************/
  6. #define MODULE_NAME "[MTEE_MOD]"
  7. #define TZ_DEV_NAME "trustzone"
  8. #define MAJOR_DEV_NUM 197
  9. /*****************************************************************************
  10. * IOCTL DEFINITION
  11. *****************************************************************************/
  12. #define MTEE_IOC_MAGIC 'T'
  13. #define MTEE_CMD_OPEN_SESSION \
  14. _IOWR(MTEE_IOC_MAGIC, 1, struct kree_session_cmd_param)
  15. #define MTEE_CMD_CLOSE_SESSION \
  16. _IOWR(MTEE_IOC_MAGIC, 2, struct kree_session_cmd_param)
  17. #define MTEE_CMD_TEE_SERVICE \
  18. _IOWR(MTEE_IOC_MAGIC, 3, struct kree_tee_service_cmd_param)
  19. #define MTEE_CMD_SHM_REG \
  20. _IOWR(MTEE_IOC_MAGIC, 4, struct kree_tee_service_cmd_param)
  21. #define MTEE_CMD_SHM_UNREG \
  22. _IOWR(MTEE_IOC_MAGIC, 5, struct kree_tee_service_cmd_param)
  23. #define DEV_IOC_MAXNR (10)
  24. /* param for open/close session */
  25. struct kree_session_cmd_param {
  26. int32_t ret;
  27. int32_t handle;
  28. uint64_t data;
  29. };
  30. /* param for tee service call */
  31. struct kree_tee_service_cmd_param {
  32. int32_t ret;
  33. int32_t handle;
  34. uint32_t command;
  35. uint32_t paramTypes;
  36. uint64_t param;
  37. };
  38. /* param for shared memory */
  39. struct kree_sharedmemory_cmd_param {
  40. int32_t ret;
  41. uint32_t session;
  42. uint32_t mem_handle;
  43. uint32_t command;
  44. uint64_t buffer;
  45. uint32_t size;
  46. uint32_t control; /* 0 = write, 1 = read only */
  47. };
  48. #endif /* end of DEVFINO_H */