aboutsummaryrefslogtreecommitdiff
path: root/sound
AgeCommit message (Collapse)Author
2010-12-23Merge branch 'for-linus' of ↵Linus Torvalds
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: ALSA: hda - Fix GPIO2-fixup for Sony laptops ALSA: hda - Try to find an empty control index when it's occupied ALSA: hda - Fix conflict of d-mic capture volume controls ALSA: hda - Don't apply ALC269-specific initialization to ALC275 ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecs ALSA: pcm: remember to always call va_end() on stuff that we va_start() ALSA: HDA: Add auto-mute for Thinkpad SL410/SL510
2010-12-23Merge branch 'fix/hda' into for-linusTakashi Iwai
2010-12-23ALSA: hda - Fix GPIO2-fixup for Sony laptopsTakashi Iwai
The fix-up entries by the commit 2785591a9760c677a7ee6f541e751c23086f5bfd ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecs weren't applied in the right position. They had to be before the quirk entry matching to all Sony devices. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-23Merge branch 'fix/misc' into for-linusTakashi Iwai
2010-12-23ALSA: hda - Try to find an empty control index when it's occupiedTakashi Iwai
When a mixer control element was already created with the given name, try to find another index for avoiding conflicts, instead of breaking with an error. This makes the driver more robust. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-23ALSA: hda - Fix conflict of d-mic capture volume controlsTakashi Iwai
When the d-mics are assigned to the same purpose of another analog mic pins, the driver doesn't compute the index properly, resulting in an error with "existing control". This patch fixes it. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-21ALSA: hda - Don't apply ALC269-specific initialization to ALC275Kailang Yang
ALC275 doesn't require the ALC269 (and its variants) specific init sequences. Add the check of codec id. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-21ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecsKailang Yang
Set GPIO2 for some Sony VAIO with ALC275 to fix speaker output. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-21ALSA: pcm: remember to always call va_end() on stuff that we va_start()Jesper Juhl
The Coverity checker spotted that we do not always remember to call va_end() on 'args' in failure paths in snd_pcm_hw_rule_add(). Here's a patch to fix that up (compile tested only) - it also removes some annoying trailing whitespace that caught my eye while I was in the area.. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-20ALSA: HDA: Add auto-mute for Thinkpad SL410/SL510David Henningsson
BugLink: http://launchpad.net/bugs/580006 SKU turns off auto-mute for these machines, so ignore the SKU. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-17Merge branch 'for-linus' of ↵Linus Torvalds
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: ALSA: hda - Fix conflict of Mic Boot controls ALSA: HDA: Enable subwoofer on Asus G73Jw ALSA: HDA: Fix auto-mute on Lenovo Edge 14 ASoC: Fix bias power down of non-DAPM codec ASoC: WM8580: Fix R8 initial value ASoC: fix deemphasis control in wm8904/55/60 codecs
2010-12-17Merge branch 'fix/asoc' into for-linusTakashi Iwai
2010-12-17Merge branch 'fix/hda' into for-linusTakashi Iwai
2010-12-17ALSA: hda - Fix conflict of Mic Boot controlsTakashi Iwai
Due to the recent change for multiple mics assignment, we need to handle the index of each Mic Boost control respectively. Otherwise the driver gets the control element conflicts, and gives the unsable state. Reference: kernel bug 25002 https://bugzilla.kernel.org/show_bug.cgi?id=25002 Reported-and-tested-by: Adam Williamson <awilliam@redhat.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-15ALSA: HDA: Enable subwoofer on Asus G73JwDavid Henningsson
Set default association/sequence right on pin 0x17 in order for the automatic parser to recognize the subwoofer correctly. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-15ALSA: HDA: Fix auto-mute on Lenovo Edge 14David Henningsson
BugLink: http://launchpad.net/bugs/690530 The SKU value of this machine dictates that auto-mute should be disabled. Since the SKU value is similar to the PCI SSID, the most likely conclusion is that the SKU value should be ignored. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-14Merge branch 'for-linus' of ↵Linus Torvalds
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: ALSA: HDA: Quirk for Dell Vostro 320 to make microphone work ALSA: hda - Reset sample sizes and max bitrates when reading ELD ALSA: hda - Always allow basic audio irrespective of ELD info ALSA: hda - Do not wrongly restrict min_channels based on ELD ASoC: Correct WM8962 interrupt mask register read ASoC: WM8580: Debug BCLK and sample size ASoC: Fix resource leak if soc_register_ac97_dai_link failed ASoC: Hold client_mutex while calling snd_soc_instantiate_cards() ASoC: Fix swap of left and right channels for WM8993/4 speaker boost gain ASoC: Fix off by one error in WM8994 EQ register bank size ALSA: hda: Use position_fix=1 for Acer Aspire 5538 to enable capture on internal mic ALSA: hda - Enable jack sense for Thinkpad Edge 13 ALSA: hda - Fix ThinkPad T410[s] docking station line-out ALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and capture
2010-12-13ASoC: Fix bias power down of non-DAPM codecJarkko Nikula
Currently bias of non-DAPM codec will be powered down (standby/off) whenever there is a stream stop. This is wrong in simultaneous playback/capture since the bias is put down immediately after stopping the first stream. Fix this by using the codec->active count when figuring out the needed bias level after stream stop. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-09ASoC: WM8580: Fix R8 initial valueSeungwhan Youn
Acc to WM8580 manual, the default value for R8 is 0x10, not 0x1c. Signed-off-by: Seungwhan Youn <sw.youn@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
2010-12-09ASoC: fix deemphasis control in wm8904/55/60 codecsDmitry Artamonow
Deemphasis control's .get callback should update control's value instead of returning it - return value of callback function is used for indicating error or success of operation. Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
2010-12-09Merge branch 'fix/asoc' into for-linusTakashi Iwai
2010-12-09Merge branch 'fix/hda' into for-linusTakashi Iwai
2010-12-09ALSA: HDA: Quirk for Dell Vostro 320 to make microphone workDavid Henningsson
BugLink: http://launchpad.net/497546 Confirmed that the ideapad model works better than the current quirk for Dell Vostro 320. Cc: stable@kernel.org (2.6.35+) Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-08ALSA: hda - Reset sample sizes and max bitrates when reading ELDAnssi Hannula
When a new HDMI/DP device is plugged in, hdmi_update_short_audio_desc() is called for every SAD (Short Audio Descriptor) in the ELD data. For LPCM coding type SAD defines the supported sample sizes. For several other coding types (such as AC-3), a maximum bitrate is defined. The maximum bitrate and sample size fields are not always cleared. Therefore, if a device is unplugged and a different one is plugged in, and the coding types of some SAD positions differ between the devices, the old max_bitrate or sample_bits values will persist if the new SADs do not define those values. The leftover max_bitrate and sample_bits do not cause any issues other than wrongly showing up in eld#X.Y procfs file and kernel log. Fix that by always clearing sample_bits and max_bitrate when reading SADs. Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-07ALSA: hda - Always allow basic audio irrespective of ELD infoAnssi Hannula
Commit bbbe33900d1f3c added functionality to restrict PCM parameters based on ELD info (derived from EDID data) of the audio sink. However, according to CEA-861-D no SAD is needed for basic audio (32/44.1/48kHz stereo 16-bit audio), which is instead indicated with a basic audio flag in the CEA EDID Extension. The flag is not present in ELD. However, as all audio capable sinks are required to support basic audio, we can assume it to be always available. Fix allowed audio formats with sinks that have SADs (Short Audio Descriptors) which do not completely overlap with the basic audio formats (there are no reports of affected devices so far) by always assuming that basic audio is supported. Reported-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Cc: stable@kernel.org Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-07ALSA: hda - Do not wrongly restrict min_channels based on ELDAnssi Hannula
Commit bbbe33900d1f3c added functionality to restrict PCM parameters based on ELD info (derived from EDID data) of the audio sink. However, it wrongly assumes that the bits 0-2 of the first byte of CEA Short Audio Descriptors mean a supported number of channels. In reality, they mean the maximum number of channels (as per CEA-861-D 7.5.2). This means that the channel count can only be used to restrict max_channels, not min_channels. Restricting min_channels causes us to deny opening the device in stereo mode if the sink only has SADs that declare larger numbers of channels (like Primare SP32 AV Processor does). Fix that by not restricting min_channels based on ELD information. Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Reported-by: Jean-Yves Avenard <jyavenard@gmail.com> Tested-by: Jean-Yves Avenard <jyavenard@gmail.com> Cc: stable@kernel.org Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-07ASoC: Correct WM8962 interrupt mask register readMark Brown
Fix mismerge from the out of tree BSP where this support was developed. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-07ASoC: WM8580: Debug BCLK and sample sizeJassi Brar
In case of SNDRV_PCM_FORMAT_S32_LE, we need to set WM8580_AIF_LENGTH_32, rather than WM8580_AIF_LENGTH_24. Also, the BCLK has to be 64fs, for sample size of 20, 24 and 32 bits. Signed-off-by: Jassi Brar <jassi.brar@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-07ASoC: Fix resource leak if soc_register_ac97_dai_link failedAxel Lin
Properly free the resources in the case of soc_register_ac97_dai_link failure. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-06ASoC: Hold client_mutex while calling snd_soc_instantiate_cards()Axel Lin
As the comments of snd_soc_instantiate_cards() said, snd_soc_instantiate_cards() must be called with client_mutex. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-12-06ASoC: Fix swap of left and right channels for WM8993/4 speaker boost gainUk Kim
SPKOUTL_BOOST start from third bit, SPKOUTLR_BOOST start from 0 bit. Signed-off-by: Uk Kim <w0806.kim@samsung.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
2010-12-06ALSA: hda: Use position_fix=1 for Acer Aspire 5538 to enable capture on ↵Daniel T Chen
internal mic BugLink: https://launchpad.net/bugs/685161 The reporter of the bug states that he must use position_fix=1 to enable capture for the internal microphone, so set it for his machine's PCI SSID. Verified using 2.6.35 and the 2010-12-04 alsa-driver build. Reported-and-tested-by: Ralph Wabel <rwabel@gmx.net> Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-04ALSA: hda - Enable jack sense for Thinkpad Edge 13Manoj Iyer
Added a quirk to cxt5066_cfg_tbl to enable jack sense for ThinkPad Edge 13. Reference: http://launchpad.net/bugs/685015 Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-03Merge branch 'for-linus' of ↵Linus Torvalds
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: ASoC: omap: N810: Don't select CONFIG_OMAP_MUX but make it as dependency ALSA: hda: Use "alienware" model quirk for another SSID ASoC: WM8731: Fix incorrect mask for bypass path disable s6105-ipcam: fix compilation s6000-pcm: fix compilation s6000-i2s: fix compilation ASoC: Fix missing spin_unlock_irqrestore ALSA: Fix SNDCTL_DSP_RESET ioctl for OSS emulation ASoC: Add missing dev_set_drvdata in p1022_ds_probe ASoC: Add missing dev_set_drvdata in mpc8610_hpcd_probe ASoC: Remove unneeded !! operations while checking return value of nuc900_checkready ASoC: Fix compile error for nuc900-pcm.c ASoC: Fix prototype for nuc900_ac97_probe and nuc900_ac97_remove ASoC: Fix compile error for nuc900-ac97.c ALSA: hda: Use BIOS auto-parsing instead of existing model quirk for MEDION MD2
2010-12-03ALSA: hda - Fix ThinkPad T410[s] docking station line-outJohn Baboval
On the docking station for the Lenovo T410 and T410s, the line-out doesn't work. The trouble seems to be that it generates a plug event, but then doesn't report that the jack is connected. So automute mutes the jack when you plug something into it. The following patch (next message) fixes it. Signed-off-by: John Baboval <john.baboval at virtualcomputer.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-03ALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and captureDaniel T Chen
BugLink: https://launchpad.net/bugs/595482 The original reporter states that audible playback from the internal speaker is inaudible despite the hardware being properly detected. To work around this symptom, he uses the model=lg quirk to properly enable both playback, capture, and jack sense. Another user corroborates this workaround on separate hardware. Add this PCI SSID to the quirk table to enable it for further LG P1 Expresses. Reported-and-tested-by: Philip Peitsch <philip.peitsch@gmail.com> Tested-by: nikhov Cc: <stable@kernel.org> [2.6.32+] Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-02Merge branch 'fix/asoc' into for-linusTakashi Iwai
2010-12-02Merge branch 'for-2.6.37' of ↵Takashi Iwai
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into fix/asoc
2010-12-02Merge branch 'fix/hda' into for-linusTakashi Iwai
2010-12-02ASoC: omap: N810: Don't select CONFIG_OMAP_MUX but make it as dependencyJarkko Nikula
Not all omap boards use kernel based pin multiplexing so CONFIG_SND_OMAP_SOC_N810 should not select it by default as it can make harm to other boards in multi-board kernels. Therefore put CONFIG_OMAP_MUX as a dependency to N810 ASoC machine driver. Thanks to Tony Lindgren <tony@atomide.com> for noticing. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Cc: Tony Lindgren <tony@atomide.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-12-02ALSA: hda: Use "alienware" model quirk for another SSIDDaniel T Chen
BugLink: https://launchpad.net/bugs/683695 The original reporter states that headphone jacks do not appear to work. Upon inspecting his codec dump, and upon further testing, it is confirmed that the "alienware" model quirk is correct. Reported-and-tested-by: Cody Thierauf Cc: <stable@kernel.org> [2.6.32+] Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-12-01ASoC: WM8731: Fix incorrect mask for bypass path disableDimitris Papastamos
According to the datasheet the bypass path enable/disable is bit 3 therefore we need 0x8 and not 0x4. Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-30s6105-ipcam: fix compilationDaniel Glöckner
When the s6105-ipcam ASoC driver had been converted to the multi-component API, a single reference to a former structure element remained, blocking successful compilation. Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-30s6000-pcm: fix compilationDaniel Glöckner
s6000_soc_platform has lost its forward declaration and there no longer is a name element in it, so use a string constant when calling request_irq. Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-30s6000-i2s: fix compilationDaniel Glöckner
A semicolon was missing. Signed-off-by: Daniel Glöckner <daniel-gl@gmx.net> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-30ASoC: Fix missing spin_unlock_irqrestoreAxel Lin
In nuc900_dma_hw_params(), if snd_pcm_lib_malloc_pages failed it returns without calling spin_unlock_irqrestore(). Since snd_pcm_lib_malloc_pages() does not touch struct nuc900_audio, we don't need to hold the lock while calling snd_pcm_lib_malloc_pages(). Fix it by moving spin_lock_irqsave() down to after snd_pcm_lib_malloc_pages(). In nuc900_dma_prepare(), spin_unlock_irqrestore() is missing in the error path. Fix it by removing the return in default case. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Wan ZongShun <mcuos.com@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-30ALSA: Fix SNDCTL_DSP_RESET ioctl for OSS emulationTakashi Iwai
In OSS emulation, SNDCTL_DSP_RESET ioctl needs the reset of the internal buffer state in addition to drop of the running streams. Otherwise the succeeding access becomes inconsistent. Tested-by: Amit Nagal <helloin.amit@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2010-11-29ASoC: Add missing dev_set_drvdata in p1022_ds_probeAxel Lin
Otherwise, calling dev_get_drvdata in p1022_ds_remove returns NULL. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Timur Tabi <timur@freescale.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-29ASoC: Add missing dev_set_drvdata in mpc8610_hpcd_probeAxel Lin
Otherwise, calling dev_get_drvdata in mpc8610_hpcd_remove returns NULL. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Timur Tabi <timur@freescale.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-11-29ASoC: Remove unneeded !! operations while checking return value of ↵Axel Lin
nuc900_checkready I think this unneededd !! operations just reduce the readability. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>