1 /* 2 * Copyright (c) 2013-2015, The Linux Foundation. All rights reserved. 3 * 4 * This program is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License version 2 and 6 * only version 2 as published by the Free Software Foundation. 7 8 * This program is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 * GNU General Public License for more details. 12 */ 13 14 #ifndef _DEV_DEP_H 15 #define _DEV_DEP_H 16 17 struct dolby_param_data { 18 int32_t version; 19 int32_t device_id; 20 int32_t be_id; 21 int32_t param_id; 22 int32_t length; 23 int32_t __user *data; 24 }; 25 26 struct dolby_param_license { 27 int32_t dmid; 28 int32_t license_key; 29 }; 30 31 #define SNDRV_DEVDEP_DAP_IOCTL_SET_PARAM\ 32 _IOWR('U', 0x10, struct dolby_param_data) 33 #define SNDRV_DEVDEP_DAP_IOCTL_GET_PARAM\ 34 _IOR('U', 0x11, struct dolby_param_data) 35 #define SNDRV_DEVDEP_DAP_IOCTL_DAP_COMMAND\ 36 _IOWR('U', 0x13, struct dolby_param_data) 37 #define SNDRV_DEVDEP_DAP_IOCTL_DAP_LICENSE\ 38 _IOWR('U', 0x14, struct dolby_param_license) 39 #define SNDRV_DEVDEP_DAP_IOCTL_GET_VISUALIZER\ 40 _IOR('U', 0x15, struct dolby_param_data) 41 42 #define DTS_EAGLE_MODULE 0x00005000 43 #define DTS_EAGLE_MODULE_ENABLE 0x00005001 44 #define EAGLE_DRIVER_ID 0xF2 45 #define DTS_EAGLE_IOCTL_GET_CACHE_SIZE _IOR(EAGLE_DRIVER_ID, 0, int) 46 #define DTS_EAGLE_IOCTL_SET_CACHE_SIZE _IOW(EAGLE_DRIVER_ID, 1, int) 47 #define DTS_EAGLE_IOCTL_GET_PARAM _IOR(EAGLE_DRIVER_ID, 2, void*) 48 #define DTS_EAGLE_IOCTL_SET_PARAM _IOW(EAGLE_DRIVER_ID, 3, void*) 49 #define DTS_EAGLE_IOCTL_SET_CACHE_BLOCK _IOW(EAGLE_DRIVER_ID, 4, void*) 50 #define DTS_EAGLE_IOCTL_SET_ACTIVE_DEVICE _IOW(EAGLE_DRIVER_ID, 5, void*) 51 #define DTS_EAGLE_IOCTL_GET_LICENSE _IOR(EAGLE_DRIVER_ID, 6, void*) 52 #define DTS_EAGLE_IOCTL_SET_LICENSE _IOW(EAGLE_DRIVER_ID, 7, void*) 53 #define DTS_EAGLE_IOCTL_SEND_LICENSE _IOW(EAGLE_DRIVER_ID, 8, int) 54 #define DTS_EAGLE_IOCTL_SET_VOLUME_COMMANDS _IOW(EAGLE_DRIVER_ID, 9, void*) 55 #define DTS_EAGLE_FLAG_IOCTL_PRE (1<<30) 56 #define DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE (1<<31) 57 #define DTS_EAGLE_FLAG_IOCTL_GETFROMCORE DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE 58 #define DTS_EAGLE_FLAG_IOCTL_MASK (~(DTS_EAGLE_FLAG_IOCTL_PRE | \ 59 DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE)) 60 #define DTS_EAGLE_FLAG_ALSA_GET (1<<31) 61 62 struct dts_eagle_param_desc { 63 uint32_t id; 64 uint32_t size; 65 int32_t offset; 66 uint32_t device; 67 } __packed; 68 69 #define HWDEP_FE_BASE 3000 // unique base for FE hw dep nodes 70 struct snd_pcm_mmap_fd { 71 int32_t dir; 72 int32_t fd; 73 int32_t size; 74 int32_t actual_size; 75 }; 76 77 #define SNDRV_PCM_IOCTL_MMAP_DATA_FD _IOWR('U', 0xd2, struct snd_pcm_mmap_fd) 78 79 #endif 80