xref: /aosp_15_r20/bionic/libc/kernel/uapi/sound/sb16_csp.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI__SOUND_SB16_CSP_H
8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI__SOUND_SB16_CSP_H
9*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MODE_NONE 0x00
10*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MODE_DSP_READ 0x01
11*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MODE_DSP_WRITE 0x02
12*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MODE_QSOUND 0x04
13*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_LOAD_FROMUSER 0x01
14*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_LOAD_INITBLOCK 0x02
15*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_SAMPLE_8BIT 0x01
16*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_SAMPLE_16BIT 0x02
17*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MONO 0x01
18*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_STEREO 0x02
19*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_RATE_8000 0x01
20*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_RATE_11025 0x02
21*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_RATE_22050 0x04
22*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_RATE_44100 0x08
23*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_RATE_ALL 0x0f
24*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_IDLE 0x00
25*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_LOADED 0x01
26*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_RUNNING 0x02
27*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_PAUSED 0x04
28*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_AUTO 0x08
29*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_ST_QSOUND 0x10
30*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_QSOUND_MAX_RIGHT 0x20
31*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_MAX_MICROCODE_FILE_SIZE 0x3000
32*8d67ca89SAndroid Build Coastguard Worker struct snd_sb_csp_mc_header {
33*8d67ca89SAndroid Build Coastguard Worker   char codec_name[16];
34*8d67ca89SAndroid Build Coastguard Worker   unsigned short func_req;
35*8d67ca89SAndroid Build Coastguard Worker };
36*8d67ca89SAndroid Build Coastguard Worker struct snd_sb_csp_microcode {
37*8d67ca89SAndroid Build Coastguard Worker   struct snd_sb_csp_mc_header info;
38*8d67ca89SAndroid Build Coastguard Worker   unsigned char data[SNDRV_SB_CSP_MAX_MICROCODE_FILE_SIZE];
39*8d67ca89SAndroid Build Coastguard Worker };
40*8d67ca89SAndroid Build Coastguard Worker struct snd_sb_csp_start {
41*8d67ca89SAndroid Build Coastguard Worker   int sample_width;
42*8d67ca89SAndroid Build Coastguard Worker   int channels;
43*8d67ca89SAndroid Build Coastguard Worker };
44*8d67ca89SAndroid Build Coastguard Worker struct snd_sb_csp_info {
45*8d67ca89SAndroid Build Coastguard Worker   char codec_name[16];
46*8d67ca89SAndroid Build Coastguard Worker   unsigned short func_nr;
47*8d67ca89SAndroid Build Coastguard Worker   unsigned int acc_format;
48*8d67ca89SAndroid Build Coastguard Worker   unsigned short acc_channels;
49*8d67ca89SAndroid Build Coastguard Worker   unsigned short acc_width;
50*8d67ca89SAndroid Build Coastguard Worker   unsigned short acc_rates;
51*8d67ca89SAndroid Build Coastguard Worker   unsigned short csp_mode;
52*8d67ca89SAndroid Build Coastguard Worker   unsigned short run_channels;
53*8d67ca89SAndroid Build Coastguard Worker   unsigned short run_width;
54*8d67ca89SAndroid Build Coastguard Worker   unsigned short version;
55*8d67ca89SAndroid Build Coastguard Worker   unsigned short state;
56*8d67ca89SAndroid Build Coastguard Worker };
57*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_INFO _IOR('H', 0x10, struct snd_sb_csp_info)
58*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_LOAD_CODE _IOC(_IOC_WRITE, 'H', 0x11, sizeof(struct snd_sb_csp_microcode))
59*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_UNLOAD_CODE _IO('H', 0x12)
60*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_START _IOW('H', 0x13, struct snd_sb_csp_start)
61*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_STOP _IO('H', 0x14)
62*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_PAUSE _IO('H', 0x15)
63*8d67ca89SAndroid Build Coastguard Worker #define SNDRV_SB_CSP_IOCTL_RESTART _IO('H', 0x16)
64*8d67ca89SAndroid Build Coastguard Worker #endif
65