16ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh/**************************************************************************** 26ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh **************************************************************************** 36ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** 46ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** This header was automatically generated from a Linux kernel header 56ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** of the same name, to make information necessary for userspace to 66ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** call into the kernel available to libc. It contains only constants, 76ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** structures, and macros generated from the original header, and thus, 86ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** contains no copyrightable information. 96ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh *** 106ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh **************************************************************************** 116ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh ****************************************************************************/ 126ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#ifndef __LINUX_MSM_ADSP_H 136ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define __LINUX_MSM_ADSP_H 146ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 156ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/types.h> 166ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <linux/ioctl.h> 176ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#include <asm/sizes.h> 186ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 196ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_MAGIC 'q' 206ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 216ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct adsp_command_t { 226ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint16_t queue; 236ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint32_t len; 246ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint8_t *data; 256ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh}; 266ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 276ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct adsp_event_t { 286ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint16_t type; 296ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint32_t timeout_ms; 306ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint16_t msg_id; 316ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint16_t flags; 326ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint32_t len; 336ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh uint8_t *data; 346ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh}; 356ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 366ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsiehstruct adsp_pmem_info_t { 376ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh int fd; 386ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh void *vaddr; 396ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh}; 406ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 416ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_ENABLE _IOR(ADSP_IOCTL_MAGIC, 1, unsigned) 426ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 436ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_DISABLE _IOR(ADSP_IOCTL_MAGIC, 2, unsigned) 446ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 456ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_DISABLE_ACK _IOR(ADSP_IOCTL_MAGIC, 3, unsigned) 466ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 476ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_WRITE_COMMAND _IOR(ADSP_IOCTL_MAGIC, 4, struct adsp_command_t *) 486ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 496ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_GET_EVENT _IOWR(ADSP_IOCTL_MAGIC, 5, struct adsp_event_data_t *) 506ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 516ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_DISABLE_EVENT_RSP _IOR(ADSP_IOCTL_MAGIC, 10, unsigned) 526ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 536ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_REGISTER_PMEM _IOW(ADSP_IOCTL_MAGIC, 13, struct adsp_pmem_info *) 546ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 556ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#define ADSP_IOCTL_ABORT_EVENT_READ _IOW(ADSP_IOCTL_MAGIC, 15, unsigned) 566ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh 576ecc1bfab1621eaf5a17f82020a26468c537cdeaAndrew Hsieh#endif 58