summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: hda/realtek - Drop model=favorit100 for ALC260Takashi Iwai2012-02-163-130/+1
| | | | | | It's working with the auto-parser just with the standard GPIO 1 setup. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda/realtek - Add the support for HP Presario B1900Takashi Iwai2012-02-161-0/+8
| | | | | | | | HP Presario B1900 needs a similar hack like Replacer, toggling GPIO1 per the jack state, in addition to the COEF setup used for other Acer laptops. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda/realtek - Replace ALC260 model=replacer with the auto-parserTakashi Iwai2012-02-163-77/+44
| | | | | | | | | | | The support for Replacer 627V in the auto-parser needs the unique unsol event handling: although the machine has a single output pin 0x0f, it's used for both the headphone and the speaker, and the driver needs to toggle the output route via GPIO 1. In addition, it needs a special COEF setup with 0x3050. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda/realtek - Replace ALC260 model=acer with the auto-parserTakashi Iwai2012-02-163-147/+7
| | | | | | | | The ALC260 model=acer needs GPIO1 setup. It could be selected well if the codec SSID is set properly by BIOS, but to make sure, enable it forcibly. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda/realtek - Add the fixup codes for ALC260 model=willTakashi Iwai2012-02-163-47/+24
| | | | | | | | The model=will for ALC260 requires the pin 0x0f to be a headphone and some special verbs for the COEF to turn on the amp. Now added these as fixup entries and removed the static model quirk. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add another jack-detection suppression for ASUS ALC892Takashi Iwai2012-02-131-0/+6
| | | | | | | | Add the jack-detect suppression for an ASUS machine with ALC892 codec. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42655 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Suppress auto-mute feature on some machines with ALC861Takashi Iwai2012-02-131-8/+30
| | | | | | | | | | A few machines with ALC861 & co are reported not to work properly with the auto-mute feature in software. The auto-mute feature is implemented in the hardware level, and the jack-detection never works with them. Also, rename the fixup index as ALC861_FIXUP_* to follow the standard. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add codec->no_jack_detect flagTakashi Iwai2012-02-132-0/+3
| | | | | | | | Add a new flag to indicate that the codec has no jack-detection cap. This flag should be set for hardwares that have no jack-detect implementation although the codec chip itself supports it. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Make is_jack_detectable() as non-inlinedTakashi Iwai2012-02-132-12/+15
| | | | | | It's a bit too big and used too often as an inline function. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'fix/hda' into topic/hdaTakashi Iwai2012-02-1311-43/+74
|\ | | | | | | Necessary for working on the jack-detection suppression feature.
| * ALSA: hda - Fix mute-LED VREF value for new HP laptopsTakashi Iwai2012-02-091-2/+2
| | | | | | | | | | | | | | | | The new HP laptops turns off the mute LED with VREF50 or VREF80, but not in HIZ unlike the previous models. Since VREF50 (also 80) works with the previous models, let's use VREF50 for all. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * Merge tag 'asoc-3.3' of ↵Takashi Iwai2012-02-081-1/+10
| |\ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus A few small WM8994 updates to go on top of the previous lot of things that were sent. They collide with some -next work so I'd really like to get them into 3.3-rc3 if possible to merge back up into the -next code. All driver specific and unexciting in the grand scheme of things.
| | * ASoC: wm8994: Disable line output discharge prior to ramping VMIDMark Brown2012-02-081-0/+5
| | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * ASoC: wm8994: Fix typo in VMID ramp settingMark Brown2012-02-081-1/+1
| | | | | | | | | | | | | | | | | | | | | The VMID ramp rate is supposed to be 0x3, not 11b. Fix that. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | * ASoC: wm8994: Enabling VMID should take a runtime PM referenceMark Brown2012-02-061-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | We can enable VMID independently of the bias in some use cases so we need to ensure that the core device is powered up. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| * | ALSA: oxygen, virtuoso: fix exchanged L/R volumes of aux and CD inputsClemens Ladisch2012-02-081-11/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The driver accidentally exchanged the left/right fields for stereo AC'97 mixer registers. This affected only the aux and CD inputs because the line input bypasses the AC'97 codec and the mic input is mono; cards without AC'97 (Xonar DS/DG/HDAV Slim, HG2PCI, HiFier) were not affected. Reported-and-tested-by: Abby Cedar <abbycedar@yahoo.com.au> Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Cc: 2.6.31+ <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: usb-audio: add Edirol UM-3G supportClemens Ladisch2012-02-081-0/+8
| | | | | | | | | | | | | | | Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - add support for Uniwill ECS M31EI notebookJaroslav Kysela2012-02-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | This hardware requires same fixup for the node 0x0f like Asus A6Rp. More information: https://bugzilla.redhat.com/show_bug.cgi?id=785417 Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Fix error handling in patch_ca0132.cTakashi Iwai2012-02-071-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | In patch_ca0132.c, the error returned from chipio_write() isn't checked always. Also, the power-up/down sequence isn't tracked properly in some error paths. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge tag 'asoc-3.3' of ↵Takashi Iwai2012-02-075-13/+19
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus The only particularly remarkable change here is the one for handling of the Android suspend ignore code for idle_bias_off CODECs. That one is actually a regression fix as some of the new power savings that have been introduced confused the suspend ignore code, making devices that are active for non-audio reasons look like they are idle causing them to be suspended instead of being kept active.
| | * ASoC: wm_hubs: Correct line input to line output 2 pathsMark Brown2012-02-011-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The second line output mixer has the controls for the line input bypasses in the opposite order. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | * ASoC: cs42l73: Fix Output [X|A|V]SP_SCLK Sourcing Mode setting for master modeAxel Lin2012-02-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | For master mode, set Output [X|A|V]SP_SCLK Sourcing Mode to MCLK Mode. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * ASoC: wm8962: Fix word length configurationSusan Gao2012-02-011-3/+3
| | | | | | | | | | | | | | | | | | Signed-off-by: Susan Gao <sgao@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | * ASoC: core: Better support for idle_bias_off suspend ignoresMark Brown2012-01-311-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If an idle_bias_off device is in any state other than off then it is still active for some reason (typically a low power function such as accessory detection). This wasn't an issue when the feature was implemented as we always went to _ON for any active function, subsequent power improvements have changed things. With the modern way of doing things we should overhaul the infrastructure to allow devices to explicitly take references for these functions but that's a much more invasive change and will require driver updates to deploy, this will bring the framework into line with the existing driver set before we do that work. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
| | * ASoC: wm8994: Remove ASoC level register cache syncMark Brown2012-01-311-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | Now we've switched over to regmap the ASoC level cache sync will be ineffectual and potentially harmful as there is no longer an ASoC level cache. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * ASoC: wm_hubs: Fix routing of input PGAs to line output mixerMark Brown2012-01-311-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | IN1L/R is routed to both line output mixers, we don't route IN1 to LINEOUT1 and IN2 to LINEOUT2. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| * | ALSA: hda/realtek - Fix a wrong conditionTakashi Iwai2012-02-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sparse complains that "spec->multiout.dac_nids" is a pointer. sound/pci/hda/patch_realtek.c:2321:37: error: incompatible types for operation (>) sound/pci/hda/patch_realtek.c:2321:37: left side has type unsigned short const [usertype] *dac_nids sound/pci/hda/patch_realtek.c:2321:37: right side has type int It was meant to be num_dacs instead of dac_nids. Although the current code still works as expected (when num_dacs is zero, dac_nids should be NULL, too), better to fix now, of course. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: emu8000: Remove duplicate linux/moduleparam.h include from emu8000_patch.cJesper Juhl2012-02-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | The header 'linux/moduleparam.h' is included twice in 'sound/isa/sb/emu8000_patch.c'. Once is enough. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Add Lynx Point HD Audio Controller DeviceIDsSeth Heasley2012-02-081-0/+5
| | | | | | | | | | | | | | | | | | | | | This patch adds the HD Audio DeviceIDs for the Intel Lynx Point PCH. Signed-off-by: Seth Heasley <seth.heasley@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Remove a debug print in vmaster codeTakashi Iwai2012-02-061-1/+0
| | | | | | | | | | | | | | | | | | Wrongly slipped in from the commit 9322ca54. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Add suffix argument to snd_hda_add_vmaster()Takashi Iwai2012-02-037-152/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In most cases, the slave strings for vmaster are identical between volumes and switches except for "xxx Volume" and "xxx Switch" suffix. Now snd_hda_add_vmaster() takes the optional suffix argument so that each string can be composed with the given suffix, and we can share the slave name strings in both volume and switch calls nicely. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2012-02-0321-358/+360
|\ \ \ | |/ / | | | | | | | | | The changes for slave controls in patch_realtek.c must be merged for the further works.
| * | ALSA: hda/realtek - Add missing Bass and CLFE as vmaster slavesTakashi Iwai2012-02-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The recent changes in Realtek auto-parser added the new "Bass Speaker" and "CLFE" mixer elements which should be tracked as vmaster slaves, too. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42720 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Disable dynamic-power control for VIA as defaultTakashi Iwai2012-02-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the dynamic pin power-control and the analog low-current mode may lead to pop-noise, it's safer to set it off as default. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Allow analog low-current mode when dynamic power-control is onTakashi Iwai2012-02-021-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | VIA codecs have several different power-saving features, and one of them is the analog low-current mode. But it turned out that the ALC mode causes pop-noises at each on/off time on some machines. As a quick workaround, disable the ALC when another power-saving feature, the dynamic pin power-control, is turned off, too, since the dynamic power-control is already exposed as a mixer enum element so that user can turn it on/off freely. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Fix the logic to detect VIA analog low-current modeTakashi Iwai2012-02-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The analog low-current mode must be enabled when the no stream is running but the current detection checks it in a wrong way. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=741128 Cc: <stable@kernel.org> [v3.1+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Check power-state before changing in patch_via.cTakashi Iwai2012-02-021-149/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of always writing AC_VERB_SET_POWER_STATE, check the current power-state and don't write again if the value is already set. This may reduce the click noise upon the dynamic power-state change (e.g. in analog-input mixer). Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: HDA: Fix duplicated output to more than one codecDavid Henningsson2012-02-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This typo caused the wrong codec's nid to be checked for wcaps type. As a result, sometimes speakers would duplicate the output sent to HDMI output. Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/924320 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: hda - Fix calling cs_automic twice for Cirrus codecs.Dylan Reid2012-02-011-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If cs_automic is called twice (like it is during init) while the mic is present, it will over-write the last_input with the new one, causing it to switch back to the automic input when the mic is unplugged. This leaves the driver in a state (cur_input, last_input, and automix_idx the same) where the internal mic can not be selected until it is rebooted without the mic attached. Check that the mic hasn't already been switched to before setting last_input. Signed-off-by: Dylan Reid <dgreid@chromium.org> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge branch 'fix/asoc' into for-linusTakashi Iwai2012-01-319838-312315/+525412
| |\ \
| | * \ Merge tag 'asoc-3.3' of ↵Takashi Iwai2012-01-305-69/+22
| | |\ \ | | | |/ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into fix/asoc A bunch of small driver specific fixes - nothing terribly exciting here, all of this will only affect people using particular devices and then usually only in some use cases.
| | | * ASoC: neo1973_wm8753: remove references to the neo1973-gta01 machineDenis 'GNUtoo' Carikli2012-01-301-64/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Openmoko GTA01 machine has been removed from the machine ID database, so we need to remove references to it as well. Without that fix we have: sound/soc/samsung/neo1973_wm8753.c: In function ‘neo1973_wm8753_init’: sound/soc/samsung/neo1973_wm8753.c:325:2: error: implicit declaration of function ‘machine_is_neo1973_gta01’ Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * ASoC: wm_hubs: fix wrong bits for LINEOUT2 N/P mixerUK KIM2012-01-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: UK KIM <w0806.kim@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | | * ASoC: wm_hubs: Enable line out VMID buffer for single ended line outputsMark Brown2012-01-261-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For optimal performance the single ended line outputs require that the line output VMID buffer be enabled. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | | * ASoC: wm5100: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * ASoC: wm8962: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * ASoC: wm8996: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * ASoC: wm5100: Fix microphone configurationMark Brown2012-01-251-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to write the configuration for each microphone to a different register. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| | | * ASoC: wm5100: Make sure we switch to button reporting modeMark Brown2012-01-251-0/+2
| | |/ | | | | | | | | | | | | | | | | | | | | | When we have identified an accessory make sure we've flagged that we've done so in order to make sure we always report buttons and don't continue to polarity flip. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * ASoC: wm2000: Fix use-after-free - don't release_firmware() twice on errorJesper Juhl2012-01-241-18/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In wm2000_i2c_probe(), if we take the true branch in " ret = snd_soc_register_codec(&i2c->dev, &soc_codec_dev_wm2000, NULL, 0); if (ret != 0) goto err_fw; " then we'll release_firmware(fw) at the 'err_fw' label. But we've already done that just a few lines above. That's a use-after-free bug. This patch restructures the code so that we always call release_firmware(fw) before leaving the function, but only ever call it once. This means that we have to initialize 'fw' to NULL since some paths may now end up calling it without having called request_firmware(), but since request_firmware() deals gracefully with NULL pointers, we are fine if we just NULL initialize it. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
OpenPOWER on IntegriCloud