summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: hda - Fix NULL-derefence with a single mic in STAC auto-mic detectionTakashi Iwai2011-01-131-1/+1
| | | | | | | | | | | When only one mic is available and it's an analog mic, the current IDT/STAC parser may give an Oops. Reference: bko#25692 https://bugzilla.kernel.org/show_bug.cgi?id=25692 Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
* ALSA: hda - Add missing NID 0x19 fixup for Sony VAIOTakashi Iwai2011-01-121-0/+1
| | | | | | | | With GPIO2-fixup, another fixup for NID 0x19 was missing because the fixup is applied only once. Add the corresponding verb to the entry. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
* ALSA: hda - Fix ALC275 enable hardware EQ for SONY VAIOKailang Yang2011-01-121-2/+22
| | | | | | | | SONY VAIO ALC275 default BIOS verb set the hardware EQ to disable. Enable it when driver is loading. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix EAPD on Lenovo NB ALC269 to lowKailang Yang2011-01-121-0/+8
| | | | | | | | Lenovo NB 0x9e54 use the external AMP in an inverted manner. Set EAPD to low will enable the AMP. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix missing EAPD for Acer 4930GTakashi Iwai2011-01-121-0/+1
| | | | | | | The proper initializatio of NID 0x15 EAPD is missing in the quirk for Acer 4930G. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda: Disable 4/6 channels on some NVIDIA GPUs.Nitin Daga2011-01-121-0/+42
| | | | | | | | | | | Added hardware constraint in patch_hdmi.c to disable channels 4/6 which are not supported by some older NVIDIA GPUs. Signed-off-by: Nitin Daga <ndaga@nvidia.com> Acked-By: Stephen Warren <swarren@nvidia.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add static_hdmi_pcm option to HDMI codec parserTakashi Iwai2011-01-121-1/+6
| | | | | | | | | | | | | | | | | | | | | | | The dynamic PCM restriction based on ELD information may lead to the problem in some cases, e.g. when the receiver is turned off. Then it may send a TV HDMI default such as channels = 2. Since it's still plugged, the driver doesn't know whether it's the right configuration for future use. Now, when an app opens the device at this moment, then turn on the receiver, the app still sends channels=2. The right solution is to implement some kind of notification and automatic re-open mechanism. But, this is a goal far ahead. This patch provides a workaround for such a case by providing a new module option static_hdmi_pcm for snd-hda-codec-hdmi module. When this is set to true, the driver doesn't change PCM parameters per ELD information. For users who need the static configuration like the scenario above, set this to true. The parameter can be changed dynamically via sysfs, too. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
* ALSA: hda - Don't refer ELD when unpluggedTakashi Iwai2011-01-121-1/+1
| | | | | | | | When unplugged, we shouldn't refer to ELD information for PCM open any more. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
* ALSA: hda - Add support for multiple headphone/speaker controls for RealtekTakashi Iwai2011-01-101-69/+68
| | | | | | | | | | So far, Realtek auto-parser assumed that the multiple pins are only for line-outs, and assigned the channel names like Front, Surround, etc for the multiple outputs. But, there are devices that have multiple headphones, and these can be better controlled with the corresponding control-name like "Headphone" with indicies. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix multi-headphone handling for Realtek codecsTakashi Iwai2011-01-101-0/+3
| | | | | | | | | | | When multiple headphone pins are defined without line-out pins, the driver takes them as primary outputs. But it forgot to set line_out_type to HP by assuming there is some rest of HP pins. This results in some mis-handling of these pins for Realtek codec parser. It takes as if these are pure line-out jacks. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: <stable@kernel.org>
* ALSA: hda: Use vostro model quirk for Dell Vostro 1014Daniel T Chen2011-01-101-0/+1
| | | | | | | | | | | | | BugLink: https://bugtrack.alsa-project.org/alsa-bug/view.php?id=5184 A user reported on the alsa-devel mailing list that he needs to use the vostro model quirk to have audible playback, so apply it for his PCI SSID. Reported-and-tested-by: Fernando Lemos <fernandotcl@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: HDA: Add Lenovo vendor quirk for Conexant 205xxDavid Henningsson2011-01-101-8/+1
| | | | | | | | | | | BugLink: http://bugs.launchpad.net/bugs/689036 Many new Lenovos need the ideapad quirk. Also, since the auto parser for this chip is far from optimal, the regression risk is low (although not zero). Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: HDA: Fix volume control indices for Mics (Realtek)David Henningsson2011-01-101-12/+19
| | | | | | | | | | | | If more than one mic is present with different locations, e g "Front Mic" and "Rear Mic", they can use the same index (0), since their names are different. Previous behavior was to have "Front Mic" as index 1, causing it to be ignored by e g PulseAudio. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: HDA: Rename "Mic Boost" to "Mic Boost Volume"David Henningsson2011-01-103-148/+148
| | | | | | | | | | | | | | BugLink: http://bugs.launchpad.net/bugs/697240 If the "Volume" suffix is not given, alsa-lib gets confused and loses the dB information at the simple element level. Boosts generally affects both playback and capture, as they are applied early in the chain. Hence no "Playback" or "Capture" in the suffix. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: HDA: Add internal mic for IDT 92HD88BDavid Henningsson2011-01-101-1/+11
| | | | | | | | | | BugLink: http://bugs.launchpad.net/bugs/696493 According to datasheet (and real-world testing), IDT 92HD88B can have internal mics at NID 0x11 and 0x20, so enable them accordingly. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'fix/hda' into topic/hdaTakashi Iwai2011-01-1011-57/+91
|\
| * ALSA: hda: Use LPIB quirk for Dell Inspiron m101z/1120Daniel T Chen2010-12-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | Sjoerd Simons reports that, without using position_fix=1, recording experiences overruns. Work around that by applying the LPIB quirk for his hardware. Reported-and-tested-by: Sjoerd Simons <sjoerd@debian.org> Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * sound: Prevent buffer overflow in OSS load_mixer_volumesDan Rosenberg2010-12-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The load_mixer_volumes() function, which can be triggered by unprivileged users via the SOUND_MIXER_SETLEVELS ioctl, is vulnerable to a buffer overflow. Because the provided "name" argument isn't guaranteed to be NULL terminated at the expected 32 bytes, it's possible to overflow past the end of the last element in the mixer_vols array. Further exploitation can result in an arbitrary kernel write (via subsequent calls to load_mixer_volumes()) leading to privilege escalation, or arbitrary kernel reads via get_mixer_levels(). In addition, the strcmp() may leak bytes beyond the mixer_vols array. Signed-off-by: Dan Rosenberg <drosenberg@vsecurity.com> Cc: stable <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * Merge branch 'fix/hda' into for-linusTakashi Iwai2010-12-233-48/+71
| |\
| | * ALSA: hda - Fix GPIO2-fixup for Sony laptopsTakashi Iwai2010-12-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * ALSA: hda - Try to find an empty control index when it's occupiedTakashi Iwai2010-12-231-23/+34
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * ALSA: hda - Fix conflict of d-mic capture volume controlsTakashi Iwai2010-12-231-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * ALSA: hda - Don't apply ALC269-specific initialization to ALC275Kailang Yang2010-12-211-22/+23
| | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecsKailang Yang2010-12-211-0/+12
| | | | | | | | | | | | | | | | | | | | | 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>
| * | Merge branch 'fix/misc' into for-linusTakashi Iwai2010-12-232-6/+11
| |\ \
| | * | ALSA: pcm: remember to always call va_end() on stuff that we va_start()Jesper Juhl2010-12-211-3/+7
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | Merge branch 'fix/asoc' into for-linusTakashi Iwai2010-12-175-4/+10
| |\ \
| | * | ASoC: Fix bias power down of non-DAPM codecJarkko Nikula2010-12-131-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ASoC: WM8580: Fix R8 initial valueSeungwhan Youn2010-12-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * | ASoC: fix deemphasis control in wm8904/55/60 codecsDmitry Artamonow2010-12-093-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | ALSA: HDA: Rename "e-Mic" and "i-Mic" to "Mic" and "Internal Mic"David Henningsson2010-12-201-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change non-standard mic control names to standard control names to clean up the namespace. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: HDA: Rename "Ext Mic" and "External Mic" to "Mic"David Henningsson2010-12-202-27/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Usually external microphones are just labelled "Mic", so rename "Ext Mic" and "External Mic" to "Mic" to clear up the namespace. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: HDA: Rename "Int Mic" to "Internal Mic"David Henningsson2010-12-202-54/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Int Mic" and "Internal Mic" both mean the same thing, so rename the former to the latter in order to clean up the namespace a little. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2010-12-2039-72/+147
|\ \ \ \ | | |_|/ | |/| |
| * | | ALSA: HDA: Add auto-mute for Thinkpad SL410/SL510David Henningsson2010-12-201-3/+4
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | Merge branch 'fix/hda' into for-linusTakashi Iwai2010-12-171-2/+22
| |\ \
| | * | ALSA: hda - Fix conflict of Mic Boot controlsTakashi Iwai2010-12-171-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ALSA: HDA: Enable subwoofer on Asus G73JwDavid Henningsson2010-12-151-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ALSA: HDA: Fix auto-mute on Lenovo Edge 14David Henningsson2010-12-151-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | Merge branch 'fix/asoc' into for-linusTakashi Iwai2010-12-095-12/+16
| |\ \ \ | | | |/ | | |/|
| | * | ASoC: Correct WM8962 interrupt mask register readMark Brown2010-12-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix mismerge from the out of tree BSP where this support was developed. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | ASoC: WM8580: Debug BCLK and sample sizeJassi Brar2010-12-071-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ASoC: Fix resource leak if soc_register_ac97_dai_link failedAxel Lin2010-12-071-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ASoC: Hold client_mutex while calling snd_soc_instantiate_cards()Axel Lin2010-12-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * | ASoC: Fix swap of left and right channels for WM8993/4 speaker boost gainUk Kim2010-12-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * | ASoC: Fix off by one error in WM8994 EQ register bank sizeUk Kim2010-12-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * | | Merge branch 'fix/hda' into for-linusTakashi Iwai2010-12-095-32/+30
| |\ \ \ | | | |/ | | |/|
| | * | ALSA: HDA: Quirk for Dell Vostro 320 to make microphone workDavid Henningsson2010-12-091-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | | Merge branch 'fix/asoc' into for-linusTakashi Iwai2010-12-0210-18/+22
| |\ \ \ | | | |/ | | |/|
| | * | Merge branch 'for-2.6.37' of ↵Takashi Iwai2010-12-021-1/+1
| | |\ \ | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into fix/asoc
OpenPOWER on IntegriCloud