blob: 704501878b21c21885fcc356cb28e077427268e0 [file] [log] [blame]
Vicky Sehrawata48de5e2014-02-05 16:52:32 -08001#ifndef __VOICE_SVC_H__
2#define __VOICE_SVC_H__
3
4#include <linux/types.h>
5#include <linux/ioctl.h>
6
7#define VOICE_SVC_DRIVER_NAME "voice_svc"
8
9#define VOICE_SVC_MVM_STR "MVM"
10#define VOICE_SVC_CVS_STR "CVS"
11#define MAX_APR_SERVICE_NAME_LEN 64
12
13struct voice_svc_register {
14 char svc_name[MAX_APR_SERVICE_NAME_LEN];
15 __u32 src_port;
16 __u8 reg_flag;
17};
18
19struct voice_svc_cmd_response {
20 __u32 src_port;
21 __u32 dest_port;
22 __u32 token;
23 __u32 opcode;
24 __u32 payload_size;
25 __u8 payload[0];
26};
27
28struct voice_svc_cmd_request {
29 char svc_name[MAX_APR_SERVICE_NAME_LEN];
30 __u32 src_port;
31 __u32 dest_port;
32 __u32 token;
33 __u32 opcode;
34 __u32 payload_size;
35 __u8 payload[0];
36};
37
38#define VOICE_SVC_MAGIC 'N'
39
40#define SNDRV_VOICE_SVC_REGISTER_SVC _IOWR(VOICE_SVC_MAGIC, \
41 0x01, struct voice_svc_register)
42#define SNDRV_VOICE_SVC_CMD_RESPONSE _IOWR(VOICE_SVC_MAGIC, \
43 0x02, struct voice_svc_cmd_response)
44#define SNDRV_VOICE_SVC_CMD_REQUEST _IOWR(VOICE_SVC_MAGIC, \
45 0x03, struct voice_svc_cmd_request)
46#endif