aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'fix/hda' into topic/hdaTakashi Iwai2011-05-024-25/+21
|\
| * Revert "ALSA: hda - Fix pin-config of Gigabyte mobo"Takashi Iwai2011-05-021-18/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit c6b358748e19ce7e230b0926ac42696bc485a562. It turned out that there are different pin configurations for this PCI SSID, including multi-channel modes. And more proper fix for allowing line-out mutes will come up in 2.6.40 tree, so we won't need this fixup any more there. Reported-by: Andrew Clayton <andrew@digital-domain.net> Reported-by: Emmanuel Benisty <benisty.e@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: HDA: Fix automute for Gateway NV79David Henningsson2011-04-291-0/+6
| | | | | | | | | | | | | | | | | | | | | | The PCI SSID is 1025:031c and the codec SSID is 1025:031d, so the driver mistakes this for a SKU value, but looking at the numbers, this is obviously wrong. Cc: stable@kernel.org (2.6.38+) BugLink: http://bugs.launchpad.net/bugs/761861 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda: add beep quirk for Realtek 0x1043:831aDaniel Cordero2011-04-291-0/+1
| | | | | | | | | | | | | | | | PC Beep was not being reported as enabled on my EeePC 901: SKU: enable_pcbeep=0x0 Signed-off-by: Daniel Cordero <danielcordero@lavabit.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - VIA: Fix notify_aa_path_ctls() invalid issue.Lydia Wang2011-04-281-3/+7
| | | | | | | | | | | | | | | | | | In notify_aa_path_ctls(), adds 'rear mic' item and confirms the A-A path control existing before notifying card that the A-A path volume is muted if smart5.1 is enabled. Signed-off-by: Lydia Wang <lydiawang@viatech.com.cn> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * Merge branch 'fix/hda' into for-linusTakashi Iwai2011-04-212-1/+28
| |\
| * \ Merge branch 'for-linus' of ↵Linus Torvalds2011-04-104-27/+49
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 - Don't query connections for widgets have no connections ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E) ALSA: hda - HDMI: Fix MCP7x audio infoframe checksums ALSA: usb-audio: define another USB ID for a buggy USB MIDI cable ALSA: HDA: Fix dock mic for Lenovo X220-tablet ASoC: format_register_str: Don't clip register values ASoC: PXA: Fix oops in __pxa2xx_pcm_prepare ASoC: zylonite: set .codec_dai_name in initializer
| * \ \ Merge branch 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6Linus Torvalds2011-04-073-5/+5
| |\ \ \ | | | | | | | | | | | | | | | | | | | | * 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6: Fix common misspellings
| | * | | Fix common misspellingsLucas De Marchi2011-03-313-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes generated by 'codespell' and manually reviewed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
* | | | | ALSA: hda - Show the line-out type in snd_hda_parse_pin_def_config()Takashi Iwai2011-04-291-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Helpful for debugging. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Add Auto-Mute Mode enum for two-output casesTakashi Iwai2011-04-281-6/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Auto-Mute Mode control is useful even when only two outputs (e.g. HP and speaker) are available. Then user can enable/disable the auto-mute behavior on the fly. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - More line-out auto-mute support for RealtekTakashi Iwai2011-04-281-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not only supporting the line-out automute as additional feature to the existing headphone automute, now the headphone jack can mute the line-out alone even without the speaker outs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Add support for Line-Out automute to Realtek auto-parserTakashi Iwai2011-04-281-13/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By popular demands, I add the functionality to mute / unmute the line-out jacks per the headphone plug / unplug. For achieving this and keeping the compatibility with the old behavior, the new mixer enum "Auto-Mute Mode" is added. With this, user can control the auto-mute behavior either disabled, speaker-only or lineout+speaker. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - More reduction of redundant automute codes in Realtek parserTakashi Iwai2011-04-281-173/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removed the redundant codes by replacing with the common helper functions. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Consolidate auto-mute with master-switch for RealtekTakashi Iwai2011-04-281-224/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Yet another consolidation of auto-mute functions for the devices controlling the output muts together with the master mixer switch, typically found for ALC262 machines. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Add support of line-out automute for RealtekTakashi Iwai2011-04-281-154/+120
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the common helper function and flags to support the auto-mute per line-out jack detection, and also the mute of line-out jacks. A few model-specific implementations are replaced with the common helpers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Add common automute support for mxier-amp on/off for ReatekTakashi Iwai2011-04-281-457/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some models do mute on/off the connected mixer widget for the automatic muting, instead of controlling the pin widget itself. This patch adds the implementation of such type of auto-mute in the common helper function, and reduces the redundant codes for each model preset. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Consolidate default automute functions for RealtekTakashi Iwai2011-04-281-97/+163
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two entry points for the headphone automute functions for Realtek, alc_automute_amp() and alc_automute_pin(). These call the same function in the end, so we can basically consolidate these with a flag in spec. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Add channel-mode support to Realtek auto-parserTakashi Iwai2011-04-271-20/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the support of "Channel Mode" enum control to Realtek auto-parser. When line-in or mic-in jacks are capable to output and free DACs are available, the driver allows to switch to multi-channel mode via "Channel Mode" enum switch, as already implemented in some preset cases. Not implemented in all Realtek codecs. Currently, ALC880, 882, 861, 662 and the compatible codecs are supported. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Minor update for alc662-parser functionsTakashi Iwai2011-04-271-13/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow alc662_dac_to_mix() and alc662_look_for_dac() to parse down the selector widget that is found in ALC880-type codecs, and rename them to alc_auto_*() accordingly. This is for the next coming multi-io extensions. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - VIA: Fix Smart5.1 isn't useful for 6 audio jacks motherboard.Lydia Wang2011-04-271-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some motherboards with 5 or 6 audio jacks which had six or eight multiple channels output, smart5.1 item is no useful and should be removed. Signed-off-by: Lydia Wang <lydiawang@viatech.com.cn> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Enable sync_write workaround for AMD genericallyTakashi Iwai2011-04-262-16/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The workaround for AMD chipset via sync_write flag seems needed for machines with Realtek codecs. So, it's better to activate it generically in hda_intel.c from the beginning. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | ALSA: hda - Move EAPD power-down into shutup callback for AD codecsTakashi Iwai2011-04-261-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | EAPD power-down should be called also for normal shutup cases. Let's move to there. This also fixes the compile warnings when CONFIG_PM isn't set automatically. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2011-04-263-1/+31
|\ \ \ \ \ | | |_|_|/ | |/| | |
| * | | | ALSA: hda - Fix unused warnings when !SND_HDA_NEEDS_RESUMEMike Waychison2011-04-201-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When SND_HDA_NEEDS_RESUME is not defined, the compiler identifies that the following symbols are static but not used: restore_shutup_pins hda_cleanup_all_streams Fix warnings by adding SND_HDA_NEEDS_RESUME guards. Signed-off-by: Mike Waychison <mikew@google.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | | ALSA: hda - Add a fix-up for Acer dmic with ALC271x codecTakashi Iwai2011-04-191-1/+24
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Acer laptops with ALC271x needs a magic initialization for digital-mic to make it working with mono streams (and PulseAudio). Added a fix-up applied to Acer with ALC271x generically. Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Don't query connections for widgets have no connectionsTakashi Iwai2011-04-071-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the kernel warnings with IDT codecs like hda_codec: connection list not available for 0x1e Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Enable sync_write for AMD chipset with IDT 92HD8x codecsTakashi Iwai2011-04-211-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The AMD chipset seems unstable in the normal operation mode, and it seems requring more sensible access for each verb. Enabling sync_write mode and allowing bus-reset is a sort of workaround for these chipset stability issues. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - ALSA HD Audio patch for Intel Panther Point DeviceIDsSeth Heasley2011-04-201-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds the HD Audio Controller DeviceIDs for the Intel Panther Point PCH. Signed-off-by: Seth Heasley <seth.heasley@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - sound/pci/hda/hda_codec.c: fix warningAndrew Morton2011-04-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sound/pci/hda/hda_codec.c: In function 'snd_hda_get_connections': sound/pci/hda/hda_codec.c:332: warning: unused variable 'j' Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Remember connection listsTakashi Iwai2011-04-072-2/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The connection lists are static and we can reuse the previous results instead of querying via verb at each time. This will reduce the I/O in the runtime especially for some codec auto-parsers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2011-04-073-27/+47
|\ \ \ \ | |/ / /
| * | | ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E)David Henningsson2011-04-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In cases where there is only one internal mic connected to ADC 0x11, alc275_setup_dual_adc won't handle the case, so we need to add the ADC node to the array of candidates. Cc: stable@kernel.org BugLink: http://bugs.launchpad.net/bugs/752792 Reported-by: Vincenzo Pii Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - HDMI: Fix MCP7x audio infoframe checksumsAaron Plattner2011-04-071-26/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MCP7x hardware computes the audio infoframe channel count automatically, but requires the audio driver to set the audio infoframe checksum manually via the Nv_VERB_SET_Info_Frame_Checksum control verb. When audio starts playing, nvhdmi_8ch_7x_pcm_prepare sets the checksum to (0x71 - chan - chanmask). For example, for 2ch audio, chan == 1 and chanmask == 0 so the checksum is set to 0x70. When audio playback finishes and the device is closed, nvhdmi_8ch_7x_pcm_close resets the channel formats, causing the channel count to revert to 8ch. Since the checksum is not reset, the hardware starts generating audio infoframes with invalid checksums. This causes some displays to blank the video. Fix this by updating the checksum and channel mask when the device is closed and also when it is first initialized. In addition, make sure that the channel mask is appropriate for an 8ch infoframe by setting it to 0x13 (FL FR LFE FC RL RR RLC RRC). Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: HDA: Fix dock mic for Lenovo X220-tabletDavid Henningsson2011-04-051-0/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Without the "thinkpad" quirk, the dock mic in Lenovo X220 tablet edition won't work. BugLink: http://bugs.launchpad.net/bugs/751033 Cc: stable@kernel.org Tested-by: James Ferguson <james.ferguson@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: HDA: Add dock mic quirk for Lenovo Thinkpad X220David Henningsson2011-03-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This quirk is needed for the docking station mic of Lenovo Thinkpad X220 to function correctly. BugLink: http://bugs.launchpad.net/bugs/746259 Cc: stable@kernel.org Tested-by: James Ferguson <james.ferguson@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Fix unused variable warning in patch_realtek.cTakashi Iwai2011-04-071-2/+0
| | | | | | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Remove superfluous inits for ALC662 auto-parserTakashi Iwai2011-04-071-30/+0
| | | | | | | | | | | | | | | | | | | | | | | | Since we now set up the connections and mutes dynamically in the auto-parser, all static initializations via alc662_init_verbs & co are no longer needed. Let's drop them. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Mute ADC as default in ALC882 and other auto-parsersTakashi Iwai2011-04-071-0/+5
| | | | | | | | | | | | | | | | | | | | | Mute the ADC as default in the auto-parser dynamically instead of relying on the static init verbs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Unmute mixer dynamically in alc662 auto-parserTakashi Iwai2011-04-071-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | Instead of static init array, better to determine the connection and the mute status of the pin/mixer/DAC route dynamically. This fixes the uninitialized mixer 0x0f on ALC892. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Rewrite alc269_suspend to alc269_shutupTakashi Iwai2011-04-071-12/+3
| | | | | | | | | | | | | | | | | | | | | alc269_suspend is just calling the shut-up, so we can use the new shutup callback for the purpose. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Introduce shutup callback to Realtek spec structTakashi Iwai2011-04-071-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | Add shutup callback to be called codec-specifically for avoiding pop noises at suspend or shutdown. As a generic callback, just turn EAPD off. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Refactoring EAPD controlsTakashi Iwai2011-04-071-45/+30
| | | | | | | | | | | | | | | | | | Reduced the duplicated codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Split EAPD init to a separate array from alc662_init_verbsTakashi Iwai2011-04-071-12/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far, alc662_init_verbs[] is used for all ALC662-compatible chips, but the EAPD controls for 0x15 in there is invalid for ALC892. Also, since EAPDs should be set up in alc_auto_init_amp(), these static elements aren't needed for auto-parser, too. In this patch, the EAPD init verbs are split from alc662_init_verbs, and applied only to static quirks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Fix mix->DAC deduction for ALC892Takashi Iwai2011-04-061-13/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | The current alc662 parser doesn't set the DAC for the mixer 0x0f properly for ALC892, which has 4 DACs while ALC662 has 3. Fixed by implementing alc662_mix_to_dac() more genericly with the dynamic widget list. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Correct initial dac_nids for some ALC272-quirksTakashi Iwai2011-04-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Some ALC272-quirks use alc662_dac_nids instead of alc272_dac_nids. This patch fixes these entries. No functional change since the first two elements are identical in both arrays. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Fix alc662_dac_nid and change "6stack-dig" to "5stack-dig"Raymond Yau2011-04-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | alc662 series only have 3 DAC, so it can only support 5stack-dig instead of 6stack-dig. [updated HD-Audio-Models.txt as well by tiwai] Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2011-03-282-12/+125
|\ \ \ | |/ /
| * | ALSA: hda - Fix pin-config of Gigabyte moboTakashi Iwai2011-03-281-3/+18
| |/ | | | | | | | | | | | | Use pin-fix instead of the static quirk for Gigabyte mobos 1458:a002. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=677256 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: HDA: New AD1984A model for Dell Precision R5500David Henningsson2011-03-251-0/+89
| | | | | | | | | | | | | | | | | | | | | | For codec AD1984A, add a new model to support Dell Precision R5500 or the microphone jack won't work correctly. BugLink: http://bugs.launchpad.net/bugs/741516 Tested-by: Kent Baxley <kent.baxley@canonical.com> Cc: stable@kernel.org Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>