summaryrefslogtreecommitdiffstats
path: root/sound
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'for-linus' of ↵Linus Torvalds2010-08-08159-1211/+10357
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (214 commits) ALSA: hda - Add pin-fix for HP dc5750 ALSA: als4000: Fix potentially invalid DMA mode setup ALSA: als4000: enable burst mode ALSA: hda - Fix initial capsrc selection in patch_alc269() ASoC: TWL4030: Capture route runtime DAPM ordering fix ALSA: hda - Add PC-beep whitelist for an Intel board ALSA: hda - More relax for pending period handling ALSA: hda - Define AC_FMT_* constants ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecs ALSA: hda - Add support for HDMI HBR passthrough ALSA: hda - Set Stream Type in Stream Format according to AES0 ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposed ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have the ability to use SPDIF ASoC: wm9081: fix resource reclaim in wm9081_register error path ASoC: wm8978: fix a memory leak if a wm8978_register fail ASoC: wm8974: fix a memory leak if another WM8974 is registered ASoC: wm8961: fix resource reclaim in wm8961_register error path ASoC: wm8955: fix resource reclaim in wm8955_register error path ASoC: wm8940: fix a memory leak if wm8940_register return error ASoC: wm8904: fix resource reclaim in wm8904_register error path ...
| * Merge branch 'topic/misc' into for-linusTakashi Iwai2010-08-0545-438/+749
| |\
| | * ALSA: als4000: Fix potentially invalid DMA mode setupOndrej Zary2010-08-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My previous patch assumed that the DMA mode (represented by 3 lowest bits of ALS4K_GCR99_DMA_EMULATION_CTRL register) is set to the default value 0. If that's not the case, it might result in invalid mode to be set. This patch fixes this potential problem. Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: als4000: enable burst modeOndrej Zary2010-08-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable burst mode to prevent dropouts during high PCI bus usage. The card is useless in X without this because of dropouts when anything moves on the screen (at least with PCI VGA card). Enabling this is also recommended by the datasheet (page 48). Signed-off-by: Ondrej Zary <linux@rainbow-software.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: usb - Correct audio problem for Hauppage HVR-850 and others rel. to ↵John S Gruber2010-08-021-8/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | urb data align Match usb ids in usb/quirks-table.h for some Hauppage HVR-950Q models and for the HVR850 model to those ids at the end of au0828-cards.c Thanks to nhJm449 for pointing out the problem. Signed-off-by: John S Gruber <JohnSGruber@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * sound: oss: msnd: check request_region() return valueKulikov Vasiliy2010-07-291-2/+6
| | | | | | | | | | | | | | | | | | | | | request_region() may fail, if so return -EBUSY. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: msnd: check request_region() return valueKulikov Vasiliy2010-07-291-1/+4
| | | | | | | | | | | | | | | | | | | | | request_region() may fail, if so return -EBUSY. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: asihpi: check return value of get_user()Kulikov Vasiliy2010-07-291-4/+13
| | | | | | | | | | | | | | | | | | | | | get_user() may fail, if so return -EFAULT. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * sound: oss: midi_synth: check get_user() return valueKulikov Vasiliy2010-07-291-1/+3
| | | | | | | | | | | | | | | | | | | | | get_user() may fail, if so return -EFAULT. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: sb: check get_user() return valueKulikov Vasiliy2010-07-291-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | get_user() may fail, if so return -EFAULT. [Fixed one missing place by tiwai] Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: hpimsgx: fix wrong sizeofAxel Lin2010-07-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The correct size should be sizeof(gRESP_HPI_SUBSYS_FIND_ADAPTERS), sizeof(&gRESP_HPI_SUBSYS_FIND_ADAPTERS) is incorrect. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * Merge branch 'devel' of git.alsa-project.org:alsa-kernel into topic/miscTakashi Iwai2010-07-271-1/+1
| | |\
| | | * ALSA: hda-intel - fix function_id rework (add missing bitmask)Jaroslav Kysela2010-07-201-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | * | sound: oss: waveartist: simplify waveartist_sleep()Kulikov Vasiliy2010-07-261-8/+2Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | waveartist_sleep() uses loop with schedule_timeout() to unconditionally wait for msec. Use schedule_timeout_uninteruptible() instead. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | sound: oss: au1550_ac97: simplify au1550_delay()Kulikov Vasiliy2010-07-261-10/+1Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | au1550_delay() uses loop with schedule_timeout() to unconditionally wait for msec. Use schedule_timeout_uninteruptible() instead. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | sound/oss: Remove dead CONFIG_SOFTOSS*Christian Dietrich2010-07-211-3/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_SOFTOSS* doesn't exist in Kconfig or somewhere else, therefore removing all references for it from the source code. Signed-off-by: Christian Dietrich <qy03fugy@stud.informatik.uni-erlangen.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: riptide: check kzalloc() resultKulikov Vasiliy2010-07-191-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If kzalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: echoaudio: check kmalloc() resultKulikov Vasiliy2010-07-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If kmalloc() fails exit with -ENOMEM. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Ack-by: Giuliano Pochini <pochini@shiny.it> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | Merge branch 'devel' of git.alsa-project.org:alsa-kernel into topic/miscTakashi Iwai2010-07-194-5/+17
| | |\|
| | | * ALSA: pcm core - add a safe check to the silence filling functionJaroslav Kysela2010-07-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In situation when appl_ptr is far greater then hw_ptr, the hw_avail value can be greater than buffer_size. Check for this. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | | * ALSA: hda-intel - do not mix audio and modem function IDsJaroslav Kysela2010-07-193-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The function IDs are different for audio and modem. Do not mix them. Also, show the unsolicited bit in the function_id register. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | * | ALSA: asihpi - Avoid useless assignment of returned index values.Eliot Blennerhassett2010-07-161-5/+4Star
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Avoid using c99 uintX types.Eliot Blennerhassett2010-07-161-5/+5
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - HPI version 4.04.01Eliot Blennerhassett2010-07-161-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi: fix sign bugKulikov Vasiliy2010-07-161-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bytes_per_sec is unsigned, so if snd_pcm_format_width() return error we would not see it. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: Kconfig: SND_AC97_POWER_SAVE description improvementMichael Witten2010-07-151-3/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The description has been expanded to explain the time-out value provided by the power_save module parameter. Signed-off-by: Michael Witten <mfwitten@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | sound/oss-msnd-pinnacle: ioctl needs the inodeArnd Bergmann2010-07-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This broke in sound/oss: convert to unlocked_ioctl, when I missed one of the ioctl functions still using the inode pointer. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | sound/oss: convert to unlocked_ioctlArnd Bergmann2010-07-126-51/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These are the final conversions for the ioctl file operation so we can remove it in the next merge window. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | sound: push BKL into open functionsArnd Bergmann2010-07-128-35/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This moves the lock_kernel() call from soundcore_open to the individual OSS device drivers, where we can deal with it one driver at a time if needed, or just kill off the drivers. All core components in ALSA already provide adequate locking in their open()-functions and do not require the big kernel lock, so there is no need to add the BKL there. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: via82xx: allow changing the initial DXS volumeClemens Ladisch2010-07-121-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per-stream volume controls, the DXS controls are not intended to adjust the overall sound level and so are initialized every time a stream is opened. However, there are special situations where one wants to reduce the overall volume in the digital domain, i.e., before the AC'97 codec's PCM volume control. To allow this, add a module parameter that sets the initial DXS volume. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Tested-by: Soeren D. Schulze <soeren.d.schulze@gmx.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-audio: silence a superfluous warningClemens Ladisch2010-07-091-4/+1Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is not advisable to print a warning when a device does not support setting the sample rate because this is perfectly valid for devices with a single rate or where rates are implicitly changed by selecting another alternate setting. Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Remove unneeded ;Eliot Blennerhassett2010-07-061-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Minor HPI error handling fixesEliot Blennerhassett2010-07-061-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle errors in tuner level caching, Ccorrect error code for aesebu rx status. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Change compander API and tidyEliot Blennerhassett2010-07-062-143/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Compander API changed to one function per parameter. Factor out some common code for stereo log value reading. Make some more entity functions static. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Add ASI5200 familyEliot Blennerhassett2010-07-061-0/+7
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - Use version string instead of printf formattingEliot Blennerhassett2010-07-061-3/+1Star
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: asihpi - HPI API updatesEliot Blennerhassett2010-07-063-27/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove some deprecated items. Change compander api to one function per parameter. Add a version string define. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | soundcore_open: Reduce the area BKL coverageJohn Kacur2010-07-051-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of this function is protected by the sound_loader_lock. We can push down the BKL to this call out err = file->f_op->open(inode,file); In order to build the sound core without the BKL, we will need to push the lock_kernel() call into the ~20 device drivers that register their file operations. Signed-off-by: John Kacur <jkacur@redhat.com> Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | Merge branch 'devel' of git://git.alsa-project.org/alsa-kernel into topic/miscTakashi Iwai2010-07-052-15/+24
| | |\|
| | | * sis7019: increase reset delaysDavid Dillow2010-06-281-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few boards using this controller are reported to need a little extra time during their reset cycle. Reported-by: Michael Goeke <michael.goeke@icachip.de> Signed-off-by: Dave Dillow <dave@thedillows.org> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | | * sis7019: fix capture issues with multiple periods per bufferDavid Dillow2010-06-281-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a timing voice to clock out periods during capture, the driver would slowly loose synchronization and never catch up, eventually reaching a point where it no longer generated interrupts. To avoid this situation, the virtual period clocking was changed to shorten the next timing period when our timing voice falls too far behind the capture voice. In addition, the first virtual period for the timing voice was slightly too short, causing the timing voice to initially be ahead of the capture voice. While tracking down this problem, I noticed that the expected sample offset was being incorrectly initialized, causing an overrun to be incorrectly reported when the timing voice happened to be perfectly synchronized. Reported-by: Hans Schou <linux@schou.dk> Signed-off-by: Dave Dillow <dave@thedillows.org> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | | * ALSA: pcm_lib: avoid timing jitter in snd_pcm_read/write()David Dillow2010-06-281-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using poll() to wait for the next period -- or avail_min samples -- one gets a consistent delay for each system call that is usually just a little short of the selected period time. However, When using snd_pcm_read/write(), one gets a jittery delay that alternates between less than a millisecond and approximately two period times. This is caused by snd_pcm_lib_{read,write}1() transferring any available samples to the user's buffer and adjusting the application pointer prior to sleeping to the end of the current period. When the next period interrupt occurs, there is then less than avail_min samples remaining to be transferred in the period, so we end up sleeping until a second period occurs. This is solved by using runtime->twake as the number of samples needed for a wakeup in addition to selecting the proper wait queue to wake in snd_pcm_update_state(). This requires twake to be non-zero when used by snd_pcm_lib_{read,write}1() even if avail_min is zero. Signed-off-by: Dave Dillow <dave@thedillows.org> Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | | * ALSA: hda-intel - fix wallclk variable update and conditionJaroslav Kysela2010-06-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes thinko introduced in "last minutes" before commiting of the last wallclk patch. It also fixes the condition checking if the first period after last wallclk update is processed. There is a little rounding error in period_wallclk. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | * | ALSA: usb - Fix compile error with CONFIG_SND_DEBUG_VERBOSE=yTakashi Iwai2010-06-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Replaced the forgotten cval->mixer->ctrlif. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-audio: simplify control interface accessDaniel Mack2010-06-238-44/+34Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-audio: move and add some commentsDaniel Mack2010-06-232-10/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Also add a list of open topics. Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-midi: whitespace fixesDaniel Mack2010-06-231-7/+7
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-audio: unify UAC macros and struct namesDaniel Mack2010-06-233-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | ALSA: usb-audio: clean up includes in clock.cDaniel Mack2010-06-231-15/+1Star
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | Merge branch 'fix/misc' into topic/miscTakashi Iwai2010-06-2321-266/+670
| | |\ \