aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'for-linus' of ↵Linus Torvalds2010-08-0728-360/+1246
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-0518-213/+355
| |\
| | * 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: 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>
| | * 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>
| | * | 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-193-5/+15
| | |\ \ | | | |/
| | | * 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/+4
| | | | | | | | | | | | | | | | | | | | 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: 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: 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/+1
| | | | | | | | | | | | | | | | | | | | 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>
| | * | Merge branch 'devel' of git://git.alsa-project.org/alsa-kernel into topic/miscTakashi Iwai2010-07-051-7/+9
| | |\ \ | | | |/
| | | * 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: 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>
| | * | Merge branch 'fix/misc' into topic/miscTakashi Iwai2010-06-234-13/+20
| | |\ \
| | * | | ALSA: alsa: riptide: don't use own hex_to_bin() methodAndy Shevchenko2010-06-171-6/+6
| | | |/ | | |/| | | | | | | | | | | | | Signed-off-by: Andy Shevchenko <ext-andriy.shevchenko@nokia.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | Merge branch 'topic/hda' into for-linusTakashi Iwai2010-08-0512-147/+891
| |\ \ \
| | * | | ALSA: hda - Add pin-fix for HP dc5750Takashi Iwai2010-08-041-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NID 0x11 on HP dc5750 with ALC260 should be a speaker although BIOS gives it as a line-out. This patch adds a quirk to fix the pin config so that the real line-out is used properly. Reference: bnc#624118 https://bugzilla.novell.com/show_bug.cgi?id=624118 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Fix initial capsrc selection in patch_alc269()Takashi Iwai2010-08-041-11/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In patch_alc269(), we initialize the primary capsrc so that the device works from the beginning. It issues CONNECT_SEL verb no matter which widget is although some widget (e.g. 0x23) has no connection selection but a mixer, which requires unmuting instead. This patch fixes the initialization of capsrc by re-using the code as a helper function. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Add PC-beep whitelist for an Intel boardTakashi Iwai2010-08-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An Intel board needs a white-list entry to enable PC-beep. Otherwise the driver misdetects (due to bogus BIOS info) and ignores the PC-beep on 2.6.35. Reported-and-tested-by: Leandro Lucarella <luca@llucax.com.ar> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - More relax for pending period handlingTakashi Iwai2010-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the pending periods are often bogus and take long time until actually processed, it often results in a high CPU usage of the hd-audio workq. Overall it's better to have low CPU consumption by avoiding a too tight loop rather than the wake-up timing accuracy. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Define AC_FMT_* constantsTakashi Iwai2010-08-033-21/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define constants for the HD-audio stream format bits, and replace the magic numbers in codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Fix beep frequency on IDT 92HD73xx and 92HD71Bxx codecsDaniel J Blueman2010-08-031-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix HDA beep frequency on IDT 92HD73xx and 92HD71Bxx codecs. These codecs use the standard beep frequency calculation although the datasheet says it's linear frequency. Other IDT/STAC codecs might have the same problem. They should be fixed individually later. Signed-off-by: Daniel J Blueman <daniel.blueman@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Add support for HDMI HBR passthroughAnssi Hannula2010-08-034-5/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing IEC 61937 encapsulated compressed audio at bitrates over 6.144 Mbps (i.e. more than a single 2-channel 16-bit 192kHz IEC 60958 link) over HDMI requires the use of HBR Audio Stream Packets instead of Audio Sample Packets. Enable HBR mode when the stream has 8 channels and the Non-PCM bit is set. If the audio converter is not connected to any HBR-capable pins, return -EINVAL in prepare(). Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Set Stream Type in Stream Format according to AES0Anssi Hannula2010-08-033-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Set bit 15 (Stream Type) of HDA Stream Format to 1 (Non-PCM) when IEC958 channel status bit 1 (AES0 & 0x02) is set to 1 (non-audio). This is a prequisite for HDMI HBR passthrough. Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Fix Thinkpad X300 so SPDIF is not exposedJerone Young2010-08-031-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just as with the X301. The X300 does not have a way to do SPDIF either. It does not have a dock connector, nor does it have the SPDIF through the headphone jack. This patch fixes it so X300 does not show SPDIF, since it cannot do it. To add all Lenovo Thinkpads had different codec subsytem IDs: X300: http://launchpadlibrarian.net/34862838/Card0.Codecs.codec.0.txt Signed-off-by: Jerone Young <jerone.young@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - FIX to not expose SPDIF on Thinkpad X301, since it does not have ↵Jerone Young2010-08-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the ability to use SPDIF The Lenovo X301 does not have the ability to connect to a docking station to use the SPDIF port. It also does not have the ability to do SPDIF though the headphone jack or Display Port jacks. This patch fixes it so this is not exposed for the X301 and users do think it has the ability to do SPDIF. I tested both headphone & display port jacks and it is not there. I have tested this patch and it works great. Also to add the other Thinkpads have different subsystem codec IDs. Here are examples: X301: http://launchpadlibrarian.net/31561902/Card0.Codecs.codec.0.txt X200: http://launchpadlibrarian.net/49055036/Card0.Codecs.codec.0.txt W500: http://launchpadlibrarian.net/36276057/Card0.Codecs.codec.0.txt Signed-off-by: Jerone Young <jerone.young@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Do not try to create speaker NIDs for ALC268 if there aren't anyDavid Henningsson2010-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Add a warning for ignored pins with ALC259/268/269Takashi Iwai2010-07-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current ALC259/268/269 parser ignores some pins as unhandled, but user won't notice what goes wrong. So, added a warning message for the ignored pins as a hint. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Handle pin NID 0x1a on ALC259/269Takashi Iwai2010-07-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The pin NID 0x1a should be handled as well as NID 0x1b. Also added comments. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Shut up pins at power-saving mode with Conexnat codecsTakashi Iwai2010-07-301-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Call snd_hda_shutup_pins() for power-saving and reboot-notifier in patch_conexant.c as well as other codecs. This will reduce the pop noise in power-save mode. Reference: bnc#624896 https://bugzilla.novell.com/show_bug.cgi?id=624896 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Prefer VREF50 if BIOS sets for Realtek codecsTakashi Iwai2010-07-301-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If BIOS sets up the input pin as VREF 50, use the value as is instead of overriding forcibly to VREF 80. This fixes the quality of inputs on some devices like Packard-Bell M5210. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Handle missing NID 0x1b on ALC259 codecTakashi Iwai2010-07-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since ALC259/269 use the same parser of ALC268, the pin 0x1b was ignored as an invalid widget. Just add this NID to handle properly. This will add the missing mixer controls for some devices. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Share digital I/O parser in patch_realtek.cTakashi Iwai2010-07-301-62/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make a helper function to parse the digital I/Os of all Realtek codecs to simplify the code and to ensure the setups. Also, initialize digital I/O pins properly in init callbacks. Some BIOS seem to leave pins uninitialized. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Increase the connection list size for ALC662Takashi Iwai2010-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some ALC662-compatible codecs like ALC892 may have more than 4 connections for the input source. Use HDA_MAX_CONNECTIONS instead of the fixed magic number 4. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Make error messages more verboseTakashi Iwai2010-07-301-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a prefix and more information for error messages regarding the connection-list in hda_codec.c. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * | | ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763David Henningsson2010-07-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The non-standard name "iMic" makes PulseAudio ignore the microphone. BugLink: https://launchpad.net/bugs/605101 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>