blob: 6f1270764fc443b010ee73a118cffd393325d207 [file] [log] [blame]
Dan Albert287553d2017-02-16 10:47:51 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef __LINUX_MSM_ADSP_H
13#define __LINUX_MSM_ADSP_H
14
15#include <linux/types.h>
16#include <linux/ioctl.h>
17#include <asm/sizes.h>
18
19#define ADSP_IOCTL_MAGIC 'q'
20
21struct adsp_command_t {
22 uint16_t queue;
23 uint32_t len;
24 uint8_t *data;
25};
26
27struct adsp_event_t {
28 uint16_t type;
29 uint32_t timeout_ms;
30 uint16_t msg_id;
31 uint16_t flags;
32 uint32_t len;
33 uint8_t *data;
34};
35
36struct adsp_pmem_info_t {
37 int fd;
38 void *vaddr;
39};
40
41#define ADSP_IOCTL_ENABLE _IOR(ADSP_IOCTL_MAGIC, 1, unsigned)
42
43#define ADSP_IOCTL_DISABLE _IOR(ADSP_IOCTL_MAGIC, 2, unsigned)
44
45#define ADSP_IOCTL_DISABLE_ACK _IOR(ADSP_IOCTL_MAGIC, 3, unsigned)
46
47#define ADSP_IOCTL_WRITE_COMMAND _IOR(ADSP_IOCTL_MAGIC, 4, struct adsp_command_t *)
48
49#define ADSP_IOCTL_GET_EVENT _IOWR(ADSP_IOCTL_MAGIC, 5, struct adsp_event_data_t *)
50
51#define ADSP_IOCTL_DISABLE_EVENT_RSP _IOR(ADSP_IOCTL_MAGIC, 10, unsigned)
52
53#define ADSP_IOCTL_REGISTER_PMEM _IOW(ADSP_IOCTL_MAGIC, 13, struct adsp_pmem_info *)
54
55#define ADSP_IOCTL_ABORT_EVENT_READ _IOW(ADSP_IOCTL_MAGIC, 15, unsigned)
56
57#endif