aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb
diff options
context:
space:
mode:
authorEldad Zack <eldad@fogrefinery.com>2012-11-28 17:55:38 -0500
committerTakashi Iwai <tiwai@suse.de>2012-11-29 02:44:17 -0500
commit76f74bca73ec8210c6b04559445982907ad1b0a6 (patch)
treedf0752f032124997ec5fb361c03d949df0bbfd0d /sound/usb
parentd847ce0e9a9031a3a62bbbe3ad8f37769a1a6f59 (diff)
ALSA: usb-audio: M-Audio Fast Track C400 quirks table
Adds a quirks table for the M-Audio Fast Track C400. Thanks to Clemens Ladisch <clemens@ladisch.de> for pointing out that the table must be sorted. Based on the following patch from the alsa-devel list: http://mailman.alsa-project.org/pipermail/alsa-devel/2012-May/051676.html See also: http://mailman.alsa-project.org/pipermail/alsa-devel/2012-April/051219.html Signed-off-by: Eldad Zack <eldad@fogrefinery.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/usb')
-rw-r--r--sound/usb/quirks-table.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/sound/usb/quirks-table.h b/sound/usb/quirks-table.h
index 898e16c70b0c..49f9af995d7a 100644
--- a/sound/usb/quirks-table.h
+++ b/sound/usb/quirks-table.h
@@ -2197,6 +2197,77 @@ YAMAHA_DEVICE(0x7010, "UB99"),
2197 } 2197 }
2198}, 2198},
2199{ 2199{
2200 USB_DEVICE_VENDOR_SPEC(0x0763, 0x2030),
2201 .driver_info = (unsigned long) &(const struct snd_usb_audio_quirk) {
2202 /* .vendor_name = "M-Audio", */
2203 /* .product_name = "Fast Track C400", */
2204 .ifnum = QUIRK_ANY_INTERFACE,
2205 .type = QUIRK_COMPOSITE,
2206 .data = &(const struct snd_usb_audio_quirk[]) {
2207 {
2208 .ifnum = 1,
2209 .type = QUIRK_AUDIO_STANDARD_MIXER,
2210 },
2211 /* Playback */
2212 {
2213 .ifnum = 2,
2214 .type = QUIRK_AUDIO_FIXED_ENDPOINT,
2215 .data = &(const struct audioformat) {
2216 .formats = SNDRV_PCM_FMTBIT_S24_3LE,
2217 .channels = 6,
2218 .iface = 2,
2219 .altsetting = 1,
2220 .altset_idx = 1,
2221 .attributes = UAC_EP_CS_ATTR_SAMPLE_RATE,
2222 .endpoint = 0x01,
2223 .ep_attr = 0x09,
2224 .rates = SNDRV_PCM_RATE_44100 |
2225 SNDRV_PCM_RATE_48000 |
2226 SNDRV_PCM_RATE_88200 |
2227 SNDRV_PCM_RATE_96000,
2228 .rate_min = 44100,
2229 .rate_max = 96000,
2230 .nr_rates = 4,
2231 .rate_table = (unsigned int[]) {
2232 44100, 48000, 88200, 96000
2233 },
2234 .clock = 0x81,
2235 }
2236 },
2237 /* Capture */
2238 {
2239 .ifnum = 3,
2240 .type = QUIRK_AUDIO_FIXED_ENDPOINT,
2241 .data = &(const struct audioformat) {
2242 .formats = SNDRV_PCM_FMTBIT_S24_3LE,
2243 .channels = 4,
2244 .iface = 3,
2245 .altsetting = 1,
2246 .altset_idx = 1,
2247 .attributes = UAC_EP_CS_ATTR_SAMPLE_RATE,
2248 .endpoint = 0x81,
2249 .ep_attr = 0x05,
2250 .rates = SNDRV_PCM_RATE_44100 |
2251 SNDRV_PCM_RATE_48000 |
2252 SNDRV_PCM_RATE_88200 |
2253 SNDRV_PCM_RATE_96000,
2254 .rate_min = 44100,
2255 .rate_max = 96000,
2256 .nr_rates = 4,
2257 .rate_table = (unsigned int[]) {
2258 44100, 48000, 88200, 96000
2259 },
2260 .clock = 0x81,
2261 }
2262 },
2263 /* MIDI */
2264 {
2265 .ifnum = -1 /* Interface = 4 */
2266 }
2267 }
2268 }
2269},
2270{
2200 USB_DEVICE_VENDOR_SPEC(0x0763, 0x2080), 2271 USB_DEVICE_VENDOR_SPEC(0x0763, 0x2080),
2201 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) { 2272 .driver_info = (unsigned long) & (const struct snd_usb_audio_quirk) {
2202 /* .vendor_name = "M-Audio", */ 2273 /* .vendor_name = "M-Audio", */