diff options
author | Daniel Mack <daniel@caiaq.de> | 2007-11-22 05:40:04 -0500 |
---|---|---|
committer | Jaroslav Kysela <perex@perex.cz> | 2008-01-31 11:29:28 -0500 |
commit | 8e3cd08ed8e590952aa9a656758cb24d4ba898f8 (patch) | |
tree | 162fa11dcaff39a1f5e2fff6f7f03670321a558d /sound/usb/caiaq/caiaq-device.h | |
parent | e5f73e2ae813aa216b480728548e5ffbebcc170a (diff) |
[ALSA] caiaq - add control API and more input features
- added support for all input controllers on Native Instrument's 'Kore
controller'.
- added ALSA controls to switch LEDs on 'RigKontrol 2', 'RigKontrol3',
'Audio Kontrol 1' and 'Kore controller'.
- added ALSA controls to switch input mode, software lock and ground
lift features on 'Audio 8 DJ'.
Signed-off-by: Daniel Mack <daniel@caiaq.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Diffstat (limited to 'sound/usb/caiaq/caiaq-device.h')
-rw-r--r-- | sound/usb/caiaq/caiaq-device.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sound/usb/caiaq/caiaq-device.h b/sound/usb/caiaq/caiaq-device.h index 685761279f1a..310b10ebb605 100644 --- a/sound/usb/caiaq/caiaq-device.h +++ b/sound/usb/caiaq/caiaq-device.h | |||
@@ -35,6 +35,7 @@ | |||
35 | #define EP1_CMD_MIDI_WRITE 0x7 | 35 | #define EP1_CMD_MIDI_WRITE 0x7 |
36 | #define EP1_CMD_AUDIO_PARAMS 0x9 | 36 | #define EP1_CMD_AUDIO_PARAMS 0x9 |
37 | #define EP1_CMD_AUTO_MSG 0xb | 37 | #define EP1_CMD_AUTO_MSG 0xb |
38 | #define EP1_CMD_DIMM_LEDS 0xc | ||
38 | 39 | ||
39 | struct caiaq_device_spec { | 40 | struct caiaq_device_spec { |
40 | unsigned short fw_version; | 41 | unsigned short fw_version; |
@@ -90,11 +91,14 @@ struct snd_usb_caiaqdev { | |||
90 | struct snd_pcm_substream *sub_playback[MAX_STREAMS]; | 91 | struct snd_pcm_substream *sub_playback[MAX_STREAMS]; |
91 | struct snd_pcm_substream *sub_capture[MAX_STREAMS]; | 92 | struct snd_pcm_substream *sub_capture[MAX_STREAMS]; |
92 | 93 | ||
94 | /* Controls */ | ||
95 | unsigned char control_state[64]; | ||
96 | |||
93 | /* Linux input */ | 97 | /* Linux input */ |
94 | #ifdef CONFIG_SND_USB_CAIAQ_INPUT | 98 | #ifdef CONFIG_SND_USB_CAIAQ_INPUT |
95 | struct input_dev *input_dev; | 99 | struct input_dev *input_dev; |
96 | char phys[64]; /* physical device path */ | 100 | char phys[64]; /* physical device path */ |
97 | unsigned short keycode[10]; | 101 | unsigned short keycode[64]; |
98 | #endif | 102 | #endif |
99 | 103 | ||
100 | /* ALSA */ | 104 | /* ALSA */ |
@@ -114,6 +118,9 @@ struct snd_usb_caiaq_cb_info { | |||
114 | 118 | ||
115 | int snd_usb_caiaq_set_audio_params (struct snd_usb_caiaqdev *dev, int rate, int depth, int bbp); | 119 | int snd_usb_caiaq_set_audio_params (struct snd_usb_caiaqdev *dev, int rate, int depth, int bbp); |
116 | int snd_usb_caiaq_set_auto_msg (struct snd_usb_caiaqdev *dev, int digital, int analog, int erp); | 120 | int snd_usb_caiaq_set_auto_msg (struct snd_usb_caiaqdev *dev, int digital, int analog, int erp); |
117 | 121 | int snd_usb_caiaq_send_command(struct snd_usb_caiaqdev *dev, | |
122 | unsigned char command, | ||
123 | const unsigned char *buffer, | ||
124 | int len); | ||
118 | 125 | ||
119 | #endif /* CAIAQ_DEVICE_H */ | 126 | #endif /* CAIAQ_DEVICE_H */ |