Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      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_AUDIO_H
     13 #define __LINUX_MSM_AUDIO_H
     14 
     15 #include <linux/types.h>
     16 #include <linux/ioctl.h>
     17 #include <asm/sizes.h>
     18 
     19 #define AUDIO_IOCTL_MAGIC 'a'
     20 
     21 #define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned)
     22 #define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned)
     23 #define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned)
     24 #define AUDIO_GET_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, unsigned)
     25 #define AUDIO_SET_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 4, unsigned)
     26 #define AUDIO_GET_STATS _IOR(AUDIO_IOCTL_MAGIC, 5, unsigned)
     27 #define AUDIO_ENABLE_AUDPP _IOW(AUDIO_IOCTL_MAGIC, 6, unsigned)
     28 #define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned)
     29 #define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned)
     30 #define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned)
     31 #define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned)
     32 #define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
     33 #define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
     34 #define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 13, unsigned)
     35 #define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
     36 
     37 struct msm_audio_config {
     38  uint32_t buffer_size;
     39  uint32_t buffer_count;
     40  uint32_t channel_count;
     41  uint32_t sample_rate;
     42  uint32_t type;
     43  uint32_t unused[3];
     44 };
     45 
     46 struct msm_audio_stats {
     47  uint32_t byte_count;
     48  uint32_t sample_count;
     49  uint32_t unused[2];
     50 };
     51 
     52 #define SND_IOCTL_MAGIC 's'
     53 
     54 #define SND_MUTE_UNMUTED 0
     55 #define SND_MUTE_MUTED 1
     56 
     57 struct msm_snd_device_config {
     58  uint32_t device;
     59  uint32_t ear_mute;
     60  uint32_t mic_mute;
     61 };
     62 
     63 #define SND_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_device_config *)
     64 
     65 #define SND_METHOD_VOICE 0
     66 
     67 struct msm_snd_volume_config {
     68  uint32_t device;
     69  uint32_t method;
     70  uint32_t volume;
     71 };
     72 
     73 #define SND_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_snd_volume_config *)
     74 
     75 #define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
     76 
     77 struct msm_snd_endpoint {
     78  int id;
     79  char name[64];
     80 };
     81 
     82 #define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
     83 
     84 #endif
     85 
     86