mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 21:38:32 +08:00
ALSA: snd-usb-caiaq: support for two more audio devices
- Added support for two new audio devices from Native Instuments, 'Audio4DJ' and 'GuitarRig mobile' - Add missing statement about 'Session IO' in Kconfig help text - Version number bumped to 1.3.11 Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
7cb36b6ccd
commit
2165592b83
@ -48,7 +48,10 @@ config SND_USB_CAIAQ
|
||||
* Native Instruments Kore Controller
|
||||
* Native Instruments Kore Controller 2
|
||||
* Native Instruments Audio Kontrol 1
|
||||
* Native Instruments Audio 4 DJ
|
||||
* Native Instruments Audio 8 DJ
|
||||
* Native Instruments Guitar Rig Session I/O
|
||||
* Native Instruments Guitar Rig mobile
|
||||
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called snd-usb-caiaq.
|
||||
|
@ -638,9 +638,10 @@ int snd_usb_caiaq_audio_init(struct snd_usb_caiaqdev *dev)
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AK1):
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_RIGKONTROL3):
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_SESSIONIO):
|
||||
dev->samplerates |= SNDRV_PCM_RATE_88200;
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_GUITARRIGMOBILE):
|
||||
dev->samplerates |= SNDRV_PCM_RATE_192000;
|
||||
break;
|
||||
/* fall thru */
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO4DJ):
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO8DJ):
|
||||
dev->samplerates |= SNDRV_PCM_RATE_88200;
|
||||
break;
|
||||
|
@ -39,14 +39,15 @@ static int control_info(struct snd_kcontrol *kcontrol,
|
||||
struct snd_usb_caiaqdev *dev = caiaqdev(chip->card);
|
||||
int pos = kcontrol->private_value;
|
||||
int is_intval = pos & CNT_INTVAL;
|
||||
unsigned int id = dev->chip.usb_id;
|
||||
|
||||
uinfo->count = 1;
|
||||
pos &= ~CNT_INTVAL;
|
||||
|
||||
if (dev->chip.usb_id ==
|
||||
USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO8DJ)
|
||||
if (((id == USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO8DJ)) ||
|
||||
(id == USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO4DJ)))
|
||||
&& (pos == 0)) {
|
||||
/* current input mode of A8DJ */
|
||||
/* current input mode of A8DJ and A4DJ */
|
||||
uinfo->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
|
||||
uinfo->value.integer.min = 0;
|
||||
uinfo->value.integer.max = 2;
|
||||
@ -247,6 +248,10 @@ static struct caiaq_controller a8dj_controller[] = {
|
||||
{ "Software lock", 40 }
|
||||
};
|
||||
|
||||
static struct caiaq_controller a4dj_controller[] = {
|
||||
{ "Current input mode", 0 | CNT_INTVAL }
|
||||
};
|
||||
|
||||
static int __devinit add_controls(struct caiaq_controller *c, int num,
|
||||
struct snd_usb_caiaqdev *dev)
|
||||
{
|
||||
@ -295,6 +300,10 @@ int __devinit snd_usb_caiaq_control_init(struct snd_usb_caiaqdev *dev)
|
||||
ret = add_controls(a8dj_controller,
|
||||
ARRAY_SIZE(a8dj_controller), dev);
|
||||
break;
|
||||
case USB_ID(USB_VID_NATIVEINSTRUMENTS, USB_PID_AUDIO4DJ):
|
||||
ret = add_controls(a4dj_controller,
|
||||
ARRAY_SIZE(a4dj_controller), dev);
|
||||
break;
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
@ -42,15 +42,17 @@
|
||||
#endif
|
||||
|
||||
MODULE_AUTHOR("Daniel Mack <daniel@caiaq.de>");
|
||||
MODULE_DESCRIPTION("caiaq USB audio, version 1.3.10");
|
||||
MODULE_DESCRIPTION("caiaq USB audio, version 1.3.11");
|
||||
MODULE_LICENSE("GPL");
|
||||
MODULE_SUPPORTED_DEVICE("{{Native Instruments, RigKontrol2},"
|
||||
"{Native Instruments, RigKontrol3},"
|
||||
"{Native Instruments, Kore Controller},"
|
||||
"{Native Instruments, Kore Controller 2},"
|
||||
"{Native Instruments, Audio Kontrol 1},"
|
||||
"{Native Instruments, Audio 4 DJ},"
|
||||
"{Native Instruments, Audio 8 DJ},"
|
||||
"{Native Instruments, Session I/O}}");
|
||||
"{Native Instruments, Session I/O},"
|
||||
"{Native Instruments, GuitarRig mobile}");
|
||||
|
||||
static int index[SNDRV_CARDS] = SNDRV_DEFAULT_IDX; /* Index 0-max */
|
||||
static char* id[SNDRV_CARDS] = SNDRV_DEFAULT_STR; /* Id for this card */
|
||||
@ -116,6 +118,16 @@ static struct usb_device_id snd_usb_id_table[] = {
|
||||
.idVendor = USB_VID_NATIVEINSTRUMENTS,
|
||||
.idProduct = USB_PID_SESSIONIO
|
||||
},
|
||||
{
|
||||
.match_flags = USB_DEVICE_ID_MATCH_DEVICE,
|
||||
.idVendor = USB_VID_NATIVEINSTRUMENTS,
|
||||
.idProduct = USB_PID_GUITARRIGMOBILE
|
||||
},
|
||||
{
|
||||
.match_flags = USB_DEVICE_ID_MATCH_DEVICE,
|
||||
.idVendor = USB_VID_NATIVEINSTRUMENTS,
|
||||
.idProduct = USB_PID_AUDIO4DJ
|
||||
},
|
||||
{ /* terminator */ }
|
||||
};
|
||||
|
||||
|
@ -10,8 +10,10 @@
|
||||
#define USB_PID_KORECONTROLLER 0x4711
|
||||
#define USB_PID_KORECONTROLLER2 0x4712
|
||||
#define USB_PID_AK1 0x0815
|
||||
#define USB_PID_AUDIO4DJ 0x0839
|
||||
#define USB_PID_AUDIO8DJ 0x1978
|
||||
#define USB_PID_SESSIONIO 0x1915
|
||||
#define USB_PID_GUITARRIGMOBILE 0x0d8d
|
||||
|
||||
#define EP1_BUFSIZE 64
|
||||
#define CAIAQ_USB_STR_LEN 0xff
|
||||
|
Loading…
Reference in New Issue
Block a user