- 19 8月, 2011 1 次提交
-
-
由 Takashi Iwai 提交于
The recent fix for testing dB range at the mixer creation time seems to cause regressions in some devices. In such devices, reading the dB info at probing time gives an error, thus both dBmin and dBmax are still zero, and TLV flag isn't set although the later read of dB info succeeds. This patch adds a workaround for such a case by assuming that the later read will succeed. In future, a similar test should be performed in a case where a wrong dB range is seen even in the later read. Signed-off-by: NTakashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
-
- 04 8月, 2011 2 次提交
-
-
由 Daniel Mack 提交于
When creating the mixers for an USB audio device, the current code looks at the host interface stored in mixer->chip->ctrl_if. Change this and rather keep a local pointer to the interface that was given when snd_usb_create_mixer() was called. Signed-off-by: NDaniel Mack <zonque@gmail.com> Reported-by: NNicolai Krakowiak <nicolai.krakowiak@gmail.com> Reported-by: NLean-Yves LENHOF <jean-yves@lenhof.eu.org> Acked-by: NClemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Nicolai Krakowiak 提交于
Signed-off-by: NNicolai Krakowiak <nicolai.krakowiak@gmail.com> Acked-by: NDaniel Mack <zonque@gmail.com> Acked-by: NClemens Ladisch <clemens@ladisch.de> Cc: stable@kernel.org Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 25 5月, 2011 2 次提交
-
-
由 Daniel Mack 提交于
In order to allow quirks functions to hook up to the standard feature unit op tables, this patch exports a pointer to the struct that is used internally. That way, all the code handling the control can be kept private, and external code can reference the symbol to re-use it. Signed-off-by: NDaniel Mack <zonque@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
This patch renames add_control_to_empty() to snd_usb_mixer_add_control() and exports it, so the quirks functions can make use of it. Also, as "struct mixer_build" is private to mixer.c, rewrite the function to take an argument of type "struct usb_mixer_interface" instead. Signed-off-by: NDaniel Mack <zonque@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 28 4月, 2011 1 次提交
-
-
由 Takashi Iwai 提交于
Some crappy USB-audio devices give broken dB ranges, e.g. both min and max are 0dB. This confuses the volume control that prefers dB expression such as alsactl or PulseAudio. In such a case, it's much better not to expose the broken dB information. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 31 3月, 2011 1 次提交
-
-
由 Lucas De Marchi 提交于
Fixes generated by 'codespell' and manually reviewed. Signed-off-by: NLucas De Marchi <lucas.demarchi@profusion.mobi>
-
- 11 3月, 2011 2 次提交
-
-
由 Oliver Neukum 提交于
Devices are autosuspended if no pcm nor midi channel is open Mixer devices may be opened. This way they are active when in use to play or record sound, but can be suspended while users have a mixer application running. [Small clean-ups using static inline by tiwai] Signed-off-by: NOliver Neukum <oneukum@suse.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Oliver Neukum 提交于
- ESHUTDOWN must be correctly handled - the optional interrupt endpoint's URB must be stopped and restarted Signed-off-by: NOliver Neukum <oneukum@suse.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 10 3月, 2011 2 次提交
-
-
由 Alexey Fisher 提交于
One more affected devices: Logitech Webcam C600 (046d:0808) Volume range before quirk is 6400, after (also real) is 16. Signed-off-by: NAlexey Fisher <bug-track@fisher-privat.net> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Alexey Fisher 提交于
Signed-off-by: NAlexey Fisher <bug-track@fisher-privat.net> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 08 2月, 2011 1 次提交
-
-
由 Joseph Teichman 提交于
Signed-off-by: NJoseph Teichman <josteich@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 10 1月, 2011 1 次提交
-
-
由 Clemens Ladisch 提交于
Simplify info callbacks by using the snd_ctl_enum_info() helper function. Signed-off-by: NClemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 17 9月, 2010 1 次提交
-
-
由 Dan Carpenter 提交于
"uinfo->value.enumerated.item" is an unsigned int. If it's negative when we do the comparison: if ((int)uinfo->value.enumerated.item >= cval->max) then we would read past the end of the array on the next line. I also changed the strcpy() to strlcpy() out of paranoia. Signed-off-by: NDan Carpenter <error27@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 16 9月, 2010 1 次提交
-
-
由 Takashi Iwai 提交于
Used only when CONFIG_SND_DEBUG=y sound/usb/mixer.c: In function 'get_min_max': sound/usb/mixer.c:762: warning: unused variable 'chip' Reported-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 04 9月, 2010 1 次提交
-
-
由 Clemens Ladisch 提交于
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: NClemens Ladisch <clemens@ladisch.de> Cc: Daniel Mack <daniel@caiaq.de> Cc: <stable@kernel.org> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 24 6月, 2010 1 次提交
-
-
由 Takashi Iwai 提交于
Replaced the forgotten cval->mixer->ctrlif. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 23 6月, 2010 4 次提交
-
-
由 Daniel Mack 提交于
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: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Also add a list of open topics. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
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: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Alexey Fisher 提交于
Some programs like Skype trying to set capture volume automatically. Normally it will tray, carefully step by step lover or higher, set the volume. In real word it work not really well, because devises and vendors lie about real audio settings. For example most Logitech webcams have 6400 or 3500 steps for capture volume. They do not tell that actual resolution is 384. So we have only 7 or 18 real steps. In this patch I set real resolution only for tested devices. Signed-off-by: NAlexey Fisher <bug-track@fisher-privat.net> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 12 6月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
For RANGE requests, we should only query as much bytes as we're in fact interested in. For CUR requests, we shouldn't confuse the firmware with an overlong request but just ask for 2 bytes. This might need fixing in the future as it's not entirely clear when to dispatch 1-byte, 2-byte and 4-byte request blocks. For now, we assume everything is coded in 16bit - this works for all firmware implementations I've seen. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Reported-by: NAlex Lee <alexlee188@gmail.com> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 01 6月, 2010 6 次提交
-
-
由 Daniel Mack 提交于
The UAC2 clock selectors are fortunately compatible with UAC1 audio selector units, so we can simply reuse the same approach to get all the linked units. Requests to this control need a different CS value though. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Use a struct to parse the audio units, and return usable descriptors for all types. There's no need to limit the result set, except for some kind of sanity check. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
The bits to enable them are always 0 for UAC1 devices, so no additional checks are required. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Move more definitions from private enums to appropriate header files. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
So far, UAC2 controls are marked read-only if any of the channels are marked read-only in the descriptors. Change this behaviour and - mark them writeable unless all channels are read-only - store the read-only mask in usb_mixer_elem_info and - check the mask again in set_cur_mix_value(), and bail out for write-protected channels. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Introduce two new static inline functions for a more readable parsing of UAC2 bmaControls. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 28 5月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
Fix a small off-by-one bug which causes the feature unit to announce a wrong number of channels. This leads to illegal requests sent to the firmware eventually. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 12 5月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
For both UAC1 and UAC2, interrupt endpoint messages are now parsed with structs rather that with anonymous buffer array accesses. For UAC2, only CUR interrupt notifications are supported for now. snd_usb_mixer_status_complete() was renamed to snd_usb_mixer_interrupt(). Fixed one indentation flaw on the way. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 08 5月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
Commit 23caaf19 ("ALSA: usb-mixer: Add support for Audio Class v2.0") broke support for Class1 devices due to two faulty changes. This patch fixes it. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Reported-and-Tested-by: NThe Source <thesourcehim@gmail.com> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 16 4月, 2010 1 次提交
-
-
由 Jaroslav Kysela 提交于
Signed-off-by: NJaroslav Kysela <perex@perex.cz>
-
- 12 3月, 2010 5 次提交
-
-
由 Daniel Mack 提交于
USB Audio Class v2.0 compliant devices have different descriptors and a different way of setting/getting min/max/res/cur properties. This patch adds support for them. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Introduce a number of new structs for mixer, selector, feature and processing units and some static inline helpers to access fields which have dynamic offsets. Use them in mixer.c to parse the descriptors. This is necessary for the upcoming audio v2 parsers. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
For clearer namespace, also rename usbmixer_maps.c -> mixer_maps.c Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Move all non-standard mixer controls and vendor-specific extensions to a separate file. Some structs need to be exported now. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
No need for the private enum. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 05 3月, 2010 2 次提交
-
-
由 Daniel Mack 提交于
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: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
由 Daniel Mack 提交于
Rename snd-usb-lib to snd-usbmidi-lib as MIDI functions are the only thing it actually contains. Introduce a new header file to only declare these functions. Introduced usbmixer.h for all functions exported by usbmixer.c. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Cc: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 23 2月, 2010 1 次提交
-
-
由 Daniel Mack 提交于
Use the definitions from linux/usb/audio.h all over the ALSA USB audio driver and add some missing definitions there as well. Use the endpoint attribute macros from linux/usb/ch9 and remove the own things from sound/usb/usbaudio.h. Now things are also nicely prefixed which makes understanding the code easier. Signed-off-by: NDaniel Mack <daniel@caiaq.de> Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-