voice_svc.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef __VOICE_SVC_H__
  2. #define __VOICE_SVC_H__
  3. #include <linux/types.h>
  4. #include <linux/ioctl.h>
  5. #define VOICE_SVC_DRIVER_NAME "voice_svc"
  6. #define VOICE_SVC_MVM_STR "MVM"
  7. #define VOICE_SVC_CVS_STR "CVS"
  8. #define MAX_APR_SERVICE_NAME_LEN 64
  9. struct voice_svc_register {
  10. char svc_name[MAX_APR_SERVICE_NAME_LEN];
  11. __u32 src_port;
  12. __u8 reg_flag;
  13. };
  14. struct voice_svc_cmd_response {
  15. __u32 src_port;
  16. __u32 dest_port;
  17. __u32 token;
  18. __u32 opcode;
  19. __u32 payload_size;
  20. __u8 payload[0];
  21. };
  22. struct voice_svc_cmd_request {
  23. char svc_name[MAX_APR_SERVICE_NAME_LEN];
  24. __u32 src_port;
  25. __u32 dest_port;
  26. __u32 token;
  27. __u32 opcode;
  28. __u32 payload_size;
  29. __u8 payload[0];
  30. };
  31. #define VOICE_SVC_MAGIC 'N'
  32. #define SNDRV_VOICE_SVC_REGISTER_SVC _IOWR(VOICE_SVC_MAGIC, \
  33. 0x01, struct voice_svc_register)
  34. #define SNDRV_VOICE_SVC_CMD_RESPONSE _IOWR(VOICE_SVC_MAGIC, \
  35. 0x02, struct voice_svc_cmd_response)
  36. #define SNDRV_VOICE_SVC_CMD_REQUEST _IOWR(VOICE_SVC_MAGIC, \
  37. 0x03, struct voice_svc_cmd_request)
  38. #endif