09 Jan, 2012
1 commit
-
With some buggy devices, the usb-audio driver may give "frame xxx active"
kernel messages too often. Better to keep it as debug-only using
snd_printdd(), and also add the rate-limit for avoiding floods.Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=738681
Cc:
Signed-off-by: Takashi Iwai
14 Sep, 2011
2 commits
-
No code altered at this point, simply preparing for upcoming
refactorizations.Signed-off-by: Daniel Mack
Acked-by: Clemens Ladisch
Signed-off-by: Takashi Iwai -
Move code from endpoint.c into a new file called stream.c and rename
functions so that their names actually reflect what they're doing.This way, endpoint.c will be available to functions that hold all the
endpoint logic.Signed-off-by: Daniel Mack
Acked-by: Clemens Ladisch
Signed-off-by: Takashi Iwai
04 Aug, 2011
1 commit
-
The Focusrite Scarlett 18i6 USB has them that way, which is probably a
bug. Anyway, the driver should simply ignore this fact.Signed-off-by: Daniel Mack
Reported-by: Nicolai Krakowiak
Cc: stable@kernel.org
Signed-off-by: Clemens Ladisch
Signed-off-by: Takashi Iwai
13 Jul, 2011
1 commit
-
This patch gives M-Audio Fast Track Pro and M-Audio Quattro quirks and
endpoints to boot and setup those devices with special options (digital
inputs and outputs, 24 bits mode, etc...). M-Audio Audiophile quirks are
just adapted to match the new global M-Audio parameters.Special configurations can be then loaded through a modprobe conf file.
For example, to set the 24 bits mode on the Fast Track Pro add
/etc/modprobe.d/fast_track_pro.conf :options snd_usb_audio vid=0x763 pid=0x2012 device_setup=0x08
Here is a list of the possibilities in this example :
http://files.parisson.com/debian/fast-track-pro.confSigned-off-by: Guillaume Pellerin
Signed-off-by: Takashi Iwai
04 Sep, 2010
2 commits
-
The Audio Class v2 support code in 2.6.35 added checks for the
bInterfaceProtocol field. However, there are devices (usually those
detected by vendor-specific quirks) that do not have one of the
predefined values in this field, which made the driver reject them.To fix this regression, restore the old behaviour, i.e., assume that
a device with an unknown bInterfaceProtocol field (other than
UAC_VERSION_2) has more or less UAC-v1-compatible descriptors.[compile warning fixes by tiwai]
Signed-off-by: Clemens Ladisch
Cc: Daniel Mack
Cc:
Signed-off-by: Takashi Iwai
02 Sep, 2010
1 commit
-
The M-Audio Fast Track Ultra series devices did not play sound correctly
at 44.1/88.2 kHz. Changing the output endpoint attribute to adaptive
fixes this.Signed-off-by: Felix Homann
Signed-off-by: Clemens Ladisch
Signed-off-by: Takashi Iwai
23 Jun, 2010
2 commits
-
As the control interface is now carried in struct snd_usb_audio, we can
simplify the API a little and also drop the private ctrlif field from
struct usb_mixer_interface.Also remove a left-over function prototype in pcm.h.
Signed-off-by: Daniel Mack
Signed-off-by: Takashi Iwai -
Get rid of the last occurances of _v1 suffixes, and move the version
number right after the "uac" string. Now things are consitent again.Sorry for the forth and back, but it just looks much nicer this way.
Signed-off-by: Daniel Mack
Signed-off-by: Takashi Iwai
21 Jun, 2010
1 commit
-
Stanse found that in snd_usb_parse_audio_endpoints, there is a
dangling pointer dereference. When snd_usb_parse_audio_format fails,
fp is freed, and continue invoked. On the next loop, there is
"fp && fp->altsetting == 1 && fp->channels == 1" test, but fp is set
from the last iteration (but is bogus) and thus ilegally dereferenced.Set fp to NULL before "continue".
Signed-off-by: Jiri Slaby
Acked-by: Daniel Mack
Signed-off-by: Takashi Iwai
01 Jun, 2010
1 commit
-
Audio devices which comply to the UAC2 standard can export complex clock
topologies in its descriptors and set up links between them.The entities that are defined are
- clock sources, which define the end-leafs.
- clock selectors, which act as switch to select one out of many
possible clocks sources.
- clock multipliers, which have an input clock source, and act as clock
source again. They can be used to derive one clock from another.All sample rate changes, clock validity queries and the like must go to
clock source elements, while clock selectors and multipliers can be used
as terminal clock source.The following patch adds a parser for these elements and functions to
iterate over the tree and find the leaf nodes (clock sources).The samplerate set functions were moved to the new clock.c file.
Signed-off-by: Daniel Mack
Signed-off-by: Takashi Iwai
27 May, 2010
2 commits
-
UAC2 devices have their information about pitch control stored in a
different field. Parse it, and emulate the bits for a v1 device.A new struct uac2_iso_endpoint_descriptor is added.
Signed-off-by: Daniel Mack
Acked-by: Greg Kroah-Hartman
Signed-off-by: Takashi Iwai -
Signed-off-by: Daniel Mack
Signed-off-by: Takashi Iwai
29 Mar, 2010
1 commit
-
Signed-off-by: Stephen Rothwell
Signed-off-by: Takashi Iwai
25 Mar, 2010
1 commit
-
This adds basic support for M-Audio's Fast Track Ultra series of USB
audio interfaces. It is a refactored version of the patch Clemens
Ladisch posted some time ago. Neither playback nor capturing work
properly at 44100 Hz (don't know why).
The other sampling rates work properly. There's no support for the DSP
mixer, yet.Signed-off-by: Felix Homann
Signed-off-by: Takashi Iwai
12 Mar, 2010
1 commit
-
- Split the audio.h file in two to clearly denote the differences
between the standards.
- Add many more defines to audio-v2.h. Most of them are not currently
used.
- Replaced a magic value with a proper defineSigned-off-by: Daniel Mack
Acked-by: Greg Kroah-Hartman
Cc: Clemens Ladisch
Signed-off-by: Takashi Iwai
05 Mar, 2010
3 commits
-
Sample rate setting is done with a 4-byte long class request that
addresses the interface.Signed-off-by: Daniel Mack
Cc: Clemens Ladisch
Signed-off-by: Takashi Iwai -
In preparation for USB audio 2.0 support, change the audioformat
structure so that it uses a bitmask to specify possible formats.Signed-off-by: Clemens Ladisch
Signed-off-by: Takashi Iwai -
Clean up the usb audio driver by factoring out a lot of functions to
separate files. Code for procfs, quirks, urbs, format parsers etc all
got a new home now.Moved almost all special quirk handling to quirks.c and introduced new
generic functions to handle them, so the exceptions do not pollute the
whole driver.Renamed usbaudio.c to card.c because this is what it actually does now.
Renamed usbmidi.c to midi.c for namespace clarity.
Removed more things from usbaudio.h.The non-standard drivers were adopted accordingly.
Signed-off-by: Daniel Mack
Cc: Clemens Ladisch
Signed-off-by: Takashi Iwai