summaryrefslogtreecommitdiffstats
path: root/sound/usb/caiaq/caiaq-device.h
diff options
context:
space:
mode:
authorDaniel Mack <daniel@caiaq.de>2007-11-22 11:40:04 +0100
committerJaroslav Kysela <perex@perex.cz>2008-01-31 17:29:28 +0100
commit8e3cd08ed8e590952aa9a656758cb24d4ba898f8 (patch)
tree162fa11dcaff39a1f5e2fff6f7f03670321a558d /sound/usb/caiaq/caiaq-device.h
parente5f73e2ae813aa216b480728548e5ffbebcc170a (diff)
downloadblackbird-obmc-linux-8e3cd08ed8e590952aa9a656758cb24d4ba898f8.tar.gz
blackbird-obmc-linux-8e3cd08ed8e590952aa9a656758cb24d4ba898f8.zip
[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.h11
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 @@
#define EP1_CMD_MIDI_WRITE 0x7
#define EP1_CMD_AUDIO_PARAMS 0x9
#define EP1_CMD_AUTO_MSG 0xb
+#define EP1_CMD_DIMM_LEDS 0xc
struct caiaq_device_spec {
unsigned short fw_version;
@@ -90,11 +91,14 @@ struct snd_usb_caiaqdev {
struct snd_pcm_substream *sub_playback[MAX_STREAMS];
struct snd_pcm_substream *sub_capture[MAX_STREAMS];
+ /* Controls */
+ unsigned char control_state[64];
+
/* Linux input */
#ifdef CONFIG_SND_USB_CAIAQ_INPUT
struct input_dev *input_dev;
char phys[64]; /* physical device path */
- unsigned short keycode[10];
+ unsigned short keycode[64];
#endif
/* ALSA */
@@ -114,6 +118,9 @@ struct snd_usb_caiaq_cb_info {
int snd_usb_caiaq_set_audio_params (struct snd_usb_caiaqdev *dev, int rate, int depth, int bbp);
int snd_usb_caiaq_set_auto_msg (struct snd_usb_caiaqdev *dev, int digital, int analog, int erp);
-
+int snd_usb_caiaq_send_command(struct snd_usb_caiaqdev *dev,
+ unsigned char command,
+ const unsigned char *buffer,
+ int len);
#endif /* CAIAQ_DEVICE_H */
OpenPOWER on IntegriCloud