History log of /sound/pci/hda/patch_realtek.c
Revision Date Author Comments
80f1aff93c34feff6ad229ff2a1307e82cb5b132 26-Jan-2012 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix silent output on Haier W18 laptop

commit b3a81520bd37a28f77cb0f7002086fb14061824d upstream.

The very same problem is seen on Haier W18 laptop with ALC861 as seen
on ASUS A6Rp, which was fixed by the commit 3b25eb69.
Now we just need to add a new SSID entry pointing to the same fixup.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42656

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2fd55451aab99558e8b3ccefd88a1c14ed888c75 25-Jan-2012 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix silent output on ASUS A6Rp

commit 3b25eb690e8c7424eecffe1458c02b87b32aa001 upstream.

The refactoring of Realtek codec driver in 3.2 kernel caused a
regression for ASUS A6Rp laptop; it doesn't give any output.
The reason was that this machine has a secret master mute (or EAPD)
control via NID 0x0f VREF. Setting VREF50 on this node makes the
sound working again.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42588

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2a72a47b80bf4dfbdec91889d1d2c4702f134da5 02-Dec-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda/realtek - Fix Oops in alc_mux_select()

commit cce4aa378a049f4275416ee6302dd24f37b289df upstream.

When no imux is available (e.g. a single capture source),
alc_auto_init_input_src() may trigger an Oops due to the access to -1.
Add a proper zero-check to avoid it.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
d429701077f158a4b7bdf4a8490d3ed9847217e5 03-Nov-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda/realtek - Skip invalid digital out pins

commit 51e4152a969aa6d2306492ebf143932dcb535c9b upstream.

Some BIOS report invalid pins as digital output pins. The driver checks
the connection but it doesn't do it fully correctly, and it leaves some
undefined value as the audio-out widget, which makes the driver spewing
warnings. This patch fixes the issue.

Reference: https://bugzilla.novell.com/show_bug.cgi?id=727348

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
133615a7e293f3628c6f7860a41b9d7964d15a60 18-Oct-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add new revision for ALC662

commit cc667a72d471e79fd8e5e291ea115923cf44dca0 upstream.

The revision 0x100300 was found for ALC662. It seems to work well
with patch_alc662.

BugLink: http://bugs.launchpad.net/bugs/877373
Tested-by: Shengyao Xue <Shengyao.xue@canonical.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Acked-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
603a77a2233681fff6db6905a37a7525ef1e5fa5 26-Sep-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda/realtek - Avoid bogus HP-pin assignment

commit 5fe6e0151dbd969f5fbcd94d05c968b76d76952b upstream.

When the headphone pin is assigned as primary output to line_out_pins[],
the automatic HP-pin assignment by ASSID must be suppressed. Otherwise
a wrong pin might be assigned to the headphone and breaks the auto-mute.

Reference: https://bugzilla.novell.com/show_bug.cgi?id=716104

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
e9bfcbffb7b26065a2b467e29bb6c7ec83d17646 19-Sep-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda/realtek - Fix auto-mute with HP+LO configuration

commit 8974bd51a77824d91010176f9a5da28513c2e1f5 upstream.

When the system has only the headphone and the line-out jacks without
speakers, the current auto-mute code doesn't work. It's because the
spec->automute_lines flag is wrongly referred in update_speakers().
This flag must be meaningless when spec->automute_hp_lo isn't set, thus
they should be always coupled.

The patch fixes the problem and add a comment to indicate the
relationship briefly.

BugLink: http://bugs.launchpad.net/bugs/851697

Reported-by: David Henningsson <david.henningsson@canonical.com>
Tested-By: Jayne Han <jayne.han@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
cb1d0a1e91079d22cedc6d66d9c94d53ce0b0199 27-Jul-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix duplicated DAC assignments for Realtek

commit c48a8fb0d31d6147d8d76b8e2ad7f51a2fbb5c4d upstream.

Copying hp_pins and speaker_pins from line_out_pins may confuse the
parser, and it can lead to duplicated initializations for the same pin
with a wrong DAC assignment. The problem appears in 3.0 kernel code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
abaead6ac55dbda8b4bae40251d69dc3f0c49b1c 09-Jul-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix a copmile warning

It's harmless but annyoing.
sound/pci/hda/patch_realtek.c: In function ‘alc_cap_getput_caller’:
sound/pci/hda/patch_realtek.c:2722:9: warning: ‘err’ may be used uninitialized in this function

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9c7a083d94656ad6d6f2e03ba90194f2cc5bced5 07-Jul-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Change all ADCs for dual-adc switching mode for Realtek

When the dual-adc switching mode is active in Realtek auto-parser,
we need to couple all ADCs as a single capture-volume. Currently, the
volume control changes only the first ADC, thus others may remain silent.
This patch fixes the problem.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d2a19da79d3ea5b7859248b0f132c479ed4505e2 22-Jun-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Pinfix quirk for HP Z200 Workstation

BIOS lists the internal speaker as an internal line-out. Change to
internal speaker + model=auto for better auto-mute capabilities.

BugLink: http://bugs.launchpad.net/bugs/754964
Reported-by: Marc Legris <marc.legris@canonical.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c933790614529c06b221f73ff36e2456aecee30d 20-Jun-2011 Tony Vroon <tony@linx.net> ALSA: hda - Remove ALC268 model override for CPR2000

The "diverse" Quanta ID 0x0763 is overridden to ALC268_ACER.
This keeps headphone automute and microphone input from operating
on at least one laptop from Opti Systems.
Without the override, the BIOS parser does a fine job setting the
card up and everything works.

Tested-By: Peter Schneider <e.at.chi.kaen@googlemail.com>
Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6f2e810ad5d162c2bfa063c1811087277b299e4e 20-Jun-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Remove quirk for an HP device

The reporter, who is running kernel 2.6.38, reports that
he needs to set model=auto for the headphone output to work
correctly.

BugLink: http://bugs.launchpad.net/bugs/761022
Cc: stable@kernel.org (v2.6.38+)
Reported-by: Jo
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
54463a66b91cf491a7c9af612b0e310babc5fa24 13-Jun-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix wrong auto-mute type for Acer Aspire-one

The auto-mute setup for Acer Aspire-one with ALC268 was set wrongly
during the clean-up of auto-mute function. Fixed now.

Tested-by: Borislav Petkov <bp@alien8.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c0a20263dbe1fc5f394913d71063c9cd8282c5db 10-Jun-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initialization of hp pins with master_mute in Realtek

Some Reatlek model quirks use master_mute bool switch for controlling
the master-mute of outputs. For these cases, the initialization of HP
pins/amps were forgotten during the transition to the common automute
helper function in 3.0 development time, and resulted in the muted HP
output as default.

This patch fixes the issue by adjusting the HP output explicitly with
master_mute switch.

Tested-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
20f5e0b36d968326fab3b720035f226113e34ae9 10-Jun-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix invalid unsol tag for some alc262 model quirks

The tag number was forgotten to be fixed after cleaning up the model
quirks for ALC262 fujitsu and lenovo-3000 models.

Tested-by: Michal Hocko <mhocko@suse.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0a1896b27b030529ec770aefd790544a1bdb7d5a 07-Jun-2011 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Fix quirk for Dell Inspiron 910

BugLink: https://launchpad.net/bugs/792712

The original reporter states that sound from the internal speakers is
inaudible until using the model=auto quirk. This symptom is due to an
existing quirk mask for 0x102802b* that uses the model=dell quirk. To
limit the possible regressions, leave the existing quirk mask but add
a higher priority specific mask for the reporter's PCI SSID.

Reported-and-tested-by: rodni hipp
Cc: <stable@kernel.org> [2.6.38+]
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
acb373da7cc8aac7f7f4f35056db16606da01d42 20-May-2011 Raymond Yau <superquad.vortex2@gmail.com> ALSA: hda - Remove PCM mixer elements from Virtual Master of realtek

Afer commit aa202455eec51699e44f658530728162cefa1307 , none of realtek
codec has hardware volume control "PCM Playback Volume" and
"PCM Playback Switch".

As Virtual Master require all slave controls must have same number of step
and dB range.

Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
39dfe1387060dbad30255fc36c8b3b67d3b359d7 19-May-2011 Madis Janson <madis@cyber.ee> ALSA: hda - Enable Realtek ALC269 codec input layer beep

This fixes the input layer beep not working on some EeePC 1000 models by
adding the subsystem id into whitelist. Otherwise the corresponding ALSA
mixer is not enabled and stays muted, resulting in no console beep.

Signed-off-by: Madis Janson <madis@cyber.ee>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b896b4ebf0c136b51b184ea9f39247701e332005 18-May-2011 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix no sound after Windows boot with ALC269

Change power control register to default.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
296f03380e986f910b20dfb5ad7743902e7d840e 18-May-2011 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of ALC221 / ALC276 codecs

Compatible with ALC269.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b478b998447d3eb95e03beab1ad132e3e6bc74d2 18-May-2011 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of ALC898/899 codec

These are compatible with ALC882 codec.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
8ed99d976812d1e14a254b9ac1fe6255af8270ff 17-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add dock-mic detection support to Realtek auto-parser

In addition to the normal mic jack, the mic (or line-in) jack on the
docking-station is checked also as a candidate for auto-selection.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e35d9d6a153493055fc888add70786154f00edd4 17-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Check unsol-cap in is_jack_detectalbe()

Also replace more open-codes with this function.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
52d3cb88d75701f800db16561ff12c7692b56e55 17-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initialization of spec->automute_lines in patch_realtek.c

spec->automute_lines shouldn't be set unless the line-detection is
available.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
06dec2282b1366136442950958b517db691533a1 17-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use is_jack_detectable() helper

Replaced the open-code with the new helper function.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ce85c9ac8dd53a658d85b4f39f612c23aa704e49 03-May-2011 Raymond Yau <superquad.vortex2@gmail.com> ALSA: hda - fix NULL-dereference in patch_realtek

Fix NULL-dereference when try to use alt_playback since those codecs
which support multistreaming playback usually have more than 1 adc but
the driver should create alt_capture when spec->stream_analog_alt_capture
is also defined.

Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
24af2b1cc418d6791b1d9e56bf6070cccb752db3 02-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix Realtek's chained fixup checks

The check of chained fixup list entry was done against the wrong element.
A stupid mistake during refactoring.

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4c6d72d1380f2f4056635592c07bc50f5d08296c 02-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Constify fixup and other array data in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dda144103c4a47a504fcaa8cddd08a4440c87060 02-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Constify some API function arguments

Also fixed the assignment of multiout.dac_nids to satisfy const.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a9111321f2fb6a23fbed82b8b4cbd77f5580ba75 02-May-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Constify fixup and other array data in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ebb47241ea0eac6a5a23404821a2d62f64c68496 02-May-2011 Takashi Iwai <tiwai@suse.de> Revert "ALSA: hda - Fix pin-config of Gigabyte mobo"

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>
94024cd1aefa0f8bcc9dfe46c05bd7ce3f471a1c 29-Apr-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix automute for Gateway NV79

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>
a7e985e18fbfda71313a399688a6233802e7fbd0 29-Apr-2011 Daniel Cordero <danielcordero@lavabit.com> ALSA: hda: add beep quirk for Realtek 0x1043:831a

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>
ae8a60a598ce39e8e42fd4ce1348c0883a23b5d8 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add Auto-Mute Mode enum for two-output cases

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>
1daf5f46c62bc69922e1ca8ccebbbff04f48e1f1 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - More line-out auto-mute support for Realtek

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>
1a1455de10d89b9f2107fe5ad1746e7c18838492 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add support for Line-Out automute to Realtek auto-parser

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>
0f0f391c730228d1fd1c3933275ed75ee96e4db2 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - More reduction of redundant automute codes in Realtek parser

Removed the redundant codes by replacing with the common helper
functions.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e9427969f560f664d78b2512fd8ebf44863b5072 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Consolidate auto-mute with master-switch for Realtek

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>
e6a5e1b7094bdd5cc9ae969aff7f75fbc53517fc 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add support of line-out automute for Realtek

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>
3b8510ce972c93000ea65122bab3a278074eda98 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add common automute support for mxier-amp on/off for Reatek

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>
d922b51dabbe9b6aeee44e2e3a605323591e3707 28-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Consolidate default automute functions for Realtek

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>
ce764ab22e40a046065c9417ee5f04ad2a816ac1 27-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add channel-mode support to Realtek auto-parser

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>
604401a92cb3b93047c199f68a068ccbc5fb70fa 27-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Minor update for alc662-parser functions

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>
6981d184376e74391c23c116a068f8d1305f0e57 15-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a fix-up for Acer dmic with ALC271x codec

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>
ad93ffe6e4fc02993987008e4a5dcdcf4c926cd5 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix unused variable warning in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
35ffe11587fb6e93725d420aa17cf1e7a6bf427f 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove superfluous inits for ALC662 auto-parser

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>
10696aa0e56b29c6f3ce27081092785c564423e1 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Mute ADC as default in ALC882 and other auto-parsers

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>
0e53f3440925aa36fe3bd2307e5fa0238a66f8bf 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Unmute mixer dynamically in alc662 auto-parser

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>
262ac22d21ee2bf3e1655b2e5e45cc94b356e62f 07-Apr-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E)

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>
5402e4cb80dc2cb407ca07e31cb7668ba45e5320 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Rewrite alc269_suspend to alc269_shutup

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>
1c716153a87ae75c8bd63f1b6f7916300d87df7e 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Introduce shutup callback to Realtek spec struct

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>
691f1fccf72e3092e3a7a79fd672940afc9305ef 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Refactoring EAPD controls

Reduced the duplicated codes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a7f2371f9e9730ccdb70d6d5803da2a732c97cf3 07-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Split EAPD init to a separate array from alc662_init_verbs

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>
1304ac8993e32c0530bc82bf1d3f953548a20971 06-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix mix->DAC deduction for ALC892

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>
1bc7cf99a90b4cfbeed362f3f238bcc9fc2f2c28 06-Apr-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Correct initial dac_nids for some ALC272-quirks

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>
4bf4a6c5b1b2c73cd61d46d77e7da814effc6058 05-Apr-2011 Raymond Yau <superquad.vortex2@gmail.com> ALSA: hda - Fix alc662_dac_nid and change "6stack-dig" to "5stack-dig"

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>
25985edcedea6396277003854657b5f3cb31a628 31-Mar-2011 Lucas De Marchi <lucas.demarchi@profusion.mobi> Fix common misspellings

Fixes generated by 'codespell' and manually reviewed.

Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi>
c6b358748e19ce7e230b0926ac42696bc485a562 28-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix pin-config of Gigabyte mobo

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>
20b67dddcc5f29d3d0c900225d85e0ac655bc69d 23-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix SPDIF out regression on ALC889

The commit 5a8cfb4e8ae317d283f84122ed20faa069c5e0c4
ALSA: hda - Use ALC_INIT_DEFAULT for really default initialization
changed to use the default initialization method for ALC889, but
this caused a regression on SPDIF output on some machines.
This seems due to the COEF setup included in the default init procedure.
For making SPDIF working again, the COEF-setup has to be avoided for
the id 0889.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=24342
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5a8826463c19b0d1a2fc60b2adac0ec318047844 23-Mar-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Realtek: Avoid unnecessary volume control index on Surround/Side

Similar to commit 7e59e097c09b82760bb0fe08b0fa2b704d76c3f4, this patch
avoids unnecessary volume control indices for more
Realtek auto-parsers, e g the ALC66x family, on the "Surround" and "Side"
controls.
These indices cause these volume controls to be ignored by PulseAudio and
vmaster and should be removed whenever possible.

Cc: stable@kernel.org
Reported-by: Jan Losinski <losinski@wh2.tu-dresden.de>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
75eb1c311da47d32ba47825226e110df703b35d0 20-Mar-2011 Andres Mejia <mcitadel@gmail.com> ALSA: hda - Set EAPD for Realtek ALC665

Set EAPD for Realtek ALC665 (Vendor Id: 0x10eSet EAPD for Realtek
ALC665 (Vendor Id: 0x10ec0665).

Signed-off-by: Andres Mejia <mcitadel@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cc90fd725e14020607c5a6ba3ea02a0ddec5655f 14-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove an unused variable in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ae0ebbf70afe2889b39f575e800e7292abd259d6 10-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Move default input-src selection to init part

Move the default input-src selection code for alc268/269 to the init
part instead of the parser. The input-src selection might be overwritten
by init verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
584c0c4c359bdac37d94157f8d7fc513d26c8328 10-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Initialize special cases for input src in init phase

Currently some special handling for the unusual case like dual-ADCs
or a single-input-src is done in the tree-parse time in
set_capture_mixer(). But this setup could be overwritten by static
init verbs.

This patch moves the initialization into the init phase so that
such input-src setup won't be lost.

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0a3fabe30e1a3b2037a12b863b8c45fffce38ee9 04-Mar-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Realtek ALC88x: Do not over-initialize speakers and hp that are primary outputs

Do not initialize again the what has already been initialized as
multi outs, as this breaks surround speakers.

Tested-by: Bartłomiej Żogała <nusch88@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7e59e097c09b82760bb0fe08b0fa2b704d76c3f4 04-Mar-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fixup unnecessary volume control index on Realtek ALC88x

Without this change, a volume control named "Surround" or "Side" would
get an unnecessary index, causing it to be ignored by the vmaster and
PulseAudio.

Tested-by: Bartłomiej Żogała <nusch88@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ebbeb3d6aa22433c218da6f29fd7b3ebc89b87ea 04-Mar-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix volume control naming for surround speakers on Realtek auto-parser

When more than one pair of internal speakers is present, allow names
according to their channels.

Tested-by: Bartłomiej Żogała <nusch88@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
32eea3884debb65ec1da633bc5df5aee23879865 04-Mar-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Enable surround and subwoofer on Lenovo Ideapad Y530

The pin config values would change the association instead of the
sequence, this commit fixes that up.

Tested-by: Bartłomiej Żogała <nusch88@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cd372fb3befde3bceef3fdcbc550dde50c894e36 03-Mar-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Make common input-jack helper functions

Since multiple codec drivers already use the input-jack stuff, let's
make common helper functions to reduce the duplicated codes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c790ad31a28671b9b478f5d4db2f8b05dabaae4e 25-Feb-2011 Chih-Wei Huang <cwhuang@linux.org.tw> ALSA: hda - Fix unable to record issue on ASUS N82JV

The codec of N82JV is ALC269VB.

Signed-off-by: Chih-Wei Huang <cwhuang@linux.org.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f0ce27996217d06207c8bfda1b1bbec2fbab48c6 28-Feb-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Realtek: Fixup jack detection to input subsystem

This patch fixes an error in the jack detection reporting,
causing the jack detection sometimes not to be reported
correctly to the input subsystem. It should apply to several
Realtek codecs.

Cc: stable@kernel.org
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a2e2bc2874ee5c7d45a40367cb2f5dda6445c963 25-Feb-2011 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - patch_realtek.c remove one to many l's in the word.

The patch below removes an extra "l" in the word.

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
786c51f9168cfd2d49250c6e5e60035cbb2fd5a1 24-Feb-2011 Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com> ALSA: hda - 4930g add internal lfe slider

Lately I sent patch that switched lfe with side in mixer for
acer-aspire-4930g. Then I connected 5.1 speaker system and noticed that
lfe slider wasn't working and that old lfe slider worked. What I'm doing
now is:

- reverting old patch
- adding internal lfe slider
- removing side as it is superfluous (ALC888S-VC is 7.1 but in fact
laptop can only do 5.1 and it is so in drivers for MS Windows)

Signed-off-by: Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
965b76d23ea354848dea8d34059d04e150dcd464 10-Feb-2011 Anisse Astier <anisse@astier.eu> ALSA: hda - add quirk for Ordissimo EVE using a realtek ALC662

This netbook has a only one jack output and an internal mic.

By default, mic and jack sense aren't working. Using lenovo-101e
parameters makes both work.

The device seems based on a Sharetronic Q70, so this should fix audio for
this model too.

Signed-off-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a6c47a85b8e7e4a8c47394607c5e5c43224b0892 10-Feb-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add subwoofer quirk for Acer Aspire 8942G

According to the reporter, node 0x15 needs to be muted for subwoofer
to stop sounding. This pin is marked as unused by BIOS, so fix that.

BugLink: http://bugs.launchpad.net/bugs/715877

Cc: stable@kernel.org (2.6.37+)
Reported-by: Hans Peter
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
460c92fa38ff140f83c269e948e2aaab071d0af0 07-Feb-2011 Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com> ALSA: hda - switch lfe with side in mixer for 4930g

Built-in sub-woofer can now be controlled by lfe slider instead of
side slider on Acer Aspire 5930g

Signed-off-by: Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ded9f5238bb719737f82b0b5b957937cb0203804 26-Jan-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix automute on Thinkpad L412/L512

BugLink: http://bugs.launchpad.net/bugs/707902

More Thinkpad machines with invalid SKU found, that disables
automute between speakers and headphones on these machines.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d2ebd4798744c401faf3fdc6493383912ccd0b80 20-Jan-2011 Anisse Astier <anisse@astier.eu> ALSA: hda - Fix EAPD to low on CZC P10T tablet computer with ALC662

Signed-off-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fb228af7060d02a81a7bcc2ce329ba3ab1af0c7f 19-Jan-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add SKU ignore for another Thinkpad Edge 14

BugLink: http://bugs.launchpad.net/bugs/705323

Thinkpad Edge 14 has one more SSID that suffers from disabled auto-mute.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
aa1d0c5261f17d48636bf6d10bde0f38045511c0 19-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix "unused variable" compile warning

sound/pci/hda/patch_realtek.c: In function ‘alc_apply_fixup’:
sound/pci/hda/patch_realtek.c:1724:14: warning: unused variable ‘modelname’

snd_printdd() is evaluated only when CONFIG_SND_DEBUG_VERBOSE=y.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5734a07cbb8d4600a74a374c839620ddc62b2cf2 19-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for HP Z-series workstation

It seems working well with model=hp-bpc.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
569ed348ecef309fae5a71b86015951680ea3415 19-Jan-2011 Takashi Iwai <tiwai@suse.de> Revert "ALSA: HDA: Create mixers on ALC887"

This reverts commit 03b7a1ab557efe34e8f79b78660e514bd7374248.

This commit was mistakenly re-introduced. While the change is harmless
(as ALC887 uses patch_alc888() now), we should get rid of any wrong code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ea73496324c1d990504e27f551e159388f891a4c 17-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - consitify string arrays

Signed-off-by: Takashi Iwai <tiwai@suse.de>
361fe6e90888af83d5bfdfc152d737018cbede43 14-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Rearrange fixup struct in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5870112021fb38e73b25dad3baec4ca0819c594a 13-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add fixup-call in init callback

In some cases, the fix-up is required in the init callback to be called
both at the first initialization and at the resume. The new action type
ALC_FIXUP_ACT_INIT is used for this case.

So far, only ALC275_FIXUP_SONY_HWEQ uses this.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b5bfbc670283d1ff21df4cd3f9f036cc47e34ce4 13-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Reorganize fixup structure for Realtek

Instead of keeping various data types in a single record, put the
type field and keep a single value in each entry, but allows chaining
multiple fixup entries. This allows more flexible data management
(see ALC275_FIXUP_SONY_HWEQ for example).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9fb1ef25f4d31f07cdaf7c6075b40bbcb00c1f92 13-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Apply Sony VAIO hweq fixup only once

This should be applied also only once as a part of the initialization.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6fc398cb306b0441436c93d6ddead3109b99f884 13-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Apply mario fixup only once

The amp-override is necessary only once at initialization time.
Also fixed a coding style issue.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
74dc8909c1ce38098e6689239ed6ae6b6bf9f92b 13-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove unused fixup entry for ALC262

... and a minor cleanup.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
700b65cee958d81b16c48378d5759c46d01e24d0 12-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing NID 0x19 fixup for Sony VAIO

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>
1a99d4a46c4d08da3418a2079b78ec5daa2a6408 12-Jan-2011 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix ALC275 enable hardware EQ for SONY VAIO

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>
357f915ece53aa4c8759087888346145848ea753 12-Jan-2011 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix EAPD on Lenovo NB ALC269 to low

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>
e2e93296c50fe13dd2ca60a0e44b5502e9b8c58e 12-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix missing EAPD for Acer 4930G

The proper initializatio of NID 0x15 EAPD is missing in the quirk for
Acer 4930G.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
bcb2f0f517ebae7350526bbde8912ad187147e2d 10-Jan-2011 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add support for multiple headphone/speaker controls for Realtek

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>
5322bf2790fb91328aac1783bb1963ea3a172bcf 05-Jan-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix volume control indices for Mics (Realtek)

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>
5f99f86a801f937ed51deedc36ad4efc47d95cdd 04-Jan-2011 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Rename "Mic Boost" to "Mic Boost Volume"

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>
7039c74cb54652ba6d726ad4d2a42dbac95a97be 23-Dec-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix GPIO2-fixup for Sony laptops

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>
c793bec550c68a1da1034090b43a886e8fee5eb0 21-Dec-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Don't apply ALC269-specific initialization to ALC275

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>
2785591a9760c677a7ee6f541e751c23086f5bfd 21-Dec-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add fix-up for Sony VAIO with ALC275 codecs

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>
10528020d7323778b60c2de04754a2615a88d002 20-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Rename "e-Mic" and "i-Mic" to "Mic" and "Internal Mic"

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>
8607f7c4245bc1737989d908e9c5adbfe4f5d06d 20-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Rename "Ext Mic" and "External Mic" to "Mic"

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>
28c4edb71d21623f1e47422194d865d2b6712fd4 20-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Rename "Int Mic" to "Internal Mic"

"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>
022c92befa539174125b0a1b5e52dd57affefe9f 17-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add auto-mute for Thinkpad SL410/SL510

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>
53e8c3239bcc7b89c76179fd33fb6faa3413c00d 17-Dec-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix conflict of Mic Boot controls

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>
30fac30103185d853cb5cdb4bbed70d629d6da7e 16-Dec-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up dead code in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
eeb433876cf59438a1e1600a957ff6cc99c860eb 16-Dec-2010 Anisse Astier <anisse@astier.eu> ALSA: hda - factorize an automute_mic realtek quirk function

Multiple quirk functions were using the exact same code to verify if the Mic
jack was plugged and mute the Mic accordingly

Signed-off-by: Anisse Astier <anisse@astier.eu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ac612407932be18697b5ae9da0a80f138b8bea8e 15-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Enable subwoofer on Asus G73Jw

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>
fe67b24010c66a14d84117ac67d23ed1bcb18a71 15-Dec-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Fix auto-mute on Lenovo Edge 14

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>
6be7948ff4fa7662c1ee1994e1798074f8e832ed 08-Dec-2010 Todd Broch <tbroch@chromium.org> ALSA: hda: Add fixup for mario system

create fixup function for the mario model and override amp capabilities
for NID 0x2

Signed-off-by: Todd Broch <tbroch@chromium.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e1eb5f10069b7c393174b3a272ad647537969862 06-Dec-2010 Todd Broch <tbroch@chromium.org> ALSA: hda: Add modelname lookup and fixup for realtek codecs

Facilitate fixup for realtek codecs via modelname lookup of fixup
data. Fallback to quirk based lookup in absence of model definition.

Signed-off-by: Todd Broch <tbroch@chromium.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
77c4d5cdb81d25a45fbdfb84dd3348121219a072 03-Dec-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use model=lg quirk for LG P1 Express to enable playback and capture

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>
dc427170750f7be9ddedf16ca049b5cb827bd880 29-Nov-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove dead md2 quirk code

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ac70eb1305d5a81efd1e32327d7e79be15a63a5a 27-Nov-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use BIOS auto-parsing instead of existing model quirk for MEDION MD2

BugLink: https://launchpad.net/bugs/682199

A 2.6.35 (Ubuntu Maverick) user, burningphantom1, reported a regression
in audio: playback was inaudible through both speakers and headphones.
In commit 272a527c04 of sound-2.6.git, a new model was added with this
machine's PCI SSID. Fortunately, it is now sufficient to use the auto
model for BIOS auto-parsing instead of the existing quirk.

Playback, capture, and jack sense were verified working for both
2.6.35 and the alsa-driver snapshot from 2010-11-27 when model=auto is
used.

Reported-and-tested-by: burningphantom1
Cc: <stable@kernel.org> [2.6.35+]
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5a8cfb4e8ae317d283f84122ed20faa069c5e0c4 26-Nov-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use ALC_INIT_DEFAULT for really default initialization

When SKU assid gives no valid bits for 0x38, the driver didn't take
any action, so far. This resulted in the missing initialization for
external amps, etc, thus the silent output in the end.

Especially users hit this problem on ALC888 newly since 2.6.35,
where the driver doesn't force to use ALC_INIT_DEFAULT any more.

This patch sets the default initialization scheme to use
ALC_INIT_DEFAULT when no valid bits are set for SKU assid.

Reference:
https://bugzilla.redhat.com/show_bug.cgi?id=657388

Reported-and-tested-by: Kyle McMartin <kyle@redhat.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7167594a3da7dcc33203b85d62e519594baee390 25-Nov-2010 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Fix ALC660-VD/ALC861-VD capture/playback mixers

The mixer nids passed to alc_auto_create_input_ctls are wrong: 0x15 is
a pin, and 0x09 is the ADC on both ALC660-VD/ALC861-VD. Thus with
current code, input playback volume/switches and input source mixer
controls are not created, and recording doesn't work. Select correct
mixers, 0x0b (input playback mixer) and 0x22 (capture source mixer).

Reference: https://qa.mandriva.com/show_bug.cgi?id=61159

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cc1c452e509aefc28f7ad2deed75bc69d4f915f7 24-Nov-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add an extra DAC for Realtek ALC887-VD

The patch enables ALC887-VD to use the DAC at nid 0x26,
which makes it possible to use this DAC for e g Headphone
volume.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d94772070acc5a8f312ab4650cbbf5e78ea9dda2 24-Nov-2010 Denis Kuplyakov <dener.kup@gmail.com> ALSA: hda - Fix Acer 7730G support

Fixes automatic EAPD configuration on Acer 7730G laptop.

Signed-off-by: Denis Kuplyakov <dener.kup@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
48c88e820fb3e35c5925e4743fd13f200891b7b5 23-Nov-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Identify more variants for ALC269

Give more correct chip names for ALC269-variant codecs.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
1657cbd87125a623d28ce8a7ef5ff6959098d425 23-Nov-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix wrong ALC269 variant check

The refactoring commit d433a67831ab2c470cc53a3ff9b60f656767be15
ALSA: hda - Optimize the check of ALC269 codec variants
introduced a wrong check for ALC269-vb type. This patch corrects it.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9d57883f08d3c0c111b50bf185dfee9731a12c76 22-Nov-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a generic fixup callback for Realtek codecs

Add a generic callback function for fixup elements. This can be used
to do some unusual things like overriding the AMP cache, etc.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
01e0f1378c47947b825eac05c98697ab1be1c86f 22-Nov-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fixed ALC887-VD initial error

ALC887-VD is like ALC888-VD. It can not be initialized as ALC882.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a0e90acc657990511c83bc69965bfd3c63386d45 20-Nov-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Add Samsung R720 SSID for subwoofer pin fixup

BugLink: https://launchpad.net/bugs/677830

The original reporter states that the subwoofer does not mute when
inserting headphones. We need an entry for his machine's SSID in the
subwoofer pin fixup list, so add it there (verified using hda_analyzer).

Reported-and-tested-by: i-NoD
Cc: <stable@kernel.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
86cbbad2b6712fbd25c07a17e86b4345cee82c6d 20-Nov-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Add Samsung R720 SSID for subwoofer pin fixup

BugLink: https://launchpad.net/bugs/677830

The original reporter states that the subwoofer does not mute when
inserting headphones. We need an entry for his machine's SSID in the
subwoofer pin fixup list, so add it there (verified using hda_analyzer).

Reported-and-tested-by: i-NoD
Cc: <stable@kernel.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
03b7a1ab557efe34e8f79b78660e514bd7374248 09-Nov-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Create mixers on ALC887

BugLink: http://launchpad.net/bugs/669092

ALC887 does not have any volume control ability on the mixer NIDs,
so put the volume controls on the dac NIDs instead. Without this
patch, ALC887 users cannot use alsamixer at all.

Cc: stable@kernel.org
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
693194f3b8af349a510604dffad9bdbbcf1c7db8 21-Oct-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix codec rename rules for ALC662-compatible codecs

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bf1b022588eba78c990fd58fd2471cd92c2c5683 21-Oct-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add alc_init_jacks() call to other codecs

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c3d226ab8b44fe31e5e6d5739eb353597cea4029 14-Oct-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Apply SKU override for Acer aspire 7736z

BugLink: http://launchpad.net/bugs/617647

The current SKU value disables playback, so ignore the SKU value.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
906229174c20e3d5cbda8da070af8f30196316c3 14-Oct-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Enable SKU quirks for Realtek

Realtek have ways of specifying external amps and more via a
special nid or via the Codec's subsystem ID, this is called "SKU".
The computer manufacturer sometimes gets this wrong, so we need
to be able to override or ignore the SKU customization value.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2df03514de41f3bbb5623f2e7f2bf594e49cb2ec 11-Oct-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Add speaker pin to automute Acer Aspire 8943G

BugLink: https://bugs.launchpad.net/bugs/656625

Add clause for handling Acer Aspire 8943G's subwoofer as additional
speaker pin for automuting.

Reported-by: RussianNeuroMancer
Cc: stable@kernel.org
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d41185882b828896ccecac319c9f65f708baaf0d 01-Oct-2010 Valentine Sinitsyn <valentine.sinitsyn@gmail.com> ALSA: hda - Added fixup for Lenovo Y550P

Signed-off-by: Valentine Sinitsyn <valentine.sinitsyn@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
01fdf1801e349302fce5d9865470a7100a2d9b74 24-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix auto-parse of SPDIF input of Realtek codecs

The SPDIF in audio widget must be searched through the list as the widget
that contains the given pin as the connection source. The current code
was implemented in a reverse way.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
abdd8f510686da0a58e475bc0143d1069e5f53da 21-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Apply ALC269 VAIO fix-up to all Sony laptops with ALC269

We've applied a fix-up for ALC269 VAIO only for two models. But all
Sony VAIO models with ALC269 codec seem to require the similar fix.
Let's apply it with vendor-id mask.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
265a02478db5217eda8063004ded1ef0a461c240 21-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Check invalid NIDs in alc_init_jacks()

The headphone and external-mic pin NIDs can be null, and the jack input
elements should be skipped in such a case.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9e5341b92d1d2dde11691b394721b45b36416bef 21-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Introduce hda_call_check_power_status() helper

Replace the explicit ifdef check and call of check_power_status ops with
a new helper function, hda_call_check_power_status().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0ec33d1f952934ea3251cefc6d108b47818eedd0 20-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Refactor ALC269 power-ups/downs in PM callbacks

Create a helper function to simplify the code.
Also, cleaned up the ifdef SND_HDA_NEEDS_RESUME and
CONFIG_SND_HDA_POWER_SAVE. The former is always defined when the latter
is set.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f3550d1b052a8acf4159b407dbdd1def47f223f9 20-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix capture widget for ALC269vb and co

ALC269vb and other variants don't use the widgets 0x24 but prefer the
widget 0x22 instead. We need to fix the input parser.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d433a67831ab2c470cc53a3ff9b60f656767be15 20-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Optimize the check of ALC269 codec variants

Don't call the COEF check for checking ACL269 codec variants at each
time in init but remember the type at the initialization.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e1ca7b4ea29707920650d86b22afdb7e94ad5986 20-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initialization of multiple output pins for ALC268/269

When multiple pins are assigned to headphones or speakers, they haven't
been initialized properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f6837bbd599c2a4e1f621441f84286434bcc91ae 20-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix up autocfg output pin numbers in realtek parser

When quirks are applied, the numbers of output pins in autocfg aren't
set up properly but only pin arrays are changed. Let's fix it up so that
the rest of the parser can use autocfg.line_outs & co safely.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
99ae28bea984df4c38234eb6d2f29a552def6c1b 17-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Make snd_hda_get_input_pin_attr() helper

Make the helper function to give the input-pin attribute for jack
connectivity and location. This simplifies checks of input-pin jacks
a bit in some places.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
30ea098fc000bb05081a1999269658f1a88af36a 16-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix input-pin setup for Realtek codecs

Through the transition of autocfg to individual inputs array, I forgot
to rewrite the argument passed to alc_set_input_pin(). This resulted in
wrongly setup input pins. Fixed now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5855fb8076e784a657bc2441cd29f166c7c1ea8c 16-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initialization of secondary headphone and speaker

The secondary or later headphones or speakers aren't initialized preoprly
for some codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
145a902bfeb1f89a41165bd2d1e633ce070bcb73 16-Sep-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Enable internal speaker on Dell M101z

BugLink: http://launchpad.net/bugs/640254

In some cases a magic processing coefficient is needed to enable
the internal speaker on Dell M101z. According to Realtek, this
processing coefficient is only present on ALC269vb.

Cc: stable@kernel.org
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
977ddd6b2e63716cfefe669bbdb30ec0bcea1fe4 15-Sep-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Set up COEFs for ALC269 to avoid click noises at power-saving

For avoiding the click noises at power-saving, set some COEF values
for ALC269* codecs.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9ad0e496519d99eb2c34f01e41500a775122c744 14-Sep-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add input jack layer support to Realtek codec

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
10a20af7c944649dc6d1ffa06bc759f5f3a16cd9 09-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve the input source name labels

This patch improves the input-source label strings to be generated from
the pin information instead of fixed strings per AUTO_PIN_* type.
This gives more suitable labels, especially for mic and line-in pins.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
86e2959a10828dd2614e037fb2502bc833adca52 09-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove AUTO_PIN_FRONT_{MIC|LINE}

We can assign multiple pins to a single role now, let's reduce the
redundant FRONT_MIC and FRONT_LINE. Also, autocfg->input_pins[] is
no longer used, so this is removed as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b5786e85cb2ffd0b07e86dec38a442bd20765ad8 09-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Keep char arrays in input_mux items

Keep char array in the input_mux item itself instead of pointing to
an external string. This is a preliminary work for improving the
input-mux name based on the pin role.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6cb3b707f95954ac18f19b4b3919af235738371a 09-Sep-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Add fixup pins for Ideapad Y550

By adding the subwoofer as a speaker pin, it is treated correctly when auto-muting.

BugLink: https://launchpad.net/bugs/611803
Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
18675e4283f575594d55ef1239c14ab5b4de53b6 08-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add fixup for FSC Celsius H270

Added a fixup table for ALC262 codec containing the entry for FSC
Celsius H270. Now both headphone jacks are detected properly as
headphones.

Reference: Novell bnc637263
https://bugzilla.novell.com/show_bug.cgi?id=637263

Signed-off-by: Takashi Iwai <tiwai@suse.de>
033688a5a80f9d56b2e7d56c4cb8188ae1448919 08-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add multiple headphone support to ALC262 codec

This patch changes the alc262 auto-parser to allow multiple pins
assigned for a single purpose (line-out, headphone or speaker).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
bb35febd16fe5ac8c30f9116a25210c4f63a5267 08-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Support multiple headphone auto-mute

Currently headphone auto-mute using alc_automute_pin() assumes only
the single pin used for the headphone output. Since there are devices
with multiple headphone jacks, we need to check all these pins there,
too.

Also this patch merges the common code between alc_automute_pin() and
alc_automute_amp() helper functions.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
080dc7bc2562615a5be0a705a9d1a8c24eb198d4 08-Sep-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Enable PC-beep for EeePC with ALC269 codec

EeePC 1001HAG has a similar problem like other ASUS machine, which doesn't
set the codec SSID properly for indicating the beep capability.
To enable PC-beep again, put this to the whitelist.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
66ceeb6bc2809bef0cfa18b1e22ddad5fc9b58b0 30-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use new inputs[] field to parse input-pins for Realtek codecs

Signed-off-by: Takashi Iwai <tiwai@suse.de>
73413b120d5d6eb6c98451bbc19acf43e0e300ae 30-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - embed alc_fixup contents into struct definitions

Instead of defining each content as a separate struct, put all into the
definition of struct alc_fixup arrays so that reader doesn't go back to
see the definition again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dbbcbc073ad3132bfbc410b11546b2fb4bdf2568 23-Aug-2010 David Henningsson <david.henningsson@canonical.com> ALSA: hda - Add Sony VAIO quirk for ALC269

The attached patch enables playback on a Sony VAIO machine.

BugLink: http://launchpad.net/bugs/618271

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c69aefabe004d24e6eedf83b6f253647f77dfc43 17-Aug-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix ALC680 base model capture

- Fix capture mixer elements for ALC680 base model
- Support auto change ADC for recording from MIC
- Cancel capture source assigned in auto mode.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f0cea79724f03ee55e7b5933b6a6f6a3fd177710 13-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix dynamic ADC change working again

The commit eb541337b7a43822fce7d0c9d967ee149b2d9a96
ALSA: hda - Make converter setups sticky
changes the semantics of snd_hda_codec_cleanup_stream() not to clean up
the stream at that moment but delay the action. This broke the codes
expecting that the clean-up is done immediately, such as dynamic ADC
changes in some codec drivers.

This patch fixes the issue by introducing a lower helper,
__snd_hda_codec_cleanup_stream(), to allow the immediate clean up.
The original snd_hda_codec_cleanup_stream() is kept as is now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
81cd3fca642cecb40a1ccef099799dcb5730734b 10-Aug-2010 David Henningsson <david.henningsson@canonical.com> ALSA: HDA: Use model=auto for LG R510

Two users report model=auto is needed to make the internal mic work properly.
BugLink: https://bugs.launchpad.net/bugs/495134

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
53bacfbbb2ddd981287b58a511c8b8f5df179886 07-Aug-2010 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> ALSA: hda - Fix missing stream for second ADC on Realtek ALC260 HDA codec

I discovered tonight that ALSA no longer sets up a stream for the second ADC
provided by the Realtek ALC260 HDA codec. At some point alc_build_pcms()
started using stream_analog_alt_capture when constructing the second ADC
stream, but patch_alc260() was never updated accordingly. I have no idea
when this regression occurred. The trivial patch to patch_alc260() given
below fixes the problem as far as I can tell. The patch is against 2.6.35.

Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fe3eb0a73ca052ee9346a1544f4c00e697cc9a4e 06-Aug-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support for Acer ZGA ALC271 (1025:047c)

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fc091769a5aa65c045bfbda149c424ba33d0abbb 04-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add pin-fix for HP dc5750

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>
748cce431eb413e794c8f1d1974b78b47a6174ef 04-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initial capsrc selection in patch_alc269()

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>
e096c8e6d5ed965f346d94befbbec2275dde3621 03-Aug-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add PC-beep whitelist for an Intel board

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>
7bfb9c031ec2d220d48bf679553d6177c2e66625 02-Aug-2010 David Henningsson <david.henningsson@canonical.com> ALSA: hda - Do not try to create speaker NIDs for ALC268 if there aren't any

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c7a9434dd6ea74464b0419a274463c914197bc98 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a warning for ignored pins with ALC259/268/269

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>
b08b1637ce1c0196970348bcabf40f04b6b3d58e 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Handle pin NID 0x1a on ALC259/269

The pin NID 0x1a should be handled as well as NID 0x1b.
Also added comments.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
954a29c881bd0c61352af0946f2c39d738d43c1b 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Prefer VREF50 if BIOS sets for Realtek codecs

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>
5d4abf93ea3192cc666430225a29a4978c97c57d 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Handle missing NID 0x1b on ALC259 codec

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>
757899aceebc33d9f86bbc481be7b7bf861e89ac 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Share digital I/O parser in patch_realtek.c

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>
ce503f38bdb59c9175a9076215a3ba579fad4e64 30-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Increase the connection list size for ALC662

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>
150b432f448281d5518f5229d240923f9a9c5459 29-Jul-2010 David Henningsson <david.henningsson@canonical.com> ALSA: hda - Rename iMic to Int Mic on Lenovo NB0763

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>
dc1eae256cfac03bf17bf3eb016e3a6423d3f9d5 29-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a PC-beep workaround for ASUS P5-V

ASUS P5-V provides a SSID that unexpectedly matches with the value
compilant with Realtek's specification. Thus the driver interprets
it badly, resulting in non-working PC beep.

This patch adds a white-list for such a case; a white-list of known
devices with working PC beep.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b6cbe517b9a4f21e1ca5e58356929383974500f3 28-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Assume PC-beep as default for Realtek

Enable PC-beep as default for hardwares that aren't compliant with the
SSID value Realtek requires. In such a case, better to enable the beep
to avoid a regression.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8af2591d6342a9e4bb79b4f1236246a79d20ebee 28-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't register beep input device when no beep is available

We check now the availability of PC beep and skip the build of beep
mixers, but the driver still registers the input device. This should
be checked as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
840b64c08032a86ab39b85ddd342918da0d559c8 13-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add support of dual-ADCs for Realtek ALC275

Some VAIO models with ALC275 have dual ADCs for both internal and external
mics, and the driver needs to switch one of them appropriately.
This patch adds a basic support for this functionality, dynamic switching
between two ADCs per jack plug state.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f189efcd1cc06b75fe18642c9751d26aa5ed2b54 05-Jul-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Enable beep on Realtek codecs with PCI SSID override

When the PCI SSID gives an overriding SKU assno, PC-beep bit isn't
detected (since it's located over 16bit), resulting in no PC beep.
Also, many devices seem ignoring the requirement by Realtek's spec
for SSID numbers, and it also confuses the PC beep detection.

This patch assumes the PC beep is available on every machine with
PCI SSID override. It's a regression fix from 2.6.34.

Reference: Kernel bug 16251
http://bugzilla.kernel.org/show_bug.cgi?id=16251

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d4a86d81944d3cccb3f4a309230e835823a61252 23-Jun-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing ALC680_* definitions

Also update the documentation.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d1eb57f47b7f524c13112c891e87fb1f51029fd1 23-Jun-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Support ALC680 codec

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3bfea98ff73d377ffce0d4c7f938b7ef958cdb35 22-Jun-2010 Luke Yelavich <luke.yelavich@canonical.com> ALSA: hda - Add Macbook 5,2 quirk

BugLink: https://bugs.launchpad.net/bugs/463178

Set Macbook 5,2 (106b:4a00) hardware to use ALC885_MB5

Cc: <stable@kernel.org>
Signed-off-by: Luke Yelavich <luke.yelavich@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2f44f84725dec354228fddc129e83e251060361d 22-Jun-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix uninitialized variable

Fix the following compile warning. kctl should be NULL-initialized.

sound/pci/hda/patch_realtek.c: In function ‘alc_build_controls’:
sound/pci/hda/patch_realtek.c:2550:23: warning: ‘kctl’ may be used uninitialized in this function

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b8f171e7e7ed5c9b77324bcc6bb580ddcc84da49 13-Jun-2010 Alex Murray <murray.alex@gmail.com> ALSA: hda - Fix line-in for mb5 model MacBook (Pro) 5,1 / 5,2

The line-in input is 0x7 not 0x2 for MacBook (Pro) 5,1 / 5,2 models

Signed-off-by: Alex Murray <murray.alex@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fbe618f216830f47b183858c3380d4767b1ad02f 11-Jun-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't check capture source mixer if no ADC is available

With multiple codec configurations, some codec might have no ADC, thus
it keeps spec->adc_nids = NULL. This causes an Oops in alc_build_controls().

Reference: kernel bug #16156
https://bugzilla.kernel.org/show_bug.cgi?id=16156

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ab669967d0ecf784567843180e715ccb0e42db36 07-Jun-2010 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - Add SSID table for iMac7,1.

This patch add's the iMac7,1 SSID entry to
patch_realtek.c which adds sound support.
bug entry:
https://bugs.launchpad.net/mactel-support/+bug/360866

Note:I do not have this machine on hand only
codec#0 file for the machine so please
test if you have the appropriate equipment.

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f53dae28cd17ec618a1295962d0f40e00b84665d 07-Jun-2010 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - Add SSID table for MacBookAir1,1

This patch add's the MacBookAir1,1 SSID entry to
patch_realtek.c which adds sound support.
bug entry:
https://bugs.launchpad.net/mactel-support/+bug/268301

Note:I do not have this machine on hand only
codec#0 file for the machine so please
test if you have the appropriate equipment.

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6e12970bd4f453c9cfcac6564567efe515ce1f1d 07-Jun-2010 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - Add SSID table for MacBookAir2,1

This adds the SSID number to snd_pci_quirk for the
MacBookAir2,1 taken from codec#0 at:
http://launchpadlibrarian.net/49455483/Card0.Codecs.codec.0.txt

keep in mind I do not have one of these machines on hand
so please if you do have this machine please test for me..

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
26fd74fc01991a18f0e3bd54f8b1b75945ee3dbb 30-May-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use mb31 quirk for an iMac model

BugLink: https://launchpad.net/bugs/542550

Symptom: On the reporter's iMac, in Ubuntu 10.04 LTS neither playback
nor capture appear audible out-of-the-box.

Test case: Boot from an Ubuntu 10.04 LTS live cd or from an installed
configuration and attempt to play or capture audio.

Resolution: Specify the mb31 quirk for this machine in the codec SSID
table.

Reported-and-Tested-By: f3a97
Cc: <stable@kernel.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b7cccc52feb142f48beae1566b749480fa9989de 23-May-2010 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - iMac9,1 sound fixes

First issue:
With the original patch, I've noticed by unmuting the mic
(and even having it muted), there is a distorted("Noise")
coming from the internal speakers, even when the headphones are plugged in.
What my finding's revealed is:

/* Mic (rear) pin: input vref at 80% */
{0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80},
{0x18, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},

From the original patch. Looking at codec#0 0x18/0x1a is listed as:

Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0000373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x90100141: [Fixed] Speaker at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0x4, Sequence = 0x1
Misc = NO_PRESENCE
Pin-ctls: 0x41: OUT VREF_50
Unsolicited: tag=00, enabled=0
Connection: 5
0x0c* 0x0d 0x0e 0x0f 0x26

seems this Node is listed as: [Fixed] Speaker while 0x15

Node 0x15 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x0000373c: IN OUT HP Detect
Vref caps: HIZ 50 GRD 80 100
Pin Default 0x018b3020: [Jack] Line In at Ext Rear
Conn = Comb, Color = Blue
DefAssociation = 0x2, Sequence = 0x0
Pin-ctls: 0x01: VREF_50
Unsolicited: tag=00, enabled=0
Connection: 5
0x0c 0x0d* 0x0e 0x0f 0x26

is [Jack] Line In at Ext Rear.
(looking at the other apple products as examples
I came up with the fix below).

Second issue:
alc885_mbp_4ch_modes
The original patch does a good job with the
HP pin automute function, but from what I noticed is I would have to manually
change the channel form 2 to 4 after plugging the headphones in.
And not to mention having odd moments to where I was jamming out
with the headphones on, then later realized I had sound blasting out
of the speakers as well. My findings revealed that changing
alc885_mbp_4ch_modes to alc885_mba21_ch_modes and setting
- spec->autocfg.speaker_pins[0] = 0x15;
+ spec->autocfg.speaker_pins[0] = 0x18;
gets the automute function when the headphones plugged in working
flawlessly(and the no need to manually change the channel number
afterwards).

Third issue:
alc885_imac91_mixer
There probably doesnt need to be anything changed with this
(esspecially if your one to like lots of sliders),but my findings
revealed that mac osx only has a master on the top right,
another switch on itunes, and then a slider for the mic.

So the changes I did below try and mimic osx as much as possible
(only thing I had an issue with is just having one mute switch
on the master, instead of having two(still investigating)).

fourth issue:
alc882_capture_source
I endeded up creating alc889A_imac91_capture_source()
only because looking at alc882_capture_source I see
that the mic is set to 0x1 while this works, I also noticed
that adding 0x1 and 0x01 and testing that 0x1 somehow
stops working, and 0x01 works(so I figured 0x01 was more
of the alpha of the numbers(still need to figure out
where that valuse is)). In any case the microphone
does work with the original, and with the below patch, but both
still record not as clean(lots of "Noise", which I would like to
look into too).
Note: using alsamixer -Va reveals the capture switches.

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fbc256692eac29e04cf87e45736d7ff149180a52 20-May-2010 Tobias Klauser <tklauser@distanz.ch> ALSA: hda: Storage class should be before const qualifier

The C99 specification states in section 6.11.5:

The placement of a storage-class specifier other than at the beginning
of the declaration specifiers in a declaration is an obsolescent
feature.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
482c45331519524e4aeaf8a9084a445500822b85 10-May-2010 Stefan Lippers-Hollmann <s.l-h@gmx.de> ALSA: Revert "ALSA: hda/realtek: quirk for D945GCLF2 mainboard"

This reverts commit 7aee67466536bbf8bb44a95712c848a61c5a0acd.

As it doesn't seem to be universally valid for all mainboard revisions of
the D945GCLF2 and breaks snd-hda-intel/ snd-hda-codec-realtek on the Intel
Corporation "D945GCLF2" (LF94510J.86A.0229.2009.0729.0209) mainboard.

00:1b.0 Audio device [0403]: Intel Corporation N10/ICH 7 Family High Definition Audio Controller [8086:27d8] (rev 01)

Signed-off-by: Stefan Lippers-Hollmann <s.l-h@gmx.de>
Cc: <stable@kernel.org> [2.6.33]
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ef5dbbccbbfa7d2211fa8efcc095a9f4a7912dda 06-May-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove superfluous external amp setup for ALC888

We had a fixed external amp setup enabled for ALC888, but this seems
unnecessary. The amps are controlled rather by GPIOs.
Let's remove it now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3353541fe533350a22a03e2fb7dc085b35912575 22-Apr-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use ALC880_F1734 quirk for Fujitsu Siemens AMILO Xi 1526

BugLink: https://launchpad.net/bugs/567494

The OR has verified that the existing model quirk, ALC880_UNIWILL,
is insufficient for audible playback and capture by default. Instead,
the ALC880_F1734 model quirk needs to be used.

This change is necessary for both 2.6.32.11 and 2.6.33.2.

Reported-by: Arnaud Malpeyre <amalpeyre@gmail.com>
Tested-by: Arnaud Malpeyre <amalpeyre@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d1501ea844eefdf925f6b711875b4b2b928fddf8 15-Apr-2010 Joerg Schirottke <master@kanotix.com> ALSA: hda - add a quirk for Clevo M570U laptop

Added the matching model for Clevo laptop M570U.

Signed-off-by: Joerg Schirottke <master@kanotix.com>
Tested-by: Maximilian Gerhard <maxbox@directbox.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ff818c24c2af370153646d302d831b69b023816f 12-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add fix-up for Sony VAIO with ALC269

Sony VAIO models with ALC269 need to initialize the pin 0x19 to VREF
ground or Hi-Z to make the headphone working. Other than that, model=auto
works fine, so let's use model=auto with a specific fix-up table.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7fa90e873f520dad5ec58f47340996cda083e875 12-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Enhance fix-up table for Realtek codecs

A few enhancement / fixes for fix-up table of some Realtek codecs:
- Apply fix-ups only for the auto model
- Apply additional verbs after normal init verbs
- Add a debug print to show the fix-up application

This is basically a preliminary work for the next fix for Sony VAIO.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7f311a46916a3be00a1a8e3f1bdf461d08f1d263 09-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix initial capture source connections of ALC880/260

The widget connections of ADC of ALC880 and ALC2260 aren't initialized,
thus it might point to invalid pin. This can be a problem when mode=auto
and there is only one input pin. Then user can't change the connection
at all.

This patch adds the code to initialize the input pin connection of these
codecs.

Reference: Novell bnc#594363
https://bugzilla.novell.com/show_bug.cgi?id=594363

Signed-off-by: Takashi Iwai <tiwai@suse.de>
226b1ec8c18bcb6d1aa448a29b2c8aeae1946228 09-Apr-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix setup for ALC269vb amic and dmic models

Corrected HP and mic pins for ALC269vb amic and dmic models.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
531d8791accf1464bc6854ff69d08dd866189d17 09-Apr-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix auto-parser of ALC269vb for HP pin NID 0x21

ALC269vb has an alternative HP pin 0x21 in addition.
Fix the parser to recognize it.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7ad7b218f4aae4f395b3b4cef261572556bbd20a 06-Apr-2010 Maurus Cuelenaere <mcuelenaere@gmail.com> ALSA: hda: Add support for Medion WIM2160

This adds support for the Medion WIM2160 soundcard.
There's no PCI quirk added because it has the same PCI id as the
Medion MD2.

Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
25e8d9b67b206b8bf9bf11699d1a7e67c87c1a2e 07-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove left-over debug printk in patch_realtek.c

Signed-off-by: Takashi Iwai <tiwai@suse.de>
489008cd58740fe3842822681d33bf87c07c3412 07-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC882 DAC connections in auto mode

Assign DACs properly to each output. Currently, the front output is bound
to HP/speaker outputs blindly, but they should be assigned to individual
DACs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f9700d5a4575e7fb343df10a1d29d425e4b81082 05-Apr-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix a wrong array range check in patch_realtek.c

The commit 6a4f2ccb467e00281470cde2dee08fe5ecde62d1 introduced a wrong
comparision for the array range check, which effectively skips the whole
initialization of DAC connections. Fixed now.

Reference: bko#15689
https://bugzilla.kernel.org/show_bug.cgi?id=15689

Reported-by: Adrian Ulrich <kernel@blinkenlights.ch>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d12841827a6de120199609dadb6ff4ec99bd90ea 05-Apr-2010 Tony Vroon <tony@linx.net> ALSA: hda - Enable amplifiers on Acer Inspire 6530G

After more tests it appears that EAPD needs to be enabled
on both the 0x14 and 0x15 NIDs to enable the main speaker
and headphone amplifiers. The maximum volume setting is
now equal to what the machine achieves under other operating
systems.
Disabling Front or LFE playback triggers EAPD and disables
the amplifier. As such, these two playback switches have
been removed from the mixer.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a68d5a5419d2a15161488b20f740115068e7b666 30-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - introduce snd_hda_codec_update_cache()

Add a new helper, snd_hda_codec_update_cache(), for reducing the unneeded
verbs. This function checks the cached value and skips if it's identical
with the given one. Otherwise it works like snd_hda_codec_write_cache().

The alc269 code uses this function as an example.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ad35879aa192e783db2d41c196f48f3fc059ce22 30-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add mute LED support for HP laptop with ALC269

Some HP laptops have a mute LED that is controlled over the unused
MIC2 VREF pin. Implement the LED updater like patch_sigmatel.c for this
model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1f85d72d2c9c9a1d6d32cf325936bc224ad5d591 30-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing printk argument in previous patch

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6694635d3ae1b038d7a0e38b80637db867c7c8e2 29-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ADC/MUX assignment of ALC269 codec

ALC269 codec has a few different variants, and each of them may have
different ADC and MUX widgets. For example, one model has ADC 0x08
with MUX 0x23 while others has ADC 0x09 or ADC 0x07 with MUX 022 or
0x24. The difference of ADC appears usually as the capability of
the digital mic pin (0x12), and the current driver sometimes misses
the internal mic pin due to the mismatching ADC.

This patch adds a bit more clever way to find the matching ADC instead
of the static list. Now the driver checks all active input pins and
fills only the ADC/MUX's that contain all of them.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5dbd5ec6e1cf2e49128025d80813a275744a7ac5 29-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix invalid bit values passed to snd_hda_codec_amp_stereo()

The mask and value parameters passed to snd_hda_codec_amp_stereo()
should be 8-bit values for mute and volume. Passing AMP_IN_MUTE() is
wrong, which is found in many places in patch_realtek.c as a left-over
from the conversion to snd_hda_codec_amp_stereo().

Reported-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6a4f2ccb467e00281470cde2dee08fe5ecde62d1 25-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't set invalid connection index in Realtek initialiaiton

Skip initialization of connections of DAC widgets that aren't used,
which resulted in invalid verb parameters.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7fb5622326bf98437e629e94f8710eb12a90b30d 22-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix uninitialized variable warning in alc_auto_parse_customize_define()

Signed-off-by: Takashi Iwai <tiwai@suse.de>
bae84e70d66fe46c12231082cf1c4848ea22f3ef 22-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix access-after-free in patch_realtek.c

alc_free_kctls() has to be called after all jobs done in alc_build_controls().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c027ddcd01c852dfa5880862e47f022d7d9402f5 19-Mar-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add alc_codec_rename() helper

Added alc_codec_rename() helper for renaming codec->chip_name.
Added Acer-specific codec naming for ALC269/662.

[Clean-up and refactoring by tiwai]

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
da00c24493bf6ae3772dfe7343dca033ebc75955 19-Mar-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add parse customize define function for Realtek codecs

Added alc_auto_parse_customize_define() to parse the Realtek-specific
attributes from SKU. Also enable beep controls only when the proper
attribute bit is set.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
572c0e3c73341755f3e7dfaaef6b26df12bd709c 15-Mar-2010 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use LPIB and 6stack-dig for eMachines T5212

BugLink: https://bugs.launchpad.net/bugs/538895

The OR has verified that both position_fix=1 and model=6stack-dig are
necessary to have capture function properly. (The existing 3stack-6ch
model quirk seems to be incorrect.)

Reported-by: Reuben Bailey <reuben.e.bailey@gmail.com>
Tested-by: Reuben Bailey <reuben.e.bailey@gmail.com>
Cc: <stable@kernel.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b43f6e5e258d67acae5961896d10bbe38c271070 10-Mar-2010 Anisse Astier <anisse@astier.eu> ALSA: hda - Add PCI quirks for MSI NetOn AP1900 and Wind Top AE2220

This should make the speakers and jack detection work on MSI all-in-one
computers NetOn AP1900 and Wind Top AE2220.

Signed-off-by: Anisse Astier <anisse@astier.eu>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9c4cc0bdede1c39bde60a0d5d9251aac71fbe719 15-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix secondary ADC of ALC260 basic model

Fix adc_nids[] for ALC260 basic model to match with num_adc_nids.
Otherwise you get an invalid NID in the secondary "Input Source" mixer
element.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
5311114d4867113c00f78829d4ce14be458ec925 08-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix input source elements of secondary ADCs on Realtek

Since alc_auto_create_input_ctls() doesn't set the elements for the
secondary ADCs, "Input Source" elemtns for these also get empty, resulting
in buggy outputs of alsactl like:
control.14 {
comment.access 'read write'
comment.type ENUMERATED
comment.count 1
iface MIXER
name 'Input Source'
index 1
value 0
}

This patch fixes alc_mux_enum_*() (and others) to fall back to the
first entry if the secondary input mux is empty.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
50ae0aa8f55813b2cc5e5b7f589f328b8fcd45ec 08-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix wrong model range check for ALC268

Fix a wrong value passed to snd_hda_check_board_codec_sid_config() as
the upper-limit in parse_alc268(), so that any wrong value can't be
passed.

So far, no bogus value was set in the quirk entries, so this won't give
any behavioral changes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d2db09b87eb7b547136d5d25ff1df06820e070bf 05-Mar-2010 Frederik Deweerdt <frederik.deweerdt@xprog.eu> ALSA: hda: uninitialized variable fix

Commit eaa9b3a748539651f50e3a234c8854e1b42a839a introduced the following
uninitialized warning:

sound/pci/hda/patch_realtek.c: In function 'set_capture_mixer':
sound/pci/hda/patch_realtek.c:4928: warning: 'pin' is used uninitialized in this function
sound/pci/hda/patch_realtek.c:4918: note: 'pin' was declared here

It appears indeed that 'pin' needs to be initialized to 0.

Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
20645d70bdcdcc29b1b92011780d233008a8adcf 02-Mar-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing hp_pins definitions for ALC269 quirks

In 2.6.33 ACL269 unsol event handler was changed to look up the pre-defined
pins, but the headphone pins aren't defined properly in each quirk.
This patch adds the missing definitions, and fixes the speaker auto-mute
regression on some ASUS (and possibly other) laptops.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
61c2d2b5e7241d4410ab8227ef4f76c1aba8210b 25-Feb-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add/fix ALC269 FSC and Quanta models

Specify proper quirk models for FSC and Quanta machines with ALC269 codec.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6227cdced0328b0c4322c3170a727af5249393ce 25-Feb-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add ALC670 codec support

- Fixed alc_subsystem_id( ) typo and add new function.
- !(ass & 0x100000)) ==> Delete this check. It is unnecessary check.
- Add porti
- ALC670 support

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
76e6f5a9efc919f9179163c66403451a789d47ab 23-Feb-2010 Reimundo Heluani <rheluani@gmail.com> ALSA: add support for Macbook Air 2,1 internal speaker

Add support for Macbook Air 2,1 (late 2008) internal speaker and
headphones. Create a "mba21" model for snd-hda-intel.

Signed-off-by: Reimundo Heluani <rheluani@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d01aecdf900574cf6be7c1c6114e708801126baf 23-Feb-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove identical definitions for macmini3 model

The channel mode definitions for macmini3 model are identical with mb5.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9d54f08bc77bf6dfe835b945d03b6e127c9fc5a3 22-Feb-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up Intel Mac unsol codes

Use the standard unsol_event callback with each setup callback for
IntelMac models with Realtek ALC885 codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e458b1fadf9239d1fdb165ff4c4ea0d807041bec 12-Feb-2010 Luke Yelavich <luke.yelavich@canonical.com> ALSA: hda - Add Macmini 3,1 support

BugLink: https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/343989

Add a model quirk for the NVIDIA based Macmini hardware, aka Macmini 3,1. The
pinout is almost identical to the mb5 quirk, except for no microphone and
the line-in mixer controls being on a different index. Everything works in
2ch mode, but as I am not sure what needs to be changed for 6ch mode, or
whether the Mac Mini's chip supports 6ch mode, I have simply duplicated
the code from the mb5 quirk for the mac mini chmode management. The new
model parameter for this quirk is "macmini3".

Signed-off-by: Luke Yelavich <luke.yelavich@canonical.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cec27c891b805b2ab2302f9fcbdacb6f179ac0d4 04-Feb-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of ALC665

- Add support for ALC665
- Add more ASUS model
- Modify common patch for ALC272 ALC273 ALC661 ALC662 ALC663 ALC665

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
84898e87cc0fff976202d5b91656f2db949fc2dd 04-Feb-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Add ALC269VB support

- Add new models ALC269VB_AMIC ALC269VB_DMIC
- Add alc269vb_laptop_dmic_setup
The record source index Dmic is 0x6 for ALC269VB.
- Change eeepc words for ALC269
- Modify init_verb tables of patch_alc269 patch_alc662 patch_alc882
- Modify common patch for ALC270 ALC269VB ALC275

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
88102f3f841b680412714d0b0b7da33c2a00c1f9 04-Feb-2010 Kailang Yang <kailang@realtek.com> ALSA: hda - Remove superfluous init verb entries for ALC88[235]

The default values are no need to be set in init_verbs.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0aea778efa0d632b62eb35122cbb3b9fae548c61 25-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove the COEF setup for ALC267/ALC268

The COEF setup for model=auto seems problematic on some laptops,
resulting in the silent speaker output. Better to disable it for now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
95f475f7a2e5d60fe9eeb7a2700753036a6ee6a0 25-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove coef output in Realtek proc files

The output of COEF index/value in the proc file for Realtek codecs is
rather useless since the value varies together with the index.
Let's get rid of it again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
973b8cb0ead3e0b1dd3ee7b2df52e4dff1ffc707 24-Jan-2010 Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com> ALSA: hda - add possibility to choose speakers configuration for 4930g

Now one can choose speaker configuration in e.g. PulseAudio mixer

Signed-off-by: Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
dc99be47667c56046555e89e62f1ac17fa06329a 20-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix HP T5735 automute

This patch fixes the aut-mute setup on HP T5735 with ALC262 codec.
Instead of wrong amp, use pin control toggling for muting the speaker now.

Tested-by: Lee Trager <lee.trager@hp.com>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3fb4a508b8e7957aa899f32cd6d9d462e102c7ca 19-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Turn on EAPD only if available for Realtek codecs

Some codecs disable widgets used for output pins and reserve as vendor-
spec widgets. Thus we need to check the widget type and pin cap before
actually sending SET_EAPD verbs in the auto-configuration mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4feabefe53eb3742f0b2773a43200d1686f3a288 19-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix parsing pin node 0x21 on ALC259

ALC259 has a widget NID 0x21 for the output pin, but it wasn't handled
properly in alc268_new_analog_output().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
eaa9b3a748539651f50e3a234c8854e1b42a839a 17-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix capture on Sony VAIO with single input

Sony VAIO VGN-P11G with ALC262 codec has only one input pin, and the
recording doesn't work with model=auto because ALC262 parser sets the
wrong cap NIDs to choose the route and the default route for the sole
input pin wasn't initialized properly. This patch solves these issues.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c7a8eb103248a110cdbe0530d8c5ce987f099eee 14-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix missing capture mixer for ALC861/660 codecs

The capture-related mixer elements are missing with ALC861/ALC660 codecs
when quirks are present, due to missing call of set_capture_mixer().

Reference: Novell bnc#567340
http://bugzilla.novell.com/show_bug.cgi?id=567340

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
a76221d47ef2b73ff16c0fef00a784026308ea02 13-Jan-2010 Alex Murray <murray.alex@gmail.com> ALSA: hda - Improved MacBook (Pro) 5,1 / 5,2 support

This patch adds support for automatically muting the speakers when headphones
are inserted, as well as relabelling the headphone widgets from the
non-standard "HP" to the standard "Headphone" for the mb5 model.

Signed-off-by: Alex Murray <murray.alex@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4dee8baa18d611b6dc854e1cc193550ff6f687be 13-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix Toshiba NB20x quirk entry

The alc664-mode4 model doesn't seem to fit with Toshiba NB205 correctly.
NB205 uses the pin 0x17 connected with the mixer 0x0f for the speaker
output, which isn't controlled by mode4 model at all.
Rather model=auto works fine as is on the latest driver, so let it back
again.

Tested-by: Nickolas Lloyd <ultrageek.lloyd@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9c0afc861a7228f718cb6a79fa7f9d46bf9ff300 12-Jan-2010 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC861-VD capture source mixer

The capture source or input source mixer element wasn't created properly
for ALC861-VD codec due to the wrong NID passed to
alc_auto_create_input_ctls().

References: Novell bnc#568305
http://bugzilla.novell.com/show_bug.cgi?id=568305

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
c97259df3f2e163c72f4d0685c61fb2e026dc989 28-Dec-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Refactor powerdown for Realtek HDA codecs

This patch converts the alc889 Aspire-specific powerdown to a generic
one. Like the previous effort, it currently only handles Front and PCM
but can be easily extended to cover other nids. The existing hook for
alc889 Aspire-specific remains enabled. Upon further testing, I've added
its use for ALC861_AUTO as well. Following patches will enable them for
other quirks.

Tested-by: Dr. David Alan Gilbert <linux@treblig.org>
Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a4e09aa3cf592d9f084ff4ceb216be40c4c265dc 27-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix click noises at suspend/free with Realtek codecs

Call snd_hda_shutup_pins() at suspend and free for avoiding click noises.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
21949f00a022e090a7e8bc9a01dfca88273c6146 23-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix NID association for capture mixers

Fix the wrong implementation of NID <-> kctl mapping for capture mixers
introduced by the ocmmit 5b0cb1d850c26893b1468b3a519433a1b7a176be.
So far, the driver returns an error at probe.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f5de24b06aa46427500d0fdbe8616b73a71d8c28 20-Dec-2009 Hector Martin <hector@marcansoft.com> ALSA: HDA: add powersaving hook for Realtek

The current Realtek code makes no specific provision for turning stuff
off. The codec chip is placed into low-power mode generically, but this
doesn't turn off any external hardware connected to it, in particular
external amplifiers.

This patch creates a hook function that is called by the codec
suspend/resume functions. It ought to disable any external hardware in a
device-specific way. I've implemented a generic ALC889 function that
sets the EAPD pin properly, and used it for the Acer Aspire 8930G which
can benefit from this feature.

On my laptop, this results in ~0.5W extra savings.

Signed-off-by: Hector Martin <hector@marcansoft.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
556eea9a926bff8f014b4f80522b4de97ae84213 20-Dec-2009 Hector Martin <hector@marcansoft.com> ALSA: HDA: remove useless mixers on Aspire 8930G

This patch removes some extra mixers that do nothing on the Acer Aspire
8930G.

The CD mixer is useless because the SATA DVD/Blu-Ray drive has no analog
audio output, and the Side mixer is useless because we max out at 6ch
anyway.

Signed-off-by: Hector Martin <hector@marcansoft.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0f86a228f4a4639b3142ce0dad208433b2db377a 20-Dec-2009 Hector Martin <hector@marcansoft.com> ALSA: HDA: simplify Aspire 8930G verb array

This patch just simplifies the 8930G verb array a bit. Just use the
common ALC889 EAPD verb array to make things more consistent. The file
is already huge enough already.

Signed-off-by: Hector Martin <hector@marcansoft.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e2595322a3a353a59cecd7f57e7aa421ecb02d12 20-Dec-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Set Front Mic to input vref 50% for Lenovo 3000 Y410

BugLink: https://bugs.launchpad.net/bugs/479373

The OR has verified with hda-verb that the internal microphone needs
VREF50 set for audible capture.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
440b004cf953bec2bc8cd91c64ae707fd7e25327 20-Dec-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda/realtek: Remove extra .capsrc_nids initialization for ALC889_INTEL

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ef86f581f7e8b29cb58d7f4e892e1a91b3805124 19-Dec-2009 Julia Lawall <julia@diku.dk> ALSA: Use kzalloc for allocating only one thing

Use kzalloc rather than kcalloc(1,...)

The semantic patch that makes this change is as follows:
(http://coccinelle.lip6.fr/)

// <smpl>
@@
@@

- kcalloc(1,
+ kzalloc(
...)
// </smpl>

Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2fef62c825f09e29d2f52dc187ddf6f99e28c7f1 18-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix quirk for Maxdata obook4-1

Works fine with the auto-parser.

Reference: Novell bnc#564940
https://bugzilla.novell.com/show_bug.cgi?id=564940

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d1409ae4cecb4af260759bdfdf88fafca23a9940 17-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix NULL dereference in kctl-NID mapping in patch_realtek.c

capsrc_nids can be NULL, and adc_nids should be taken as fallback.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
035eb0cff0671ada49ba9f3e5c9e7b0cb950efea 17-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix missing capsrc_nids for ALC88x

Some model quirks missed the corresponding capsrc_nids. This resulted in
non-working capture source selection.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
ebb83eeb6469bedda83b4dc6f23ddf93eb32b347 17-Dec-2009 Kailang Yang <kailang@realtek.com.tw> ALSA: hda - More ALC663 fixes and support of compatible chips

1. Add more ASUS NB model.
2. Fixed alc663_m51va_setup
M51VA has Digital Mic that NID is 0x12. The record source index is
0x9 for ALC663.
So, to modify the alc663_m51va_setup function to index 0x9
and add analog Mic aupport function alc663_mode1_setup.
3. Add ASUS mode7 and mode8 modules for ALC663

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5e26dfd0615868872cb44842f1e1428c7b414ab0 10-Dec-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - simplify usage of HDA_SUBDEV_AMP_FLAG

The HDA_SUBDEV_NID_FLAG is duplicate for amplifier control elements. Move
get_amp_nid_() call to the snd_hda_ctl_add() function.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
9e3fd8719f624a43575b56a4777b1552399a8be8 08-Dec-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - introduce HDA_SUBDEV_AMP_FLAG (ControlAmp in proc)

The purpose of this changeset is to show information about amplifier
setting in the codec proc file. Something like:

Control: name="Front Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Front Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=In, idx=2, ofs=0

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
5b0cb1d850c26893b1468b3a519433a1b7a176be 08-Dec-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - add more NID->Control mapping

This set of changes add missing NID values to some static control
elemenents. Also, it handles all "Capture Source" or "Input Source"
controls.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
950200e2ff11daae1c5d9426703bdd494603f38b 13-Dec-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use ALC260_WILL quirk for another Acer model (0x1025007f)

BugLink: https://bugs.launchpad.net/bugs/418627

The original reporter states that this quirk is necessary to obtain
reasonable gain for playback. Without it, sound is inaudible. Tested
with playback (spkr and hp) and capture.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7aee67466536bbf8bb44a95712c848a61c5a0acd 09-Dec-2009 David Santinoli <david@santinoli.com> ALSA: hda/realtek: quirk for D945GCLF2 mainboard

Quirk for the ALC662 found on the Intel D945GCLF2 (and possibly other)
mainboards.

Signed-off-by: David Santinoli <david@santinoli.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d11f74c62fb4a1fefd39085570fb6dfa7b9ab2bb 08-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Exclude unusable ADCs for ALC88x

On Realtek codecs, a digital mic pin is connected often only to a single
ADC. But the parser tries to set up all ADCs no matter whether the
digital mic is available, and results in non-selectable input source.

This patch adds a check of input-source availability of each ADC, and
excludes ones that don't support all input sources.

Reference: Novell bnc#561235
http://bugzilla.novell.com/show_bug.cgi?id=561235

Signed-off-by: Takashi Iwai <tiwai@suse.de>
23033b2bce4361f2859ee0331f97c9056dae7091 08-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing Line-Out and PCM switches as slave

Realtek codecs may have "PCM" and "Line-Out" playback switches, and
they can be slaves for vmaster.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4b7e180335d23296170a5fa8c1f074722f94b253 08-Dec-2009 Justin P. Mattock <justinmattock@gmail.com> ALSA: hda - iMac 9,1 sound patch.

This is an updated patch for the Apple iMac 9,1 model to add sound.
Original patch posted here:
http://article.gmane.org/gmane.linux.alsa.devel/61361/match=

I have been using this patch for a while now
and have to say it works vary well, except for a few minor
things:

With the iMac 24-inch 3.06GHz Intel Core 2 Duo
everything seems to be working as it should,
although I have not looked into the microphone
(never really use one, nor have any apps to test,
my guess is it doesn't work, or I never figured out how
to get it to work).

With the iMac 24-inch 2.66GHz Intel Core 2 Duo
everything is the same as with the above machine
except I'm hearing a light scratchy/distortion noise
come out of the speakers when using headphones(above machine
does not do this).

Other than that the sound level is great(especially with good Dj headphones).

Signed-off-by: Justin P. Mattock <justinmattock@gmail.com>
Tested-by: Justin P. Mattock <justinmattock@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
af901ca181d92aac3a7dc265144a9081a86d8f39 14-Nov-2009 André Goddard Rosa <andre.goddard@gmail.com> tree-wide: fix assorted typos all over the place

That is "success", "unknown", "through", "performance", "[re|un]mapping"
, "access", "default", "reasonable", "[con]currently", "temperature"
, "channel", "[un]used", "application", "example","hierarchy", "therefore"
, "[over|under]flow", "contiguous", "threshold", "enough" and others.

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
ac2c92e0cd06387ecee8115f5fa385fba6413c42 03-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix memory leaks in the previous patch

The previous hack for replacing the codec name give memory leaks at
error paths. This patch fixes them.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
274693f37090ada2cadd09944ab883f05ea6ebe6 03-Dec-2009 Kailang Yang <kailang@realtek.com.tw> ALSA: hda - Add ALC661/259, ALC892/888VD support

Fixed List:
1. Add alc_read_coef_idx function
2. Add ALC661 ALC259
3. Add ALC892 ALC888VD

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cfc9b06f0befe50ef02253f72b76946363549031 01-Dec-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a pin-fix for FSC Amilo Pi1505

FSC Amilo Pi 1505 has a buggy BIOS and doesn't set up the HP and
speaker pins properly. Add the pinfix entry for that.

Reference: Novell bnc#557403
https://bugzilla.novell.com/show_bug.cgi?id=557403

Signed-off-by: Takashi Iwai <tiwai@suse.de>
83dd7408b59c1945069199d712df8c7c64a76e1f 24-Nov-2009 Takashi Iwai <tiwai@suse.de> Revert "ALSA: hda - Change quirk for Acer Aspire 5930G"

This reverts commit f2624791a0c2a2d7664b12d75ca327917141fd3b.

Łukasz Wojniłowicz reported that the change causes both internal and
external mics not working any more. The headphone jacking issue was
fixed by his previous patch, it's better to revert to acer-aspire-4930g
model.

Reported-by: Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7cef4cf1c5e9d81554137f52b96a5ab7f6241cdd 20-Nov-2009 Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com> ALSA: hda - 4930g mute lfe and side when pluging in headphones

Fixes first issue from comment 0021423 in bug 0004317 for Acer Aspire 5930g

Signed-off-by: Łukasz Wojniłowicz <lukasz.wojnilowicz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f2624791a0c2a2d7664b12d75ca327917141fd3b 19-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Change quirk for Acer Aspire 5930G

Change the quirk for Acer Aspire 5930G from model=acer-aspire-4930g to
model=acer-aspre-6530g. The tuba bass gets muted along with the other
built-in speakers upon headphones insertion, the internal mic works
perfectly etc.

Reported-by: Claudio Viano <claudio.viano@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d56757abc11a21996d9839c0d4e3b2c3666cd318 18-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Replace the rest of jack-detections with snd_hda_jack_detect()

Signed-off-by: Takashi Iwai <tiwai@suse.de>
864f92be7e8d4a0ba11d912e3f03d1a92a031dee 17-Nov-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda - introduce snd_hda_jack_detect() and snd_hda_pin_sense()

This helps merge duplicate code.

v2: add snd_hda_jack_detect() and comments recommended by Takashi.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c5b5165ce28099484d5fa733abeae48540680440 17-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Disable default quirk for Sony VAIO with ALC262 codec

The ALC262 has a quirk entry matching with all Sony Vaio laptops
to use model=sony-assamd as default. But, model=auto works much better
for new models in the recent driver versions, thus it's safer to disable
that default quirk entry.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
12929baea4b29d70525f764034b3dac771dd69e5 17-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix quirk for VAIO type G

Vaio type G laptop doesn't work with the current quirk setup.
After some tests, it turned out that it should be model=auto as default.

Reported-by: Mattia Dongili <malattia@linux.it>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
67d634c07afd8f70973d925463e775fdb89ad536 16-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix build errors with CONFIG_SND_HDA_INPUT_BEEP=n

Disable beep-related codes when CONFIG_SND_HDA_INPUT_BEEP isn't set.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9c96fa599fe4f0ccc6e3e606df6652335afe28e8 16-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Get rid of magic digits for subdev hack

Define a proper const for a magic 31bit flag for subdev / NID setup
with a brief comment.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4d02d1b638af580ae3d69367248539a8b3893064 12-Nov-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - proc - add support for dynamic controls to mixer<->NID mapping

This patch adds support for dynamically created controls to proc codec file
(Control: lines).

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3911a4c19e927738766003839aa447becbdbaa27 11-Nov-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - proc - introduce Control: lines to show mixer<->NID assignment

This is an initial patch to show universal control<->NID assigment in
proc codec file. The change helps to debug codec related problems.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
123c07aeddd71fbb295842a8c19866e780b9a100 21-Oct-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda_intel: Digital PC Beep - change behaviour for input layer

Original implementation was keeping registered input device for SND_BEEP
and SND_TONE events all time. This patch changes this behaviour:
If digital PC Beep is turned off using universal control switch,
the input device is unregistered.

Explanation: The kd_mksound() send SND_BEEP and SND_TONE only to last
registered device acceping those events. It means that the HDA Intel
audio driver blocks also the internal PC Speaker device (pcspkr.c
driver) even if the HDA Beep is muted. The user can easy disable
all beeps using 'setterm -blength 0' or 'xset b off' command.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
46ef6ec9da420b298b1f197e445bf5b06fe01ef4 11-Nov-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use model=mb5 for MacBookPro 5,2

BugLink: https://bugs.launchpad.net/bugs/462098

Until we can look closer at the verbs, let's use ALC885_MB5 for
codec SSID 0x106b4600 to enable playback and capture for MacBookPro
5,2s.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
71121d9fcc494453b9311992de220abb47dde3f1 10-Nov-2009 Roel Kluin <roel.kluin@gmail.com> ALSA: hda - possible read past array alc88[02]_parse_auto_config()

The test of index `i' is after the read - too late - and
unsafe: if snd_hda_get_connections() fails in the last
iteration a read beyond the array is possible.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4ac55982907e1d48e64feaa56be91b9b52d3714d 10-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Avoid quirk for HP dc5750

The present quirk for HP dc5750 seems broken and maps the pins wrongly.
Since the auto-parser works well for this device, set the default entry
to use model=auto.

Reference: Novell bnc#552154
https://bugzilla.novell.com/show_bug.cgi?id=552154

Signed-off-by: Takashi Iwai <tiwai@suse.de>
95491d902b4ed1bfd8f602aada793d74cc85428b 09-Nov-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use model=auto quirk for Sony VAIO VGN-FW170J using ALC262

BugLink: https://bugs.launchpad.net/bugs/478309

The internal microphone on this VAIO model does not work unless the
"auto" quirk is used.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
d355c82a0191d5a3e971bd5af96cc81fe3ed25b9 03-Nov-2009 Jaroslav Kysela <perex@perex.cz> ALSA: rename "PC Speaker" and "PC Beep" controls to "Beep"

To avoid confusion in control names for the standard analog PC Beep generator
using a small Internal PC Speaker, rename all related "PC Speaker" and "PC
Beep" controls to "Beep" only. This name is more universal and can be also
used on more platforms without confusion.

Introduce also "Internal Speaker" in ControlNames.txt for systems with
full-featured build-in internal speaker.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ad87c64f00e01a694bf90bddc2b4a6c90796d13c 02-Nov-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't check invalid HP pin

alc_automute_pin() might be called even if any HP pin is defined, and
it will result in verbs with NID=0.

This patch adds a check for the validity of HP widget before issuing
any verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a1bf808849f25a4d668f81415ecebb2da9fecf8e 02-Nov-2009 Daniel T Chen <crimsun@ubuntu.com> ALSA: hda: Use quirk mask for Dell Inspiron Mini9/Vostro A90 using ALC268

BugLink: https://bugs.launchpad.net/bugs/368629

We should use a quirk mask for these Dell Inspiron Mini9s and Vostro
A90s, as the model=dell quirk appears to enable audio on them.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4b7348a15972274eb16182d10987f69da3e95719 14-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix capture source checks for ALC662/663 codecs

The ALC662/663 parser calls wrongly alc880_auto_create_input_ctls()
to check the capture source selections. This should be alc882, instead.

Reference: Novell bnc#546918
http://bugzilla.novell.com/show_bug.cgi?id=546918

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2d9c648295d7bc376305337d29f540a5e411f632 13-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix overflow of spec->init_verbs in patch_realtek.c

ALC861-VD lenovo model causes overflow of spec->init_verbs entries due to
the recent changes. Simply increase the array size to avoid the overflow.

Reported-by: Luca Tettamanti <kronos.it@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
defb5ab2e0ff08ff9a942e2bb7e14c21a55ec26b 07-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix yet another auto-mic bug in ALC268

Since patch_alc268() doesn't call set_capture_mixer() (due to its h/w
design different from other siblings), it needs to call fixup_automic_adc()
explicitly to set up the auto-mic routing. Otherwise the indices for
int/ext mics aren't set properly.

Reference: Novell bnc#544899
http://bugzilla.novell.com/show_bug.cgi?id=544899

Signed-off-by: Takashi Iwai <tiwai@suse.de>
01d4825df62d1d405035b90294bf38616d3f380b 06-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't pick up invalid HP pins in alc_subsystem_id()

alc_subsystem_id() tries to pick up a headphone pin if not configured,
but this caused side-effects as the problem in commit
15870f05e90a365f8022da416e713be0c5024e2f.

This patch fixes the driver behavior to pick up invalid HP pins; at least,
the pins that are listed as the primary outputs aren't taken any more.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f8f25ba3563dab14b1c3ea4d829642b8a61ca5d7 06-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a workaround for ASUS A7K

ASUS A7K needs additional GPIO1 bit setup; it has to be cleared.
Added a new fixup hook for this laptop so that it works as is.

Refernece: Novell bnc#494309
http://bugzilla.novell.com/show_bug.cgi?id=494309

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15870f05e90a365f8022da416e713be0c5024e2f 05-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix invalid initializations for ALC861 auto mode

The recent auto-parser doesn't work for machines with a single output
with ALC861, such as Toshiba laptops, because alc_subsystem_id() sets
the hp_pins[0] while it's listed in line_outs[0].
This ends up with the doubled initialization of the same mixer widget,
and it mutes the DAC route because hp_pins has no DAC assigned.

To fix this problem, just check spec->autocfg.hp_outs and speaker_outs
so that they are really detected pins.

Reference: Novell bnc#544161
http://bugzilla.novell.com/show_bug.cgi?id=544161

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0afe5f891501609f31146798fb41784f4adad27c 02-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up name string creation in patch_realtek.c

Use a common helper to create playback controls.
This gives less chance of typos.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7085ec12a62ec2e990bc7d984bee7ba28e5c1dec 02-Oct-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix / improve ALC66x parser

The auto-parser for ALC662/663/272 codecs doesn't work properly when
a speaker is connected to mono NID 0x17, and doesn't handle the dynamic
DAC assignment properly.

This patch fixes the issues and also improves the assignment of DACs
so that HP and speakers can have independent volume controls.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3db6c037c6954ed6d98ef199938e4004fea96908 23-Sep-2009 Manoj Iyer <manoj.iyer@canonical.com> ALSA: hda - Added quirk to enable sound on Toshiba NB200

Patch was tested on Toshiba NB200 and is found to enable sound.

Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
Cc: stable@kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
432fd13359e137b4b59a910da25f89787f19799d 30-Sep-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Resurrect input-source mixer of ALC268 model=acer

In the commit fdbc66266c21976027938642f60e0f047149a61a, I mistakenly
replaced the capture mixer array for ALC268_ACER to nosrc version
although this should be kept to alt_mixer. Now fixed back.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b99dba34dc9ec007a0c8be98c0333dd37463d2fd 17-Sep-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix MSI GX620 mixer

The headphone and speaker mixer elements aren't properly set for
MSI GX620 with targa-8ch-dig quirk.
Also fixed the speaker volume control for other ALC883-targa quirks,
too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3d3792cb455d15881144e9dfba4c67eece260a69 11-Sep-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing model=auto entry for ALC269

Signed-off-by: Takashi Iwai <tiwai@suse.de>
33d78674586aeb6a623b1e612e6f92dd83015ed3 08-Sep-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use auto model for HP laptops with ALC268 codec

The HP laptops with ALC268 codec seem working better with model=auto
than model=toshiba; e.g. the auto model fixes missing digital outputs.
Let's fix quirk entry to choose auto model explicitly.

Tested-by: Jens Jorgensen <jbj1@ultraemail.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a65cc60f6349fe91539f736dad8fb2398488e431 05-Sep-2009 ddiaz@cenditel.gob.ve <ddiaz@cenditel.gob.ve> ALSA: hda/realtek: Added support for CLEVO M540R subsystem, 6 channel + digital

The model clevo-m540r was created with 6-channel and digital support. All
functions verified except spdif. Tested with a VIT D2000 laptop which has:

[lspci extract]
Audio device [0403]: Intel Corporation 82801H (ICH8 Family) HD Audio
Controller [8086:284b] (rev 03)
Subsystem: CLEVO/KAPOK Computer Device [1558:5409]

[/proc/asound/card0/codec\#0 header]
Codec: Realtek ALC883
Address: 0
Function Id: 0x1
Vendor Id: 0x10ec0883
Subsystem Id: 0x15585409
Revision Id: 0x100002

[Added a comment about HP mute and the model description by tiwai]

Signed-off-by: Dhionel Diaz <ddiaz@cenditel.gob.ve>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e9af4f365fee8065c0c1b2389fe10e540dd9d60a 29-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC268/ALC269 headphone pin routing

Fix the headphone pin routing of ALC268/ALC269 codecs. Using alc882
routine doesn't work because alc268/alc269 parser assumes the
independent DACs for both HP and speaker outputs. Need to assign the
DAC depending on the pin.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a3f730af7e33cea10ea66f05b2565fde1f9512df 31-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix MacBookPro 3,1/4,1 quirk with ALC889A

This patch fixes the wrong headphone output routing for MacBookPro 3,1/4,1
quirk with ALC889A codec, which caused the silent headphone output.
Also, this gives the individual Headphone and Speaker volume controls.

Reference: kernel bug#14078
http://bugzilla.kernel.org/show_bug.cgi?id=14078

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
fc86f95415d14c74fd71f5e70173a4def7da68f6 25-Aug-2009 Denis Kuplyakov <dener.kup@gmail.com> ALSA: hda - Add full audio support on Acer Aspire 7730G notebook

1) Added support of internal subwoofer (it sounds!!!)
2) Auto muting front speakers and internal subwoofer on headphones plug.
3) Internal mic works.
4) 3 channel mods (jack maps):
black pink blue
2ch: front ext mic line in
4ch: front ext mic surround
6ch: front CLFE surround
Can be changed in mixer.
5) Sound can be recorded from:
Internal mic
Ext mic
Cd
Line in
6) 2 separate capture channels.

Signed-off-by: Denis Kuplyakov <dener.kup@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0d884cb936e8e36c47bc7ee86eb6750261bd5438 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve auto-cfg mixer name for ALC662

The last patch in this series is for ALC662; pretty similar as the
previous patch for ALC861-VD.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a4fcd491098603356e7600b021bdb6acbb53adb4 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve auto-cfg mixer name for ALC861-VD

One more patch to give a better name for the primary output controls,
this time for ALC861-VD codec. The change is simple, just checking the
pin connection whether it's a speaker-out. When both speaker and HP
are assigned, we name the volume as "PCM" as this influences on both
outputs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c3fc1f502a1f1a751c891d3b757a24dc76943539 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve auto-cfg mixer name for ALC262

Similar improvements for ALC262 codec like previous two commits:
assign a better name, either Master or Speaker, for the primary output
controls.

However, in the case of ALC262 codec, the necessary changes are larger
than others because we need to check the possibility of different mixer
amps depending on the pins. The pin 0x16 is mono, and bound with the
dedicated mixer 0x0e while other pins are bound with 0x0c. Thus, there
are two possible volumes.

When only one of them is used, we can name it as "Master". OTOH, when
both are used at the same time, they have to be named uniquely.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
23112d6d2d9b265c959ecb671366c7c3b9c83611 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve auto-cfg mixer name for ALC260

Instead of fixed "Front" mixer name, try to assign a better name, e.g.
"Master" or "Speaker" fot the primary output volume controls of ALC260
codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cb162b6bf2f445d67a45f5485d4ce32addaf8fe0 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve auto-cfg mixer name for ALC880

When there is only one DAC is used for ALC880, try to assign a better
name, either Speaker or Front, depending on the output pin type.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
05f5f477082f0b192dab5ac25ccc5d468d98ecbd 25-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Generalize input pin parsing in patch_realtek.c

Provide a standard parser for input pins to create the input mixer
and input source controls instead of having a difference one for each
Realtek codec. The new helper parses the codec connections dynamically
isntead of fixed indicies.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9d0b71b1cf7b7ff856d200841de3f3d7c64eb170 24-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Reuse ALC268 parser for ALC269

Reuse a part of the code of ALC268 parser for ALC269.
This will change the default output volume either to Front or Speaker
depending on the pin configuration.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3abf2f3639959e4f53f209f93cd4d93fe9356de1 19-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix probe of Toshiba laptops with ALC268 codec

There are many variants of Toshiba laptops with ALC268 codec, and
it seems that a few of them don't work with model=toshiba preset
since they have the secondary ALC268 codec just for HDMI output.
This is a regression due to the previous clean-up work to merge all
Toshiba quirk entries into a single check.

This patch adds the identification of such laptops to apply the
standard BIOS-probing method. Unfortunately, Toshiba laptops have
all the same PCI SSID, so we need to check the codec SSID to identify
each device.

Tested-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fdbc66266c21976027938642f60e0f047149a61a 19-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix invalid capture mixers with some ALC268 models

The auto-mic clean-up patches caused regressions on some ALC268 models
that have no proper input_mux but with "Input Source" mixer elements.
Such a combination results in Oops when accessed.

[A reason why set_capture_mixer() isn't used in patch_alc268() is that
ALC268 codec have HDA_OUTPUT direction for capture volumes unlike other
codecs. Thus it needs own definitions of capture elements.]

This patch fixes the issues:
- Add a capture mixer definition without input-source
- Use the new capture mixer appropriately

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5908589f318835f515bf94829650d36dcb2d9024 12-Aug-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - fix noise issue when recording from digital mic with alc268

With auto config model of alc268 realtek codec, it allows to select any
of possible available digital microphone inputs when only one is
available. For example, when only digital mic in nid 0x12 is available,
on second input source it will allow you to select unavailable digital
mic in nid 0x13. The problem is that selecting unavailable digital mic
creates a source of noise when recording (I'm not sure if this happens
on all machines with alc268 and only one digital mic input, but testing
on a quanta uw1 netbook a lot of noise is introduced in recording from
digital mic 0x12/first input source, when you select the unavailable
digital mic 0x13 for capture source 0x24 in the second input source in
mixer).

Then to avoid noise when recording from digital mic with auto model in
this case, prevent a digital mic input source to be selected if
microphone is not available.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4f5d17062085ee1c74ff44a37ffb09f94ab4db1c 11-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up init and setup hooks for Realtek codecs

Move static codes to setup from init_hook for each model.

Also, use the common auto-mic selection helper for devices that support
auto-mic selection. They just need to set up ext_mic, int_mic and
auto_mic flag in the setup section.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e9c364c04f59f7fb250f9689198eaa59872cf8af 11-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add setup hook to ALC preset struct

Added setup hook to ALC preset struct to be called at in the parser
but not at each init callback.
This can be used for setting up the static pins, etc, while the
init hook should be used for updating the status again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b59bdf3b0ca11bfc6a539012431d751deaa65b32 11-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Check connectivity for auto-mic of Realtek codecs

Some Realtek codecs don't provide the full connections for certain pins
from each ADC; e.g. ACL662/ALC272 gives only one of two digital-mic pins
for each ADC. Thus, depending on the digital mic pin, the ADC/MUX to be
used has to be chosen properly.

This patch adds the check of the connectivity of pins at auto-mic mode.
If no proper connectivity is found, auto_mic flag is turned off to be
sure.

Also the mux_idx is determined during this check so it won't be checked
in the unsol event any more.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dd704698f56c1451fc9c5daadcd6e3a089de2c40 11-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't override ADC definitions for ALC codecs

ALC269 and ALC861-VD parsers override the ADC definitions
unconditionally without checking the spec definition. This causes
the problem when any inconsistent ADC is set up in the device quirk
(like ALC272 with digital-mic).

This patch avoids the overriding by adding the proper checks.

Reference: Novell bnc#529467
https://bugzilla.novell.com/show_bug.cgi?id=529467

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2a22d3f81283253ab9dae9244f3ca58a5ac66b36 10-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use only one capture stream for auto-mic

When the auto-mic feature is enabled, we should support only one
capture stream.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6c8194922739138f046a4d0924519dd43b48e1f3 10-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add auto-mic support for Realtek codecs

Added the support for automatic mic selection via plugging for
Realtek codecs (in auto-probing mode). The auto-mic mode is enabled
only when one internal mic and one external mic are present.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
100d5eb36ba20dc0b99a17ea2b9800c567bfc3d1 10-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing vmaster initialization for ALC269

Without the initialization of vmaster NID, the dB information got
confused for ALC269 codec.

Reference: Novell bnc#527361
https://bugzilla.novell.com/show_bug.cgi?id=527361

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
4b35d2ca2307d40ccb6b3b6f9cc25ac9178b2a6c 02-Aug-2009 Roel Kluin <roel.kluin@gmail.com> ALSA: hda - Read buffer overflow

Check whether index is within bounds before testing the element.

Signed-off-by: Roel Kluin <roel.kluin@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ce577e8cf5ddb4216553c9d563a9835d6de70ffa 03-Aug-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix quirk for Toshiba Satellite A135-S4527

Use model=lenovo instead of model=dallas for Toshiba Satellite A135-S4527
with ALC861-VD codec.

Reference: Novell bnc#526325
https://bugzilla.novell.com/show_bug.cgi?id=526325

Signed-off-by: Takashi Iwai <tiwai@suse.de>
aa563af763373a7e67a7b8fdb427d2a2fcbeab3b 31-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Increase PCM stream name buf in patch_realtek.c

The name buf with size 16 is too short for some codec names, e.g.
truncated like "ALC861-VD Analo". Now the size is doubled.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6732bd0d15893d20359396309adc238e0af10b58 30-Jul-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda: add HP automute support to Intel ALC889/ALC889A models

It auto mutes all 8-channel outputs at rear panel when
the front panel headphone is connected.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
dd7714c92248943b778e8199c7dec7ef859dcac2 30-Jul-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda: add 2-channel mode to Intel ALC889/ALC889A models

This 2-channel mode is useful in that it will broadcast
a 2-channel audio stream to all front/side/... ports.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9a11f1aa8e14798037d0c9ac134696fa3af6eb2a 28-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Reword information messages for BIOS auto-probing mode

The sentense "Unknown model for xxx, ..." makes people too nervous
and drives them to a direction to a wrong "fix" by giving any
mismatching model option.

Let's rephrase the messages to be more nice and easy (at least that
won't make people suspect conspiracies).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a22d543a95e82e5ad0ee1a44aad54fd6b6bf52a8 27-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Introduce get_wcaps_type() macro

Add a helper macro to retrieve the widget type from wiget cap bits.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8de56b7deb2534a586839eda52843c1dae680dc5 24-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix mute control with some ALC262 models

The master mute switch is wrongly implemented as checking the pointer
instead of its value, thus it can be never muted. This patch fixes
the issue.

Reference: Novell bnc#404873
https://bugzilla.novell.com/show_bug.cgi?id=404873

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
87a8c3702e40028468a2d0ef6dab7627dab60c86 23-Jul-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda - Add better Intel IbexPeak platform support

Here are the new sound enabling patches for IbexPeak.

Summary of tested features:

- playback
- Front Headphone: OK
- 8 channel audio: Front/Rear/CLFE/Side all OK

- recording
- Front Mic/Rear Mic: both OK
(front/rear/line mics are selectable in the "Input source" alsamixer control)
- Line In: not working
(in 6ch mode, its amp/mute, direction and route all looks fine,
so I'm a little puzzled)
(hopefully no one will care this feature)

- digital SPDIF input/output: not tested (no equipment)

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
16a433d8b38720a816736d59a62e705c19e31600 22-Jul-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda-intel: Cleanups for widget connection list handling

This patch adds a check to snd_hda_get_connections() routine for
presence of AC_WCAP_CONN_LIST. Also, make sure that negative error
codes from noted route are handled on all places as errors.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
1c20930a41c623a2281e754f9321cd0feb01ceb9 22-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC861 auto-mode parser

Fix the logic of ALC861 auto-mode parser for the outputs.
Instead of assuming the fixed DAC list, parse the conection and assign
the DAC dynamically.

Also, unmute the unused output connections to avoid noises on inputs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3f3b7c1aed70fa25c6811f830c5fb1a7054681ae 17-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC268 parser for mono speaker

- Parse the mono output pin 0x16 correctly even as the primary output
- Create "Speaker" volume control if the primary output is a speaker
- Fix the wrong direction of (optional) "Mono" switch

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9d30937accf2c01e8b0bd59787409a7348cbbcb7 10-Jul-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda_intel: more strict alc880_parse_auto_config dig_nid checking

On some IbexPeak systems with ALC889A errors like "azx_get_response
timeout, switching to polling mode: last cmd=0xaf9f000b" are produced,
because non-existent codec #10 is wrongly accessed.

The problem is that snd_hda_get_connections() returns out-of-range result
for NID 0x1c (something like 0xf8f9 or 0xffff).

This patch adds a check to alc880_parse_auto_config() to avoid using
of this out-of-range NIDs. A better fix maybe to improve
snd_hda_get_connections() routine to check for valid NID ranges if
NIDs are expected as result.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
31909b83ea5b4035ce129bb0df622ec2d2fb3e96 10-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix the merge error

Fix the merge error at the commit 305355aad89f1b7eb27cb210fad2f9d3c67b2572,
an addition of the missing alc880_gpio3_init_verbs to ALC882_TARGA model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
005b10769c05fb16db70f7689ffb5ba17e3fc324 09-Jul-2009 David Heidelberger <d.okias@gmail.com> ALSA: hda - targa and targa-2ch fix

Simplify ALC882_TARGA and return gpio3 to ALC883_TARGA_DIG and
ALC883_TARGA_2ch_DIG, which I accidentally removed in commit id
64a8be74357477558183b43156c5536b642de134

Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
508f711090e06477081fd94cb9298b1b14dda9ff 08-Jul-2009 Darren Salt <linux@youmustbejoking.demon.co.uk> ALSA: hda - Missing volume controls for Intel HDA (ALC269/EeePC)

There is a regression, introduced in aa202455eec51699e44f658530728162cefa1307
(in alsa-kernel) which I noticed when trying to use the headphone socket on
my EeeCPC 901: the output was *very* quiet, practically silent.

This patch corrects the control types to that which was obviously intended in
the referenced commit.

Signed-off-by: Darren Salt <linux@youmustbejoking.demon.co.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b1e4422f96a9b4830ffd8119b05211abb830ef4a 08-Jul-2009 William Weston <weston@sysex.net> ALSA: hda - Add quirks for RTL888 & RV630/M76 based MSI GX710

Signed-off-by: William Weston <weston@sysex.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
aa202455eec51699e44f658530728162cefa1307 03-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Improve ASUS eeePC 1000 mixer

The mixer elements created for ASUS eeePC 1000 with ALC269 aren't
standard but strange words like "LineOut". Rename the element names
to follow the standard one like "Headphone" and "Speaker".
Also, split the volumes to each so that the virtual master can control
them.

The alc269_fujitsu_mixer is removed because it's now identical with
the new eeepc mixer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8ab9e0af6d7709a781b60a51711ddf1d43bd22bb 03-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Manually expand alc882_init_verbs

Instead of expanding alc882_init_verbs to two elements via a macro,
manually expand to each entry. This makes clear that some have already
the full slot for init_verbs array (currently 5).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cb6381225a8064b0911dced3eb10f00bd5520c85 03-Jul-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing mixer amp initialization for ALC882

After merting patch_alc882() and patch_alc883(), the initialization of
mixer amp 0x0b was missing in alc882_base_init_verbs[].
This is usually no critical problem, but it can disable the power-saving
as the default state, so better to put to mute these channels.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0d971c9fcf06d22663040570c3cfe08b137c4b2f 30-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix input pinctl for ALC882 auto mode

alc882_auto_init_analog_input() sets the input pins to VREF-80 regardless
of the input pin types although it shouldn't be for line-in pins.

This patch fixes the behavior to follow other codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4953550a6ca399b644ef057626617465d8be9a7b 30-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Merge patch_alc882() and patch_alc883()

Merge patch_alc882() and patch_alc883() to the former one since both
codecs have fairly similar connections but just a slight difference.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1d955ebd4db7961dc4e772a23288b3d5c6f191be 29-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing initializations for ALC268 and ALC269

During the changes to clean up / fix the realtek codec initialization
routines in commit 4a79ba34cada6a5a4ee86ed53aa8a73ba1e6fc51,
I forgot to add the check for ALC268 and ALC269.
This resulted in the missing EAPD and COEF setup for these codecs.

This patch adds the missing checks for these codecs.

Reference: bko#13633
http://bugzilla.kernel.org/show_bug.cgi?id=13633

Signed-off-by: Takashi Iwai <tiwai@suse.de>
684a88429c5ab04d8b1894de9a1ef62de6f601b7 26-Jun-2009 Tony Vroon <tony@linx.net> ALSA: hda - Line In for Acer Inspire 6530G model

The Line In connector is set up as PIN_IN by default, using
VREF_HIZ. It is connected to both ADCs, so add it to both
input selectors.
Also add the ability to use the input mix (on a SoundBlaster
one would call this "What You Hear").

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
dde6535686aa4e78e8b85850d1f3fccd8a581622 25-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use model=acer-aspire-6530g for Acer Aspire 6930G

For Acer Aspire 6930G (1025:015e), acre-aspire-6530g model matches
obviously better.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
320d592001acbfd76bf856b5370319f144285489 25-Jun-2009 Emilio López <buhitoescolar@gmail.com> ALSA: hda - Fix acer-aspire-6530g model quirk

Fix the following bugs of acer-aspire-6530g model with ALC888:
- HP jack to mute all speaker outputs including LFE
- Make digital built-in mic working

Signed-off-by: Emilio López <buhitoescolar@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
261c2407401ca26fa17f05667ea68f51e12c5303 25-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add pin-sense trigger when needed for Realtek codecs

Realtek codecs require the pin-sense trigger call before actually
reading the pin-sense. Without this, the pin-detection might not be
done accurately.

This patch adds the pin-capability check and issues the trigger call
if required.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8c927b4acf819ed0170bff991bc9eaec4c85deb8 22-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add digital-mic support to ALC262 auto model

Add the digital-mic support with ALC262 auto model.
The new ALC262 models have the digital mic at NID 0x12. This widget
isn't checked in the current alc262_auto_create_analog_input_ctls()
since it's under 0x18. So, just reuse the routine for alc269 to fix
the behavior.

But, it doesn't suffice: the digital mic is supported only with the
ADC0, we have to exclude other ADCs when d-mic is detected.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0169b6b33b2b4d9e66e98afc56272e5fbd350df4 22-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix check of input source type for realtek codecs

Fix the check of the input-source type by checking the widget type of
each capture-source item. Since some codecs can have both the mixer
and selector types depending on the ADC, alc_mux_enum_put() needs to
check each widget.

With this change, spec->capture_style gets unneeded, so it's removed,
too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
376b508ffde3b17e105265f89b83bdb044b1c1ae 22-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Sony VAIO Z21MN

It needs model=toshiba-s06 to work with the digital-mic.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
ae14ef68e8e67ca5b8b29f0eb640f7c106617f4e 22-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Get back Input Source for ALC262 toshiba-s06 model

The commit f9e336f65b666b8f1764d17e9b7c21c90748a37e
ALSA: hda - Unify capture mixer creation in realtek codes
removed the "Input Source" mixer element creation for toshiba-s06 model
because it contains a digital-mic input.

This patch take the control back.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
b1a914690c581f8f88b897d83a79b1c6eaf494c9 21-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add model=6530g option

Add the new model string corresponding to the previous Acer Aspire
6530G support.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d2fd4b09c07ae0c5ac288c0da6100c26ba9db15b 21-Jun-2009 Tony Vroon <tony@linx.net> ALSA: hda - Acer Inspire 6530G model for Realtek ALC888

The selected 4930G model seemed to keep the subwoofer 'tuba'
function from operating correctly. Removing the existing PCI
ID match made this work again, but it was mapped to 'Side'
instead of to LFE as one would expect.
This attempts to enable all functionality and keep the amount
of available mixer sliders low. Any slider that had no audible
effect on the output audio has been removed, and as such EAPD
is not currently enabled.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
def319f9e937f7a6a29718d3e2826c6c32f33245 16-Jun-2009 Sasha Alexandr <brina_keith@ns.sympatico.ca> ALSA: HDA - Correct trivial typos in comments.

Correct some trivial typos in comments.

Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c259249f7d7a6e534f3bafe046929fee236eebfa 16-Jun-2009 Sasha Alexandr <brina_keith@ns.sympatico.ca> ALSA: HDA - Name-fixes in code (tagra/targa)

Correct some cut+paste typos from 'tagra' to 'targa'.

Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
df01b8af5627b7e28c087559cbce4f359ce07c49 16-Jun-2009 Sasha Alexandr <brina_keith@ns.sympatico.ca> ALSA: HDA - Add pci-quirk for MSI MS-7350 motherboard.

Add pci-quirk for MSI MS-7350 motherboard with Realtek ALC888.

Signed-off-by: Sasha Alexandr <brina_keith@ns.sympatico.ca>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e46b0c8c08cd97eb8f9a523986908add3ece0cc6 13-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Acer Aspire 6935G

Added model=acer-aspire-8930g for Acer Aspire 6935G (1025:0146).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f03ecf50534a81b06544c58a713076d59d54baf9 08-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix the previous tagra-8ch patch

- Fix a typo in the patch
- Adapted to follow the recent change for unsol event handling

Signed-off-by: Takashi Iwai <tiwai@suse.de>
64a8be74357477558183b43156c5536b642de134 08-Jun-2009 David Heidelberger <d.okias@gmail.com> ALSA: hda - Add 7.1 support for MSI GX620

Added 7.1 support for MSI GX620 and jack quirk.

Reference: kernel bug#13430
http://bugzilla.kernel.org/show_bug.cgi?id=13430

Signed-off-by: David Heidelberger <d.okias@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3e1647c5b54a91a7182e121cfe569e6f0bf167ec 05-Jun-2009 Guido Günther <agx@sigxcpu.org> ALSA: support Sony Vaio TT

with BIOS probing only we offer a non functional headphone swith and
volume slider.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
018df41861475595a51d327b83fb5830462f7a53 04-Jun-2009 Hector Martin <hector@marcansoft.com> ALSA: hda - More Aspire 8930G fixes

Enable all three capture channels, including the missing nid 7 which is
the only one capable of capturing DMIC input

Enable Headphone amp for the HP jack. This causes a volume boost for
headphones, but does not cause any noticeable effect for light loads
like other amps, so there is no need to make it configurable.

Add Input Mix capture mux setting to capture the output of the playback
input mux (that is, what goes out the speakers except for PCM)

Hack another coef register because the stereo DMIC for some reason
produces a nonstandard sum/difference signal. I found a bit to make it
just use the sum signal for both channels, which makes it behave like a
standard mono microphone. The stereo is useless anyway (they're 1cm apart).

Tested working: Three capture channels, mic in, line in, DMIC.

Tested not working: CD. Not sure why, might be unconnected in the actual
hardware or a CD drive issue.

Also looked at SPDIF. It appears to work (emitter lights up inside the
HP out jack) but I lack a proper miniTOSLINK cable to test it.

Signed-off-by: Hector Martin <hector@marcansoft.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3b315d70b094e8b439358756a9084438fd7a71c2 02-Jun-2009 Hector Martin <hector@marcansoft.com> ALSA: hda - Acer Aspire 8930G support

Short story: this laptop has 5.1 built-in speakers which you *really*
want to use (the not-so-"sub" woofer is what makes the audio above
average for a laptop), so 6-channel support is important (plus a decent
asound.conf to upmix stereo). It also has the 3 typical jacks that ought
to have a selectable mode. And it's based on ALC889, which sucks.

Rationale/explanations:

The const_channel_count stuff was added because, for a laptop like this,
you always have 6 channels available (internal speakers) but still need
to set the mode for the 3 external jacks. Therefore, the device always
needs to be in 6-channel mode but there still needs to be a mixer
control for the jack mode. You could use line/mic-in at the same time as
the 6 internal speakers, for example. You might be tempted to make it
even smarter by dynamically switching the max channel count when
headphones are plugged in (therefore muting the internal speakers and
reducing the physical channel count to the jack channel mode), but as a
user I consider this to be harmful because I want the audio to blow up
to 6 channels / upmixed as soon as I unplug the headphones, and having
opened the device while in 2-channel mode would prevent this from
working (and always making 6-channel mode available doesn't do any harm).

The hardware needs EAPD turned on and the DACs routed to the internal
speaker pins, so the patch adds those verbs.

The ALC889 CLFE and subsequent (side/aux, here unused) DACs do NOT work
by default, at least here. I wasted much time trying to talk to
Realtek/pshou about this, but they just kept sending me useless updates
to patch_realtek.c that did nothing relevant. In the end I gave up and
brute forced the issue by trying to flip every bit in the proprietary
coefficient registers, and eventually found the two magic registers that
need to be cleared to enable all DACs. I have only heard Acer users
complain, but that might be because ALC889 is pretty new and using 5.1
(and noticing the missing center/lfe channels) might not be that common.
If this is a generalized issue with all ALC889 systems then those verbs
should probably be moved to a common verb array.

The internal mic is untested and probably doesn't work.

These settings will probably work for other Acer Gemstone laptops with
the same 5.1 speaker config. When identified, those should be added to
the PCI subsystem ID list.

Signed-off-by: Hector Martin <hector@marcansoft.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
8871e5b91518a47284b6bc2603b44dbc79c85446 02-Jun-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Reorder and clean-up ALC268 quirk table

Rearrange alc268_cfg_tbl[] in the order of vendor id, and group some
entries using SND_PCI_QUIRK_MASK().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d22142aa1b23d64d01f87a94b5756ff6cbd1022f 01-Jun-2009 Ozan Çağlayan <ozan@pardus.org.tr> ALSA: hda - fix audio on LG R510

Currently, LG R510 is only able to produce sound on headphones, the
internal speakers are not working.

The user tested and confirmed that with model=Dell headphones,
internal speakers and the microphone are working flawlessly.

Tested-by: Serdar Soytetir <tulliana@gmail.com>
Signed-off-by: Ozan Çağlayan <ozan@pardus.org.tr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
92b9de8342c6ad0d930333851190ed25b88b190c 02-Jun-2009 Kacper Szczesniak <kacper@qwe.pl> ALSA: hda - Macbook[Pro] 5 6ch support

this is a patch against current snapshot that adds:
6 channels support for the MB5 model

Signed-off-by: Kacper Szczesniak <kacper@qwe.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0e4835c198e7dd9d814de25a17a1d6682107c394 25-May-2009 Jaroslav Kysela <perex@perex.cz> ALSA: hda-intel: improve initialization for ALC262_HP_BPC model

Fix issues for 3 generations of HP workstations.

The modest modifications do the following:
1. Change the second MIC from device 3 to device 1
2. Init the "boost" values to "0" by default

From: John Brown <john.brown3@hp.com>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
461c6c3a0a23a8fac1a4b636e93ff5dfe599a241 25-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing check of pin vref 50 and others in Realtek codecs

Some Realtek codecs like ALC861 seem to support only VREF50 while the
current driver assumes it's only VREF80. Check other VREF bits to set
the correct value.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
87488957a68293357a94c8142de7d0ae17914912 22-May-2009 Adam Williamson <awilliam@redhat.com> ALSA: hda - fix audio on HP TX25xx series notebooks

Fixes https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4121

Taken from https://bugzilla.redhat.com/show_bug.cgi?id=498060

Signed-off-by: Adam Williamson <awilliam@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
eb4c41d30ba1f973c8b10be3644571ab997ae0d6 18-May-2009 Torben Schulz <public@letorbi.de> ALSA: hda - Improved MacBook 3,1 support

This patch adds support for MacBook 3,1 sound by adding a model new
"mb31" with the appropriate init verbs, mixers and channel modes to
the ALC883 configuration. patch_alc882() and patch_alc883() are
modified to handle the MacBook 3,1 sound-chip (Realtek ALC889A)
correctly.

Signed-off-by: Torben Schulz <public@letorbi.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6c627f3978bf3059d45713e2e1240b7c43cc85f5 18-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Show the actual chip name in 'unkown model' messages

Show the actual chip name in 'unknown model..' info messages for
Realtek codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
812a2cca295ee7f56cd1b988a0f93646285c214a 16-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Split codec->name to vendor and chip name strings

Split the name string in hda_codec struct to vendor_name and chip_name
strings to be stored directly from the preset name.
Since mostly only the chip name is referred in many patch_*.c, this
results in the reduction of many codes in the end.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7442f9dadb8626bd9e7e01445560499560b99f5d 14-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a quirk entry for Macbook Pro 5,1

Added the codec SSID for MacBook Pro 5,1 as compatible as MP51.
However, the headphone auto-muting function doesn't work. So,
this is just a tentative solution.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
22b530e0287724f00dde9a15a94d408c3334e86c 13-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Disable fallback to model=acer for Acer laptops

The model=acer for ALC883/889 doesn't work well for the recent Acer
Aspire laptops. Since model=auto works better nowadays, it's safer
to use the default fallback instead of the Acer specific one.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9541ba1d665542c96f7c0b5b836bbc1fd9d961b6 12-May-2009 Chris Pockelé <chris.pockele.f1@gmail.com> ALSA: hda - Add support of Samsung NC10 mini notebook

Add specific configuration for Samsung NC10 mini notebook. Internal
mic/speakers will be correctly muted when plugging in external ones.
Mixer controls are added for speakers, headphones and PC beep.
"Boost" is added for the microphones.

Signed-off-by: Chris Pockelé <chris.pockele.f1@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
01f2bd48d08c6bbde12d86b66c760612e33e49a9 11-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing models for Realtek codecs

Added the missing descriptions and the model names for Realtek codecs
to the documentation and the config table.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a9fd4f3fcdc7e5757424f7e5888f660cf34bb1a9 08-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up Realtek auto-mute unsol routines

Most of unsol handlers defined in patch_realtek.c can be classified to
two types, mute via amp of pins and mute via ctl bits of pins.
Thus there are a big room to generalize each implementation.

This patch creates two generic functions, alc_automute_amp() and
alc_automute_pin(). The latter is actually changed from the previous
alc_sku_automute(). Each caller needs to initialize hp_pins and
speaker_pins properly at own init_hook.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b72519b518211ecb7c4c7b5e660ac6235ca7d1b7 08-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up for ALC262 HP model auto-mute functions

Just clean up, no functional changes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
42171c17f267d7fdc5167ad7b6b5fb9edfd04186 08-May-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix and clean up hippo-compat HP auto-muting

The speaker auto-muting per HP plugging for ALC262 HIPPO and compatible
devices is slightly buggy as the "Master" or "Front" mixer control can
still toggle the speaker output even if the headphone is plugged.

This patch fixes the issue, and clean up the hippo-related codes
together with fixes of some inconsistent mixer names.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
41d5545d23d2ccf4d34725094dccebd37f15c1c4 07-May-2009 Kacper Szczesniak <kacper@qwe.pl> ALSA: hda - Add support for MacBook 5.1 (Aluminium)

Signed-off-by: Kacper Szczesniak <kacper@qwe.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cb6605c1e4d2a2eaffdde433fbfe1567ca688458 28-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix a typo in patch_realtek.c again

The commmit dfed0ef9b3ff9e37903920b6938ed33344ad0b3d was reverted
accidentally by the merge of auto-detection fix patch.

Fixed again now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2a2ed0dfc9ec44a899c7d4672f73f2c045099118 28-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't enable auto-mute but for speakers in patch_realtek.c

Enable auto-muting in model=auto only for devices with HP and speakers.
For devices with HP and line-outs, don't enable the auto-muting.

Also, add a debug print to show the auto-mute feature.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4a79ba34cada6a5a4ee86ed53aa8a73ba1e6fc51 22-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add amp initialization for realtek auto mode

In the realtek auto-probing mode, the initialization of amp with
some magic COEF or EAPD verbs is applied only when the codec SSID
has valid values to satisfy the realtek's definition.
However, many devices don't provide in that way, thus the device
doesn't work as is.

This patch allows the same initialization code even if the SSID
doesn't pass the bit test. Also, alc_subsystem_id() is changed
just to check and define the type, so that it's called in the
parser, instead of the initializer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5bd3729f6818721f76a2a2f7d2ecad899bace340 21-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Packard Bell RS65

Added a quirk (model=m51va) for Packard Bell RS65 with ALC663.

Reference: Novell bnc#496787
https://bugzilla.novell.com/show_bug.cgi?id=496787

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dfed0ef9b3ff9e37903920b6938ed33344ad0b3d 21-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix a typo in debug print for realtek auto-detection

The NID and ASS numbers were swapped...

Signed-off-by: Takashi Iwai <tiwai@suse.de>
586be3fcf97eec22fbc0ef6d67e823706aea7167 24-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add debug prints for Realtek auto-init

Added a couple of debug prints to show the checked id numbers in
alc_subsystem_id().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
622e84cdff719b9dcd3f495ddb0afb54995799cc 21-Apr-2009 Kailang Yang <kailang@realtek.com> ALSA: hda - Add quirks for Realtek codecs

- Support ASUS F81Se F5Q P80 U20A U80 U50 UX50 for ALC269
- Support ASUS F70SL UX20 X58LE F50Z N80Vc N81Te N505Tp Vx3V N5051A
for ALC663
- Support DELL ZM1 for ALC272

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bb023080fe72f1f80648e9b60771d9a94ce75aca 21-Apr-2009 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix alc662_init_verbs

Don't unmute unneeded amps for input mixers of ALC662 & co.
It caused possible recording noises.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bfb53037c61ddf7c16a40297ad16f2bcbde534dc 14-Apr-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk mask for Fujitsu Amilo laptops with ALC883

Added the models for quirk bitmask 1734:110x and 1734:113x of
Fujitsu laptops.

This will fix the model detection for Amilo Xa3540.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f3cd3f5d341dc5218d0138a67945182e83174af9 02-Apr-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda - enable SPDIF output for Intel DX58SO board

ALC889 has two SPDIF outputs: 0x06, 0x10. Board vendors can use either or both.
DX58SO uses 0x10, but the driver assumes 0x06. The safe solution is to add
0x10 as slave output to the existing 0x06.

Reported-by: Jeroen Van Breedam <jeroen.vanbreedam@sgr5.be>
Tested-by: Jeroen Van Breedam <jeroen.vanbreedam@sgr5.be>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
9b6682ff4c69484b6955f89f7902e3dde2481bed 23-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Acer Ferrari 5000

Add a quirk model=acer-aspire for Acer Ferrari 5000 with ALC883 codec.
Note that model=auto doesn't work for this laptop because of broken BIOS
(that doesn't set the subsystem id properly).

Tested-by: Russ Dill <russ.dill@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a23b688f4d5c2490a50677b30011a677d8edf3d0 23-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't create empty/single-item input source

In patch_realtek.c, don't create empty or single-item "Input Source"
control elements that are simply superfluous.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e82c025b501a1ca62dec40989817dbb17c0b9167 23-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix the wrong pin-cap check in patch_realtek.c

The check for the amp-output must be done for widget-caps rather than
pin-caps as implemented in the recent change... Simply a thinko.

Also, add the similar checks to all places that put output-amp mutes
in the initialization.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1327a32b878b5ed2113c63557b6f4f949f821857 23-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Cache pin-cap values

Added snd_hda_query_pin_caps() to read and cache pin-cap values
to avoid too frequently issuing the same verbs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
52ca15b7c0c711eb37f5e4b769e8488e5c516d43 23-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Avoid output amp manipulation to digital mic pins

Don't set amp-out values to pins without PINCAP_OUT capability,
which are usually assigned for digital mics on ALC663/ALC272.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2d864c499a77129dc6aa4f7552ddf2885e4a9c47 20-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Detect digital-mic inputs on ALC663 / ALC272

Fix the detection of digital-mic inputs on ALC663 / ALC272 codecs
in the auto-detection mode. The automatic mic switch via plugging
isn't implemented yet, though.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b9591448e5160ccd353d8547ade018cfdf2b3e09 16-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC662 beep again

The previous commit breaks the (digital-) beep on ALC662.
ALC662 has the connection index 0x05 while ALC662 and ALC272 have the
index 0x04 for the beep widget.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b8dbed0f095263b9ced5bd2e6d54743a7fa13f1b 16-Mar-2009 Jaroslav Kysela <perex@perex.cz> ALSA: snd-hda-intel: Fix ALC662/ALC663 Beep Amplifier Index

ALC662/663 codecs have Beep Amplifier Index 0x04 not 0x05 in 0x0b NID.
Confirmed by testing on real hardware.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f03d3115a6bcb814019d945c50c2ef91e5f14477 05-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: Fix sample rate of Lenovo Ideapad to 44.1kHz

Noises can be heard on analog outputs of (some model of) Lenovo
Ideapad due to the hardware problem, and the only workaround right now
is to fix the sample rate to 44.1kHz.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
37db623ae2a7bde234a8ed683d0d13d6f939199c 05-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix check of ALC888S-VC in alc888_coef_init()

Fixed the wrong bits check to identify ALC888S-VC model in
alc888_coef_init().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7ec30f0e7768985ab2ef6334840e3fc8fa253421 04-Mar-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Map 3stack-hp model (ALC888) for HP Educ.ar

Added model=3stack-hp for HP Educ.ar desktop machine (103c:2a72).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
8718b700ccbcc3c6016d38a75e005293c3660f1c 04-Mar-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Add headphone automute support for 3stack-hp model (ALC888)

Mute speaker outputs on headphone insertion for machines that use
3stack-hp model.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3ea0d7cf472c6118bb8c0842d606f5436251e179 04-Mar-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Add 4 channel mode for 3stack-hp model (ALC888)

Add additional 4 channel mode for 3stack-hp models.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bd6afe3f34d41ed81e0c62a5a2181bb7bd51aebf 04-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix conflict of mixer controls on Sony VAIO VGN-AR71S

The recent update enabled the model=sony-assamd for all ALC262 with
PCI SSID 104d:90xx. But this includes the VAIO VGN-AR* that has the
primary codec of STAC92xx and the secondary ALC262 as a slave
digital-only codec. For this device, the model=auto must be chosen
to work properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
892981ffbe9a5c4cbc9d75f423b145f32c765f9c 02-Mar-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't create a beep control for digital-only ALC268

When an ALC268 codec is set up as the digital-only (as found in Toshiba
laptops), it shouldn't contain any beep control that conflict with the
primary codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c82c8abdeef53eb0bb0504becb4e91bbccceaee8 27-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix an "unused variable" compile warning

Forgot to remove an unused variable.
sound/pci/hda/patch_realtek.c: In function ‘alc882_auto_init_analog_input’:
sound/pci/hda/patch_realtek.c:7018: warning: unused variable ‘vref’

Signed-off-by: Takashi Iwai <tiwai@suse.de>
53eff7e1e0de1cde8e8cbe619f401d2578dde946 27-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Match all 103c:17xx devices for HP BPC model

Use SND_PCI_QUIRK_MASK() to match all devices with 103c:17xx for
HP BPC model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
bb543c969467f33c3a1a0ccfcfcd9a508cd81c54 27-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for new HP xw series

Added model=hp-bpc for new HP xw series (103c:170b).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
23f0c048ba59ad5c2f3fd85ed98360b631dbf6f8 26-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up the input pin setup in automatic mode

Clean up the input-pin setup in automatic mode in patch_realtek.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f872a9194cb006994d47a58efc875218594e6072 26-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up / fix quirk for Sony laptops with ALC262

Clean up / fix quirk entries for Sony laptops with ALC262 codec
using NSD_PCI_QUIRK_MASK().

This also fixes the kernel bug #12780
http://bugme.linux-foundation.org/show_bug.cgi?id=12780

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cc374c477c9bf95f409fed16426856d86a97394f 23-Feb-2009 Juan Jesus Garcia de Soria <skandalfo@gmail.com> ALSA: hda - Quirk for Acer Aspire 6530G

The Acer Aspire 6530G needs the 4930G "model" for the front mic to
work properly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2d4663816064fabb68935f920bbd7ccdc7f9392d 23-Feb-2009 Luke Yelavich <themuso@ubuntu.com> ALSA: hda - add another MacBook Pro 3,1 SSID

Reference: Ubuntu bug #33245
https://bugs.launchpad.net/bugs/332456

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cc95948972576c3efa43c9ed05b4a265805a4c54 22-Feb-2009 Michael Schwingen <michael@schwingen.org> ALSA: hda - add support for "Maxdata Favorit 100XS" (Intel HDA/ALC260)

Signed-off-by: Michael Schwingen <michael@schwingen.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0e8a21b59d48a63f45b3e6d2aca7fb91c5aec882 20-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove realtek codec-specific pin save/restore functions

Now it's done in the common code.
Also use the common access functions for pin defaults.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7e0e44d430281d398769f1d7864e161203252760 19-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add digital-only mode for ALC268

ALC268 can be configured as digital-only, e.g. for HDMI, on some
machines. Allow the parser to set up the digital-only mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ab9fec099b796b002b6996c4c5845167d8fe6dbd 19-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Avoid doubly beep attachment in patch_alc268()

Remove the doubly attachment in patch_alc268().
The input beep is attached conditionally only when needed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
07eba61dd68678e30b24b4776f59798f625e089d 19-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't enable beep for digital-only ALC262

When ALC262 codec is configured as digital-only, it's meaningless to
add the digital beep input.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b3bdb30b6d1989129e297641fec791e9e555e4d8 18-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Acer X3200

Acer X3200 needs model=auto, otherwise model=acer is pre-selected.

Reference: Novell bnc#476268
https://bugzilla.novell.com/show_bug.cgi?id=476268

Signed-off-by: Takashi Iwai <tiwai@suse.de>
6a05ac4afa90ac9c38fedd3f6940fe8da5d1fcf6 13-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Support multiple digital outs with auto-probing

Added the support of multiple digital outputs via auto-probing for
Realtek ALC88x codecs. The multiple outputs are handled as slave
streams, so only one PCM stream (and the corresponding IEC958*
elements) is provided to control both digital outputs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9b5f12e5a4029c1cd03784754687faef6d9e54fa 13-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add proper cleanup for multiout-dig for ALC codecs

The recent patch_realtek.c contains the slave digital-out support
as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
946835074e026f4bbe9f3c2b091dca6346bd1474 13-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Acer AX1700-U3700A

Force model=auto for Acer AX1700-U3700A with ALC888 codec.
Since Acer devices are handlded as model=acer as default, the auto
parsing has to be specified explicitly.
(Maybe it's better rather to remove this default model=acer handling,
though.)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0852d7a654f75d22a3c09fd7da4a3551bbb37740 11-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Detect multiple digital-out pins

Detect multiple digital-out pins in snd_hda_parse_pin_defconfig().
The dig_out_pin and dig_out_type fields become arrays.

The codec parser still doesn't use this multiple pins detection, though.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
44a678d04babaa751c0ee98e006ede9576fa9e00 10-Feb-2009 Mackenzie Morgan <macoafi@gmail.com> ALSA: hda - Add quirk for Asus z37e (1043:8284)

Added a quirk for Asus Z37E for fixing suspend/hibernation problem.

Reference:
https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/25896
http://launchpadlibrarian.net/17053575/0001-Add-quirk-for-ASUS-Z37E-to-make-sound-audible-afte.patch
https://bugtrack.alsa-project.org/alsa-bug/bug_view_page.php?bug_id=4282

Signed-off-by: Takashi Iwai <tiwai@suse.de>
22971e3a77f193579be525a12f3ab91dbf241517 10-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - add digital beep support for ALC268

Added the digital beep support for ALC268. It was missing in the
last patches.

However, ALC268 has a strange pin use for widget 0x1d, which could be
used as another purpose. So, the patch adds a check of the beep control
before creating the hook for input layer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dea0a5095b5e21306a81c496567043798fac7815 09-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Clean up quirk lists

Clean up quirk lists with bit masks.
Also, sorted in numerical order for alc662_cfg_tbl[].

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cfb9fb5517faa9e61c7e874fc89ef9c9253a0902 06-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix unused variable compile warning

sound/pci/hda/patch_realtek.c:12693: warning: unused variable ‘i’

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a4ddeba9c8896cba8c6ce7a98c0b5c755c15a746 06-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Remove superfluous code in patch_realtek.c

codec->spec is reset in the caller side.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
45bdd1c1bbac56876cb9c71649300013281e4b22 06-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Create beep mixer controls dynamically for Realtek codecs

Create beep mixer controls dynamically for Realtek codecs instead of
static arrays.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4a5a4c56b443a213fa9c2ad27984a8681a3d7087 06-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing COEF initialization for ALC887

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c6e8f2daadc6d61a32b7486a1058c8f1f9baa499 06-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing initialization for ALC272

ALC272 needs EAPD for speaker outputs as well as other similar ALC
codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b25c9da19889e33bb4ee2dff369fc46caa4543b0 06-Feb-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: enable concurrent digital outputs for ALC1200

Add the SPDIF pin as slave digital out to enable concurrent
HDMI/SPDIF outputs for ASUS M3A-H/HDMI with ALC1200 codec.

Tested-by: Thomas Schneider <nailstudio@gmx.net>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
939778aedd9386e13051a9e1d57c14cba2b6ae13 05-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add missing KERN_* prefix to printk

... and disable the annoying debug message.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f67d8176ba9a3dbc33454cd67057184b2ef5ee31 04-Feb-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for FSC Amilo Xi2550

Added model=fujisu-pi2515 for FSC Amilo Xi2550 with ALC883 codec.

Refernece: Novell bnc#450979
https://bugzilla.novell.com/show_bug.cgi?id=450979

Signed-off-by: Takashi Iwai <tiwai@suse.de>
680cd53652d8bfb2b97d8c0248d1afb82de6b61d 04-Feb-2009 Kusanagi Kouichi <slash@ma.neweb.ne.jp> ALSA: hda: Add digital beep generator support for Realtek codecs.

A digital beep generator can be used via input layer.

Signed-off-by: Kusanagi Kouichi <slash@ma.neweb.ne.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ba340e825f4b892782779abd0f93bcff7e763567 02-Feb-2009 Tony Vroon <chainsaw@gentoo.org> ALSA: hda - Add tyan model for Realtek ALC262

The Realtek ALC262 on the Tyan Thunder n6650W (S2915-E) mainboard has a
rather odd configuration template. As a result, the white AUX connector
can not be used. This rewrites the default config to more accurately
reflect the connector layout, colour and function.
Unfortunately the black CD_IN connector, which is suspected to be widget
0x1c refuses to switch into input (0x20), instead opting to remain on 0x0.
As such, no mixer controls are exposed for it. Autoswitching is implemented
between the front headphone output and back line output.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3077e44c48242bb5867b41586f23aa8f6921073a 31-Jan-2009 Mark Eggleston <mark_r_eggleston@yahoo.co.uk> ALSA: hda - Add support of iMac 24 Aluminium

Added the support for 24" Aluminium iMac (106b:3e00)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b98b7b347eed333d6fa2f74770beb8106e576cc6 29-Jan-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - make alc882_auto_init_input_src aware of selectors

In the case of having a selector instead of mixer while initing input
sources, the case that happens with ALC889, we must select instead
of muting input. Problem was found while testing with hda-emu.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
61b9b9b109217b2bfb128c3ca24d8f8c839a425f 28-Jan-2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Consider additional capture source/selector in ALC889

Currently code for capture source support in ALC889 only considers
capture mixers. This change adds additional support for ADC+selector
present in ALC889, taking into account also the presence of an
additional DMIC connection item in the selector.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2a88464ceb1bda2571f88902fd8068a6168e3f7b 28-Jan-2009 Luke Yelavich <themuso@ubuntu.com> ALSA: hda - add another MacBook Pro 4, 1 subsystem ID

Add another MacBook Pro 4,1 SSID (106b:3800). It seems that latter revisions,
(at least mine), have different IDs to earlier revisions.

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4cfb91c6d764b18e81bfb6e6779e07bcecbb197c 23-Jan-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix invalid amp init for ALC268 codec

Fix some invalid AMP initializations for ALC268 codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e64f14f4e570d6ec5bc88abac92a3a27150756d7 20-Jan-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Allow digital-only I/O on ALC262 codec

Some laptops like VAIO have multiple codecs and uses ALC262 only for
the SPIDF output without analog I/O. So far, the codec-parser assumes
the presence of analog I/O and returned an error for such a case.

This patch adds some hacks to allow the digital-only configuration for
ALC262.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8c441982fdc00f77b7aa609061c6411f47bcceda 20-Jan-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Assign proper digital I/O type for STAC/IDT

Assign the proper PCM digital I/O type (HDA_PCM_TYPE_*) for the digital
I/O on STAC/IDT codecs. HDA_PCM_TYPE_HDMI is assigned for the HDMI I/O.

A similar framework is implemented to patch_realtek.c, but it's not
set up and still using only HDA_PCM_TYPE_SPDIF yet.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2de686d227e8869547683de659d5419061c2c518 16-Jan-2009 Luke Yelavich <themuso@ubuntu.com> ALSA: hda - add quirks for some 82801H variants to use ALC883_MITAC

Add the 82801H variants 1071:8227 and 8086:2503 to use ALC883_MITAC

Reference: Ubuntu bug 210865
https://bugs.launchpad.net/bugs/210865

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3e420e78ece6f9d2accc1568e80dfd0501e13df1 15-Dec-2008 Luke Yelavich <themuso@ubuntu.com> ALSA: hda - Add automatic model setting for Samsung Q45

Have the Samsung Q45 (144d:c510) select ALC262_HIPPO by default

Reference: Ubuntu bug 200210
http://launchpad.net/bugs/200210

Signed-off-by: Luke Yelavich <themuso@ubuntu.com>
Cc: stable@kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4b558991049c12689e5fd645222864b8a80730f1 12-Jan-2009 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda - add support for Intel DX58SO board

The Intel DX58SO board works fine with model ALC883_3ST_6ch_INTEL.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5a9e02e94989323c2a7102e2fc80ee9102b19fa0 09-Jan-2009 Wu Fengguang <wfg@linux.intel.com> ALSA: hda - create hda_codec.control_mutex for kcontrol->private_value

Fix the following lockdep warning by not reusing the hda_codec.spdif_mutex.

ALSA sound/pci/hda/hda_codec.c:882: hda_codec_cleanup_stream: NID=0x2

=======================================================
[ INFO: possible circular locking dependency detected ]
2.6.28-next-20090102 #33
-------------------------------------------------------
mplayer/3151 is trying to acquire lock:
(&pcm->open_mutex){--..}, at: [<ffffffffa004ced3>] snd_pcm_release+0x43/0xd0 [snd_pcm]

but task is already holding lock:
(&mm->mmap_sem){----}, at: [<ffffffff810c0252>] sys_munmap+0x42/0x80

which lock already depends on the new lock.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
57d139278e6c246d78f71e4bf0e0d15bb0390646 08-Jan-2009 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Dell Inspiron Mini9

Added a quirk, model=dell, for Dell Inspiron Mini9 with ALC268 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a8e4f9ddea4a23705d4eea6afe4a01e1a57a0621 08-Jan-2009 Lukasz Wojnilowicz <lukasz.wojnilowicz@gmail.com> ALSA: hda - Add quirks for Acer Aspire 5930G and 6930G

This is a patch which adds correct auto detection of model for
snd-hda-intel for Acer Aspire 5930G and 6930G. Tested on my 5930G. It
finally adds hp jack sense and 5.1 speaker system sliders.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
06bf3e15f64aacfb068fed5002b6544f870cc638 01-Jan-2009 Chris Bagwell <chris@cnpbagwell.com> LSA: hda - Add HP Acacia detection

Add automatic mapping of HP Acacia motherboards to 3stack-hp. Allows
for greater then 2 channel audio by enabling Channel Mode option in mixer.

Motherboard specs:
http://h10025.www1.hp.com/ewfrf/wc/document?docname=c01321559&lc=en&dlc=en&cc=us&product=3829353&os=2093&lang=en#

Signed-off-by: Chris Bagwell <chris at cnpbagwell dot com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3fea2cb0451b9009af32d1418ea77cc674fe7e02 25-Dec-2008 Wu Fengguang <fengguang.wu@intel.com> ALSA: hda - fix name for ALC1200

Move the more specific preset for ALC1200 above the general one for
ALC888, so that it will have the chance to get matched and selected.

Reported-by: Thomas Schneider <nailstudio@gmx.net>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
57a5ef483b6290a9f22d4c52baca051c1e755f3a 28-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for Sony VAIO VGN-SR19XN

Added model=sony-assamd for Sony VAIO VGN-SR19XN with ALC262 codec.
Reference: Novell bnc#450080
https://bugzilla.novell.com/show_bug.cgi?id=450080

Signed-off-by: Takashi Iwai <tiwai@suse.de>
daead538e9d8efe61d7d2bd12993c8d961b0abd6 28-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add codec-specific proc hook

Added a hook for proc outputs of codec-specific stuff.

Moved realtek-specific coeff output into patch_realtek.c as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1289e9e8b42f973f2ab39e5f4f2239ff826c27e9 27-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Modularize HD-audio driver

Split the monolithc HD-audio driver into several pieces:
- snd-hda-intel HD-audio PCI controller driver; loaded via udev
- snd-hda-codec HD-audio codec bus driver
- snd-hda-codec-* Specific HD-audio codec drivers

When built as modules, snd-hda-codec (that is invoked by snd-hda-intel)
looks up the codec vendor ID and loads the corresponding codec module
automatically via request_module().

When built in a kernel, each codec drivers are statically hooked up
before probing the PCI.

This patch adds appropriate EXPORT_SYMBOL_GPL()'s and the module
information for each driver, and driver-linking codes between
codec-bus and codec drivers.

TODO:
- Avoid EXPORT_SYMBOL*() when built-in kernel
- Restore __devinit appropriately depending on the condition

Signed-off-by: Takashi Iwai <tiwai@suse.de>
30d72e9f614e7bd76e28d4d92bd54d90a96905bb 27-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix creation of automatic capture mixers

Fixed a wrong boundary check of num_adc_nids in set_capture_mixer()
in patch_realtek.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ee09543c866559e1ffb4f5c38533f2bedd725acd 25-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add quirk for MSI 7260 mobo

Added preset model=targa-dig for MSI 7260 mobo.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ef8ef5fb1027b56f867d4b913cf52bfdc610d2a7 23-Nov-2008 Vincent Petry <PVince81@yahoo.fr> ALSA: hda: Added an ALC888 model entry for Fujitsu-Siemens Amilo Xa3530

This patch fixes the bug 0004240: ALC888 - Intel HDA - Headphone Controlling.
It is made against the 2008-11-23 snapshot.

Added Realtek ALC888 model entry for the Fujitsu-Siemens Amilo Xa3530
laptop. It has 4 jacks: HP out, Mic-in, Line-in and Line-out/Side/SPDIF
(this one is on the laptop side, the other ones are on the rear).

Model detection works.
Headphone jack sense works now.
Front mic works now, was same as Acer Aspire 4930G.
Added channel mode from 2 to 8 channels.

In 2ch and 4ch modes, the front is also sent to the Line-out/side jack
for convenience instead of just muting the Line-out/side jack like other
models do.

When using the Mic-in jack as CLFE, the sound is very low (bug?). To
work it around, in 6ch mode the CLFE channel is duplicated to the
Line-out/side jack because this one has a better amp.

Cc: manu@frogged.de
Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5b2d1ecac2a79b9438aed731557b8912564cedfd 18-Nov-2008 Vincent Petry <PVince81@yahoo.fr> ALSA: hda: Added Realtek ALC888 model entry for Acer Aspire 4930G laptop

Added Realtek ALC888 model entry for the Acer Aspire 4930G laptop that
fixes the following features:
- internal microphone
- heaphone jack sense
- channel mode

Signed-off-by: Vincent Petry <PVince81@yahoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cd896c331dd442c43cd9e23de3f1a4f3c111c292 18-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Allow multiple imux for matrix-type mixers of ALC codecs

Allow the multiple imux instances for matrix-type mixers like ALC882.
So far, only ALC260 used this feature, but other codecs may need a
similar stuff.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3ab909351a3c653a879a35b3342979ac483c0460 17-Nov-2008 Wu Fengguang <wfg@linux.intel.com> ALSA: hda: alc883 model for ASUS P5Q-EM boards

Add a new alc883 model ALC1200_ASUS_P5Q for ASUS P5Q-EM boards.
It is the same as ALC883_6ST_DIG except that the SPDIF digital
output nid is 0x10.

Tested-by: Andrei Tanas <andrei@tanas.ca>
Signed-off-by: Wu Fengguang <wfg@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
30cde0aacc5f6786b0c4d4fafaac95eac845b8d7 07-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC260 hp3013 master switch

The master switch doesn't influence on NID 0x15, the headphone jack
on HP 3013 model because alc260_hp_master_update() ignores the passed
arguments.

Also, corrected the wrong arguments of hp3013 (0x10 and 0x15) although
this doesn't change any behavior.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
64154835c58a99370c3b7fbf85d2451d6906b3b4 06-Nov-2008 Tony Vroon <tony@linx.net> ALSA: hda - Add lifebook model for Realtek ALC269

The widget layout of the Fujitsu Lifebook S6420 (which is ICH9M-based
and uses an ALC269) is similar but not identical to the Lifebook
S6410/E8410 (which are ICH8M-based and use an ALC262).

It is named lifebook as fujitsu is in use for Amilo machines. This builds
on the Quanta FL1 work and supports all analog inputs & outputs that I am
aware of. Microphone autoswitch is implemented. The laptop mic port takes
precedence over the dock mic port if both happen to have a jack plugged in.
This made sense to me as a design decision (imagine a presentation
environment with the dock fully wired in and the presenter quickly wanting
to override the mic with a headset).

There is mention of a digital audio path on the codec graph, so perhaps
the headphone socket is dual-function analog/digital. I will follow up
with another patch if I can acquire equipment to test this.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
c238b4f4038e0e49bb241640610584a088b268b1 05-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Split ALC268 acer model

There are actually two variants of ALC268 Acer implementation, one
with an analog built-in mic (pin 0x19) and another with a digital
mic (pin 0x12). Created a new model, acer-dmic, for the latter case
now.

So far, all known models are assigned to be analog-mic, according to
the BIOS setup. If this doesn't match with the actual case, one needs
to try model=acer-dmic, and fix the entry to point ALC268_ACER_DMIC
if it works.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
959973b92d3ba235edfa5dcb5df1be1e5d1deba2 05-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a quirk for MEDION MD96630

Use model=lenovo-ms7195-dig for MEDION MD96630 laptop (17c0:4085)
with ALC888 codec.
Reference: Novell bnc#412548
https://bugzilla.novell.com/show_bug.cgi?id=412528

Signed-off-by: Takashi Iwai <tiwai@suse.de>
13c947444f4355293b49f83b809f178393a0a4d9 05-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add ASUS V1Sn support

Asus V1s series laptops have an ALC660VD with PCI id: 0x1043, 0x1633.
1.) remove the previous behaviour of mapping that to the ALC861VD_LENOVO
device.
2.) add a new ALC660VD_V1S device based on ALC861VD_LENOVO, with an
added digital out.

Signed-off-by: Tristan Aston <astrotris@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4ef0ef1966dae9e9e29762e4e719af3cfd146ca0 03-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix missing ADC list in ALC260 auto-probe mode

The commit f9e336f65b666b8f1764d17e9b7c21c90748a37e
ALSA: hda - Unify capture mixer creation in realtek codes
removed the ADC check for ALC260 auto-probe mode accidentally.
Re-added to patch_alc260() again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
26f5df265f06b8c8fe9f5d0942b7d8df00e5edec 03-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add ALC299 fujitsu preset model

Added a preset model for FSC Amilo with ALC269 codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
69e50282b726bab75c8050c4836dc89b7eb7bf1a 03-Nov-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add a quirk for another Acer Aspire (1025:0090)

Added a quirk for another Acer Aspier laptop (1025:0090) with ALC883
codec. Reported in Novell bnc#426935:
https://bugzilla.novell.com/show_bug.cgi?id=426935

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3c3e9892a1dacca2ba9e05c196ab1ea99c544360 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Re-add input-source control for Realtek

Re-added again "Input Source" control that was removed mistakenly
in the previous patchset.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f9e336f65b666b8f1764d17e9b7c21c90748a37e 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Unify capture mixer creation in realtek codes

Unified the capture mixer creation in patch_realtek.c.

ALC268 is still an exception since it has no AMP in ADC but in
MUX widget.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
54cbc9abe57cf0a36619f394802448c62402599a 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Unify capture callbacks in realtek codes

Unify the capture callbacks in patch_realtek.c.
The difference of matrix or mux style is checked via spec->is_mix_capture
flag.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d88897eaea53f0fae62d528a24e76b8643082db3 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use macros to check array overflow

Use macro to add mixer and verb elements to check the possible
array overflow.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ee956e090e114ede6542c76a7465ed6ce118ad52 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add digital-mic for ALC269 auto-probe mode

The digital mic wasn't detected properly for ALC269 auto-probing mode
because of its widget number. Fixed now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4605b718e8b8f0dd3d811ddf90f630fd0835b7bf 31-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Disable broken mic auto-muting in Realtek codes

The recent addition of automatic mic-muting is broken in some cases.
The code assumes that the pin nids <= 0x18, but the digital pins can
be less than 0x18.
Also, it assumes the front-mic being the internal mic, but it depends
on the hardware implementation actually.

Instead of complex case-fixes, better to disable the code as now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e044c39ae258678d6ebb09fccb2a0fdf7ec51847 27-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Restore default pin configs for realtek codecs

Some machines have broken BIOS resume that doesn't restore the default
pin configuration properly, which results in a wrong detection of HP
pin. This causes a silent speaker output due to missing HP detection.
Related bug: Novell bug#406101
https://bugzilla.novell.com/show_bug.cgi?id=406101

This patch fixes the issue by saving/restoring the default pin configs
by the driver itself.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
863b45180ef541a1990e4986d30fb7a93022a733 21-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix conflicting volume controls on ALC260

ALC260 auto-parsing mode may create multiple controls for the same volume
widget (0x08 and 0x09) depending on the pin. For example, Front and
Headphone volumes may control the same volume, just the latter one wins.

This patch adds a proper check of the existing of the volume control
and avoid the doulbed creation of the same volume controls.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
80ffe86925a226f513b36d0ce13e049133841970 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix quirk lists for realtek codecs

- Fix Toshiba S06 SSID to 1179:ff7b
- Fix ASUS G50V quirk name
- Add ASUS N20 quirk

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
01afd41f55524e8378601dbf33b858d8dd4b3f31 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of ALC272

Added the support of ALC272 codec. It's almost compatible with ALC663.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a385a52925398e53bedf1a8b30a9a3e002569f27 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add ALC887 support

Added ALC887 support. It's almost compatible with ALC883/888.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4442608d4b0071a00067dcbf64e7362ce08e91a5 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add ALC1200 support

Add ALC1200 codec support. Almost compatible with ALC888.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a01c30cb77aa7b80ea08d003783fb9f0470455ee 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Fix PCI SSID of ASUS M90V

ASUS M90V has PCI SSID 1043:1873. Corrected in the quirk list.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7fb0d78fb155845812e98ed10605d8f01963ce05 15-Oct-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add auto mic switch in realtek auto-probe mode

Add the automatic mic switch via jack sensing in auto-probe mode
for Realtek codecs.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
603c40199252f0c3b91fca02fd3283c4f8e55179 30-Jul-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Use generic array helpers

Use generic array helpers to simplify array handling in snd-hda-intel.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
238713d4891468f7942f7670d22ab44af0943a4b 05-Oct-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix PCI SSID for ASROCK K18N78FullHD-hSLI

The PCI SSID for ASROCK mobo in commit
ac56445dd6a38a36c2fa91989f5f6220a9bdf97c is wrong.
This patch fixes to the correct one, 1849:3662.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
669faba27f2f7b04b9228d20e30e7f584f0becd5 30-Sep-2008 Clive Messer <clive@vacuumtube.org.uk> ALSA: hda - Fix another ALC889A (rev 0x100101)

ALC889A hardware (id 0x10ec0885 rev 0x100101) to use patch_alc883

Signed-off-by: Clive Messer <clive@vacuumtube.org.uk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
19c009aad0ddeaa6a4ba41577022301f18d43afa 29-Sep-2008 Vedran Miletic <rivanvx@gmail.com> ALSA: hda: add more board-specific information for Realtek ALC662 rev1

I recently got a chance to play with two boards with ALC662 rev1:
* BIOSTAR TA780G M2+
* ASROCK K10N78FullHD-hSLI R3.0
Both use 3 stack, 6ch mode with digital out. Since autodetection isn't able
to figure that out from BIOS, we need to specify that manually.

Signed-off-by: Vedran Miletic <rivanvx@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f3911c5ab93e4295938b2013104d2986ea601454 27-Sep-2008 Peter Korsgaard <jacmet@sunsite.dk> ALSA: hda: appletv support

The AppleTV needs the same handling as the 24" iMac.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
95fe5f2cec831d73ee93227810ab95d05ced3416 27-Sep-2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Map ALC662 model for Foxconn 45CMX/45GMX/45CMX-K

Use 3stack-6ch-dig ALC662 model for Foxconn 45CMX/45GMX/45CMX-K motherboard.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
cb55974cb461ff9c9c0675b2a8361d387212b64f 27-Sep-2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Map ALC662 model for Gigabyte 945GCM-S2L

Use 3stack-6ch-dig ALC662 model for Gigabyte 945GCM-S2L motherboard.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
b69ce01ae4ccbab2336b9beea83dea3ea3295df7 18-Sep-2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> ALSA: hda - Fix ALC662 DAC mixer mutes also for auto config model

In previous change "[ALSA] hda-codec - Fix ALC662 DAC mixer mutes", I
missed to fix the mixer mute switches also for the auto config model of
ALC662. Now mute for mixer items "Front", "Surround", "Center" and "LFE"
when available will work too with "auto" model.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
9c95c43de81d5556237fbc82c4e90403dfe468db 18-Sep-2008 David Woodhouse <dwmw2@infradead.org> ALSA: hda - Add PCI subsystem ID for MacBookPro4,1

This seems to work if I tell it that it's a mbp3. Not sure if there are
actually any differences.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2346d0cde544179a8d235375f1bfbca5c141a31b 01-Sep-2008 Travis Place <wishie@wishie.net> ALSA: hda - Add model for Toshiba L305 laptop

Added Subsystem IDs (0x1179, 0xff64) for the Toshiba Satellite L305
laptop, so it automatically uses the ALC268_TOSHIBA quirk.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ee979a143cfd999adea8a9e272649a3cd9ec84bc 02-Sep-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add mic-boost controls to ALC662/663 auto configuration

Signed-off-by: Takashi Iwai <tiwai@suse.de>
24fb9173815045ab3f85a670d7df8af5af6ff3be 02-Sep-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC663 auto-probe

Fix the wrong DAC assignment for NID 0x17 mono-pin on ALC663.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9f99a6386eb1ad1197a401495669315de2f19039 28-Aug-2008 Hiroshi Miura <miurahr@acm.org> ALSA: hda - Add support of Toshiba RX1

Added the support of Toshiba RX1 laptop with ALC262 codec chip.
Related ALSA bug#3386:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3386

Signed-off-by: Hiroshi Miura <miurahr@acm.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2922c9aff22ea65f33a891af894331f0f883d127 27-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add descriptions of missing model values

Added the descriptions of missing model values.
Also, fixed the model strings of a few new models to a standard style.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f1d4e28b2dbd35191cc5097b716ec7fa49540b0b 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add more ALC662/663 codec support

- Add support for ECS (1019:9087)
- Delete G71V record from alc662_cfg_tbl[]
The PCI SubsystemID was the same with M70V
- Add more ASUS notebook support

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
e2757d5efad01dae6986e1f84590898e47231964 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - support more ALC888 devices

- Add Lenovo Sky support (17aa:101d)
- Add ASUS M90V support (1043:8317)
- Add ASUS Eee 1601 support (1043:835f)

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
60db6b53fb43421beb2ff3fe3e63412bf81620aa 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of Quanta FL1

Added the support of Quanta FL1 with ALC269 code chip.
Also a bit space clean-ups.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
8ef355da64ff087b6f26c4c28a14753861e83e4b 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of Acer Aspire One

Added the support of Acer Aspire One with ALC269 codec chip.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4e555fe5475437f5c05b9e1812959bf6d5cd50b9 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of Toshiba S06

Added the support of Toshiba S06 with ALC262 codec chip.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3f8783084aa03d04e7757ced337fa415744489a5 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of HP DC7600

Fixed the support of HP DC7600 with ALC260, which was formerly handled
as model=hp-3013.

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ea1fb29ac95dea6b3063d6bce512faae9fec6a89 26-Aug-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - fix spaces in patch_realtek.c

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
93a1a5eb70be5cc14990b97ef2460212e32658dc 27-Aug-2008 Takashi Iwai <tiwai@suse.de> Revert "ALSA: hda - Added model selection for iMac 24""

This reverts commit 3e0e469fa216ec70c93b1593821b759d19ee2e6b.

The patch introduced a wrong detection of other intel Macs with
ALC88* codec because they share the same PCI SSID (but have different
codec subsystem-IDs). See http://lkml.org/lkml/2008/8/24/143

Reported-and-tested-by: Guillaume Chazarain <guichaz@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e01bf5091f044011823aefa1882eb3fba0434918 21-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix ALC269 capture source

ALC269 capture source wasn't properly set up.
It's an independent MUX (0x23), not a source of ADC.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2005af24b17a44a977ce58d918db72f442b89521 20-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Create beep control on ALC269 codec

ALC269 codec has a beep, but it was not used, so far.
Create a beep control appropriately.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
1082c7487cbe5a40755ba9e33552b6ecbf419bf2 22-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix call of alc888_coef_init()

Using init_hook to call alc888_coef_init() is problematic for configurations
that already set another init_hook. Better to put it in alc_init() as is
(although it looks a bit hackish).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f511b01c8e747b80635c8b2acd61431abcab4b29 15-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Fix capture source widgets on ALC codecs

On some Realtek codecs like ALC882 or ALC883, the capture source is
no mux but sum widget. We have to initialize all channels properly
for this type, otherwise noises may come in from the unused route.

The patch assures to mute unused routes, and unmute the currently
selected route.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Tested-by: Daniel J Blueman <daniel.blueman@gmail.com>
963f803fb1bbce87f6049c22c737ae379e1047d3 11-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Don't reset SPDIF in each status change

The SPDIF output is toggled at each time any SPDIF status bits are changed
because of the known problems on some codecs. But, this also results in
loosing the sync, and the problem is more obvious on HDMI output over
SPDIF. Since the toggle is necessary only for some codecs, we should
check whether this workaround is needed and skip if unnecessary.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
da3cec35dd3c31d8706db4bf379372ce70d92118 08-Aug-2008 Takashi Iwai <tiwai@suse.de> ALSA: Kill snd_assert() in sound/pci/*

Kill snd_assert() in sound/pci/*, either removed or replaced with
if () with snd_BUG_ON().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
e8f9ae2a4a0654e7798b8c0ae956e3f0fdc23c8d 04-Aug-2008 Pascal Terjan <pterjan@mandriva.com> ALSA: hda - Fix sound on NEC Versa S9100

This patch adds sound support for NEC Versa S9100
With it, we get sound on the internal speaker and headphone (with
automute working) while there is no sound by default.
External mic also works fine but I don't know if there is an internal
one (if there is an internal mic it does not work currently), and I
had to send back the hardware.

Signed-off-by: Pascal Terjan <pterjan@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
0b18cb1854152a62492aae088cb80cbeb5c0288d 28-Jul-2008 Jaroslav Kysela <perex@perex.cz> ALSA: Fix commit: Add automatic model setting for the Acer Aspire 5920G laptop

There is a whitespace at the end of added line. Remove it.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
fe7e873f52f17ad9b8ee9e2c70acaddcae22443b 27-Jul-2008 Travis Place <wishie@wishie.net> ALSA: hda - Add automatic model setting for the Acer Aspire 5920G laptop

Make the Acer Aspire 5920G (1025:0121) select ALC883_ACER_ASPIRE
by default.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f53281e62a41ac176f050307c0d746a1183a68e8 18-Jul-2008 Kailang Yang <kailang@realtek.com> ALSA: hda - Add support of ASUS Eeepc P90*

- Support ASUS_P900A = P703
- Support ASUS_P901

Signed-off-by: Kailang Yang <kailang@realtek.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2522d7359301efadfb5744ebd3c623c3af4a7b30 17-Jul-2008 Alexander Holler <holler@ahsoftware.de> ALSA: hda - Added support for Asus V1Sn

Added the necessary ID for Asus V1Sn to patch_realtek.c
to use ALC861VD_LENOVO on these laptops.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
34ec8a0ae138c2787a550b930d29a9cce4900cee 10-Jul-2008 Jaroslav Kysela <perex@perex.cz> ALSA: HDA - HP dc7600 with pci sub IDs 0x103c/0x3011 belongs to hp-3013 model

As reported and tested by an RedHat customer, HP dc7600 with pci sub IDs
0x103c/0x3011 works with the hp-3013 model and not with the hp only model.

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
be321a890c25272965129ffe4b3b59a519fcf583 07-Jul-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add support for Lenovo 3000 N200

Added the model entry (model=lenovo) for Lenovo N3000 N200 laptop
with ALC861-VD. Reference below:
https://bugzilla.novell.com/show_bug.cgi?id=406425

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
0701e0640f4a1de2b509cfee508216275f81d812 27-Jun-2008 Takashi Iwai <tiwai@suse.de> ALSA: ALSA: hda - Fix ALC883 medion model

ALC883 medion model doesn't unmute the proper amps so no output can be heard.
Replaced the mute switches to behave just like other models.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
c7e0757a461db87157bbf92c4f5afda87cbe05f6 26-Jun-2008 Takashi Iwai <tiwai@suse.de> ALSA: hda - Add MacBook 3.1 support

MacBook 3.1 is compatible with model=mbp3.
Added the codec SSID 10b6:3600.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
1d11604eebfc91204e3182b48d3d920f51b09d40 23-Jun-2008 Travis Place <wishie@wishie.net> ALSA: hda - Added SSID for 'Fujitsu Siemens Amilo M1451G' laptop

Add the SSID for the "Fujitsu Siemens Amilo M1451G" laptop to
patch_realtek.c , so that it uses ALC880_FUJITSU by default.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3e0e469fa216ec70c93b1593821b759d19ee2e6b 20-Jun-2008 Travis Place <wishie@wishie.net> ALSA: hda - Added model selection for iMac 24"

Added the SSID of a known iMac 24" to automatically use
ALC885_IMAC24 quirk.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
36ca6e133ae3a57318a3ad8a41b2f005e3934c29 09-Jun-2008 Akio Idehara <zbe64533@gmail.com> [ALSA] hda - Add Toshiba dynabook SS RX1 support

I have Toshiba dynabook SS RX1 and this patch adds that support.

Signed-off-by: Akio Idehara <zbe64533@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
7b1e8795ebfe1705153d1001f2a899119f4d9012 09-Jun-2008 Akio Idehara <zbe64533@gmail.com> [ALSA] hda - Fix "alc262_sony_unsol[]" hda_verb array

I think that hda_verb array must have "terminator (empty array)".
But alc262_sony_unsol[] does not have it.
And it causes gcc-4.3's buggy behavior
with snd_hda_sequence_write().

Signed-off-by: Akio Idehara <zbe64533@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2c3bf9abb11dd8050cd2d153917d1746c8d5af05 04-Jun-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix PLL gating control on Realtek codecs

On some Realtek codecs, the analog PLL gating control bit must be set
off while the default value is 1.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
17bba1b72d190742c99a140154f0abac9c1996c3 04-Jun-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda - support intel DG33 motherboards

These two motherboards's pin configuration are not covered by driver.
I wrote a new model to support them.

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
378bd6a5211f05d6d8eb3e78a92e2a197e456e4e 04-Jun-2008 Tony Vroon <tony@linx.net> [ALSA] hda - COMPAL IFL90/JFL-92 laptop quirk

Use quirk table to assign ALC268_TOSHIBA to COMPAL IFL90/JFL-92 laptops.
No analog output on autoprobe.

Signed-off-by: Tony Vroon <tony@linx.net>
Tested-by: Guri <gurashka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
07bc76dfa19b10017b518dd9aa1b2719e8c863de 03-Jun-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix resume of auto-config mode with Realtek codecs

The auto-config mode of Realtek ALC codecs has a bug since 2.6.25
that it cannot resume properly. The problem was the wrong assignment
of init_hook that overrides the whole initialization.

Relevant bug reports:
http://bugzilla.kernel.org/show_bug.cgi?id=10662
https://bugzilla.novell.com/show_bug.cgi?id=385473

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f9423e7a94eb2dfef3503dde76d17eaf342ab962 27-May-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda - Fix EAPD and COEF setups for realtek codecs

Fixed EAPD and COEF setups for Realtek ALC662/663, 660-VD and 888 codecs.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2f8932863d243a744ccd3dc005490ad9d2eae478 27-May-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda - show correct codec chip in PCM stream names

Show more exact codec chip name in the PCM stream name strings.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
531240ff520406c793a110e1c0f187d931f47d66 27-May-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda - Fix vref pincap check in alc882 auto-detection

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
6dda9f4a95905f2b38e79e3737da5e25397e6acb 27-May-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda - Add ALC663 support

Added the support of ALC663 codec, including specific models for
ASUS M51VA, ASUS G71V, ASUS H13 and ASUS G50V.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
97ec710cab76f90a6bece76a04e76aa50096a470 23-May-2008 Travis Place <wishie@wishie.net> [ALSA] hda - Added support for Foxconn P35AX-S mainboard

Added IDs for the Foxconn P35AX-S mainboard to patch_realtek.c, so
that ALC883_6ST_DIG is used by default.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
20a3a05dd66ad0f678a587688cc85f0b36869876 23-May-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix COEF and EAPD in ALC889 auto-configuration mode

Fix the missing COEF and EAPD initialization in ALC889 auto-configuration
mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
186c3117f8aac0b2ac5290aaed254fcfdcc937de 20-May-2008 Travis Place <wishie@wishie.net> [ALSA] hda - Fix ASUS P5GD1 model

Corrected the model assignment for the ASUS P5GD1 w/SPDIF after reports of
surround sound not being possible.

Signed-off-by: Travis Place <wishie@wishie.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
ebc7a406633acefc6d12c1ccc9441bfef69e0f33 20-May-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix ALC262 fujitsu model

Fixed the speaker auto-mute with two laptop and docking headphones.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Tony Vroon <tony@linx.net>
564c5bead424fa798dfbd5fe382b4e0b7ea483fb 03-May-2008 Jacek Luczak <luczak.jacek@gmail.com> [ALSA] Revert migration to alc_set_pin_output() in alc861_auto_set_output_and_unmute()

Change done by:
commit f6c7e5461e9046445d50c5c7a9a4587824239623
[ALSA] hda-codec - Fix auto-configuration of Realtek codecs
broke sound on ALC861 Analog.

Signed-off-by: Jacek Luczak <luczak.jacek@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
df99cd334e5356b002a9480048c06265e558e180 25-Apr-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Add support of Medion RIM 2150

Added the support of Medion RIM 2150 laptop with ALC880 codec.
ALSA bug#3708:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3708

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a0b8f7d89b8de0cc79999b9fdd3a303912f3b2a3 22-Apr-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix model for Acer Aspire 5720z

Set the proper model=acer for Acer Aspire 5720z with ALC268 codec.
ALSA bug#3550:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3550

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7943a8aba93ab439bdfbd9b92221720a4a4d8153 16-Apr-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Avoid unexpected breakage with ALC889A hack

The last ALC889A hack may break on some devices with certain model presets
since patch_alc*() have different model tables. So, now it's handled in
the original patch_alc882() but fly to patch_alc883() in model=auto
appropriately.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cb308f97aee2c816834240c8d5f7c98dd8aff157 16-Apr-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda - Fix ALC889A codec support

ALC889A is recognized ALC885/ALC882 but it's actually closer to
ALC888/ALC883.

Cc: Kasper Sandberg <lkml@metanurb.dk>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
eb5a66216658a1c879ab05dcdc65ce7005c4780b 14-Apr-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-intel: Add Quanta IL1 ALC267 model

This adds support for Quanta IL1 mini-notebook to alsa, defining a new model
for it. It comes with an ALC267 codec chip. Some notes about this model:

* In headphone automute, I use AC_VERB_SET_PIN_WIDGET_CONTROL instead of common
amp mute, to avoid conflict with mixer switch (mixer and automute use the
same nid).
* The only connected capture sources in the hardware are the internal mic and
external mic jack. So instead of using an input source selector like on other
ALC268 models, the mic automute automatically switch between captures.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
06a9c30cdda43ca82d7f22c8ebeb93e691f85b5f 14-Apr-2008 Tony Vroon <tony@linx.net> [ALSA] hda - Fujitsu Lifebook PC speaker signal

The legacy PC speaker signal was not routed to outputs. The codec is not
prevented from powering down in this patch, although I suppose one could
argue that perhaps it should be. Let me know if anyone feels strongly one
way or the other.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
64654c2f9e7875a982a9c3b4456ed11ad811ec61 14-Apr-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda - Should use HDA_OUTPUT instead of HDA_INPUT to mute pin 15 of ALC880

To mute the output of Pin widget 15 in ALC880, we should use the
HDA_OUTPUT. However, current code looks like :
snd_hda_codec_amp_stereo(codec, 0x15, HDA_INPUT, 0, HDA_AMP_MUTE, bits);
It may be a misspelling.

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
4383fae0ec5bc269f9eb4383b223731e3ecd2fe3 14-Apr-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - PCI quirk for MSI laptop

Please refer to [0003848] on the alsa mantis.
This patch adds the pci quirk and Mic-Int controller.

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0c4cc4430f40089bb85557e309038faa458247f1 22-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Support mic automute for Clevo M720R/SR

Add support for mic automute in clevo-m720r ALC883 model, and rename it
to more generic clevo-m720. Also change model entry in ALSA-Configuration.txt
accordingly.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
213f0bfe9061e077590f2775cb90c1e6c0c9faa6 22-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Map clevo-m720r ALC883 model for Clevo M720SR

Map clevo-m720r ALC883 model for Clevo M720SR.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
eea6419ea18ed9dfc16f9a262e96cdb832376e88 20-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Use common 3stack-6ch mixer for 3stack-hp model

Forgot one more: 3stack-hp model also have now the same mixer as
3stack-6ch (after DAC assignment fix in ALC883), so use it avoiding
duplicating the same mixer definition.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f24dbdc61dd7ca6b97c525b40979ab7bd07c0934 20-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Use base ALC883 mixer for 6stack-dell model

After DAC assignment fix in ALC883, alc888_6st_dell_mixer is now the
same as alc883_base_mixer. Avoid duplicated code and use
alc883_base_mixer in 6stack-dell model, removing alc888_6st_dell_mixer
definition.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5d85f8d02af56da5e3b76805da00a0f7f7427255 20-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Remove now uneeded 6stack-hp model from ALC883

After DAC assignment fix in ALC883, the 6stack-hp model is now the same
as 6stack-dig. So just remove 6stack-hp model and replace its use with
6stack-dig.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0e31daf7d6484c60e96f63a905eb9b959b975da5 20-Mar-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - model for alc262 to support Lenovo 3000

This model is to support the Lenovo 3000 y410.
ALSA bug#3856:
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3856

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
888afa15418f001896bc11f498f9348e029611bd 18-Mar-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - keep the format verb at closing PCM streams

Keep the format verb at closing PCM streams.
Introduced snd_hda_codec_cleanup_stream() for the parcicular purpose.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
86d34b7ec878ea4b4c9f33ce92f1722c4326dbe7 18-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Map 3stack-6ch-dig ALC883 model for MSI 945GCM5 V2 (MSI-7267)

Map 3stack-6ch-dig ALC883 model for MSI 945GCM5 V2 (MSI-7267).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
f32a19e3e7e72cc896d02c3d104f58dc972d43ea 18-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Fix DAC assignment order in ALC883

Actually clfe and surround DACs are inverted in alc883_dac_nids array
(see ALC883 datasheet). I discovered this while testing multi-channel
setup (using 3stack-6ch-dig model) on MSI 945GCM5 V2 motherboard that
has an ALC883 codec. Simply Rear Left/Right and Center/LFE were swapped
in 6 channel mode (also in 4 channel mode you didn't get rear left/right
output). Other models also were affected by this bug, as can be seen by
the mixer layouts that "workaround" this (the real bug was not noticed,
and some other models simply played with mixer and initial verbs). Thus
along with fixing the order of dac nids, also change the models that
relied on previous dac ordering properly.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5d9fab2d84963ec598810c54a67332decdd922a8 14-Mar-2008 Tony Vroon <tony@linx.net> [ALSA] hda-codec - Fujitsu Lifebook port replicator/dock headphone jack sense

The docking station headphone output had no audio and jack sense
was not considered.

Jack information from the laptop itself and the dock are combined, as
the dock does not obscure the connector.

Signed-off-by: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3da23cac3d6b93803b8c381a755870cbafcd3212 14-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Map 3stack-6ch-dig ALC662 model for Asus P5GC-MX

Map 3stack-6ch-dig ALC662 model for Asus P5GC-MX.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7055ad8a996b2b77f12242109c0b5bacc237e824 14-Mar-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Fix ALC662 DAC mixer mutes

Currently ALC662 doesn't suport amp mute for AmpOut in nids 0x02, 0x03,
0x04 (see block diagram in ALC662 datasheet page 3, does M correspond to
mute?). The result is that currently mute for "Front Playback Switch",
"Surround Playback Switch", "Center Playback Switch" and "LFE Playback
Switch" mixer items doesn't work (tested on Asus P5GC-MX motherboard
with 3stack-6ch model).

The solution I found for this is to mute the proper inputs in 0x0c,
0x0d, 0x0e audio mixers.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bb9f76cd5909b9da6b4d31b55a4086cc35614fe0 12-Mar-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Improve ALC262 ultra model

Improved ALC262 ultra model for Samsung Q1 Ultra series.

- clean up mixers
- support of input from HP jack as a mic
- add quirk for Q1 EL

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ee7a9c7c2eb5cd09c15824323eac4cd95e2d18a8 10-Mar-2008 Michael Gruber <lists.mg@googlemail.com> [ALSA] hda-intel - Fix microphone capture with ALC880 F1734 model

The default capture source should be the mic which is 0x01 on this model.
In addition to that the change to VREF50 allows for higher capture volume.

Signed-off-by: Michael Gruber <lists.mg@googlemail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b419f346994d4ba082244fb1327754bc839a4d8a 07-Mar-2008 Tobin Davis <tdavis@dsl-only.net> [ALSA] HDA Codecs: add support for Toshiba Equium L30

This patch adds support for the Toshiba Equium L30 laptop and renames the mixer
controls to match Laptop usages.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
0ccb541c96e6d40844d00ec88fae734568bdd0bd 06-Mar-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add internal mic item for ALC268 acer model

Added the internal mic as a capture source item for ALC268 acer model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7194cae62e92c5db8b87df1120fbf24f83f488f8 06-Mar-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix dmics on ALC268 in auto configuration

Fixed the handling of dmics on ALC268 in the auto-configuration mode.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
fb97dc67397c1ee63eb0094c28fc9a5dcc0a83a6 06-Mar-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - model for alc883 to support FUJITSU Pi2515

There is no suitable model for Pi2515.
This model is to support it. ALSA bug#3800.

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
8280823668d42ed9695da759047b86074ad14ba4 04-Mar-2008 Pascal Terjan <pterjan@mandriva.com> [ALSA] ALC288 - Add NEC S970 to the quirk table

NEC S970 has no sound in the internal speakers when autodetection is
used.
With targa-dig model, there is sound in the speakers and it gets
correctly muted when pluging headphones.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
368c7a95ea324b3f9728ba1c901ac119d409bf4e 04-Mar-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - model for alc883 to support M720R

There is no suitable model for M720R (ALSA bug#3781).
This patch is to support HP jack-sensing and mixer.

Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3c9a3203ff9863fbe798030928f496347c2ed3bd 29-Feb-2008 Harvey Harrison <harvey.harrison@gmail.com> [ALSA] sound: hda: missing includes of hda_patch.h

Move the array declaration to hda_codec.c where it is used and add includes
where the individual presets are declared.

Fixes the following sparse warnings:
sound/pci/hda/patch_realtek.c:13744:25: warning: symbol 'snd_hda_preset_realtek' was not declared. Should it be static?
sound/pci/hda/patch_cmedia.c:729:25: warning: symbol 'snd_hda_preset_cmedia' was not declared. Should it be static?
sound/pci/hda/patch_analog.c:3656:25: warning: symbol 'snd_hda_preset_analog' was not declared. Should it be static?
sound/pci/hda/patch_sigmatel.c:3995:25: warning: symbol 'snd_hda_preset_sigmatel' was not declared. Should it be static?
sound/pci/hda/patch_si3054.c:286:25: warning: symbol 'snd_hda_preset_si3054' was not declared. Should it be static?
sound/pci/hda/patch_atihdmi.c:156:25: warning: symbol 'snd_hda_preset_atihdmi' was not declared. Should it be static?
sound/pci/hda/patch_conexant.c:1721:25: warning: symbol 'snd_hda_preset_conexant' was not declared. Should it be static?
sound/pci/hda/patch_via.c:1962:25: warning: symbol 'snd_hda_preset_via' was not declared. Should it be static?

Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
67ebcb0311110dc7268bb5b135bf437d8033337e 19-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Don't create multiple capture streams for single inputs

When the device has only one input source, it makes no sense to have
multiple capture streams.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
85860c06aba5e145805ad840553a2388e60a7e23 19-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC268 capture source

Initialize the capture source properly for auto model.
It's especially important for cases that only mic is detected.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
aef9d318b1d741d80486ff7ea3507a8321dedf6b 19-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add beep volume control to ALC268

Added the beep volume control to ALC268 codec support code.
Since the codec doesn't return the correct AMP caps, we need to override
the value.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
77a261b75521564dcc5f22355cce4830f6b1376a 19-Feb-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Fix ALC662 recording

Fixed ALC662 recording issue.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
1c82ed1bc531746a8fa9b46c593ddce546f28026 18-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] Keep private TLV entry in vmaster itself

Use a private array for TLV entries of virtual master controls instead
of (supposed) static array. This cleans up the existing codes.

Also, now vmaster assumes the simple dB-range TLV that is the only type
it can handle.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
88c71a9974693f2b2824b09340269511dd7cbe18 14-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix missing capsrc_nids for ALC262

ALC262 must have capsrc_nids defined as well as in ALC882.
Also, add a NULL check in alc882_mux_enum_put to avoid Oops.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d260cdf65657382c4cde366a1c7d4ddce669a427 13-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix breakage of resume in auto-config of realtek codecs

The last patch for fixing the auto-config pin setting breaks the resume
due to a wrong use of snd_hda_codec_amp_stereo(). The code in the init
hook shouldn't touch the amp cache.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
9a08160bdbe3148a405f72798f76e2a5d30bd243 12-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add "IEC958 Default PCM" switch

Added a new mixer switch to enable/disable the sharing of the default
PCM stream with analog and SPDIF outputs. When "IEC958 Default PCM"
switch is on, the PCM stream is routed both to analog and SPDIF outputs.
This is the behavior in the earlier version.

Turning this switch off has a merit for some codecs, though. Some codec
chips don't support 24bit formats for SPDIF but only for analog outputs.
In this case, you can use 24bit format by disabling this switch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f6c7e5461e9046445d50c5c7a9a4587824239623 12-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix auto-configuration of Realtek codecs

This patch fixes some bugs in the auto-configurator of Realtek codecs:
- add missing pin set-up for speaker pins
- fix the speaker auto-mute function not to conflict with the existing
"Speaker" mixer switch

Signed-off-by: Takashi Iwai <tiwai@suse.de>
e1406348129dc2db60ccad079c3d014200590557 11-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Clean up capture source selection of Realtek codecs

Clean up the codes of the capture source selection for Realtek codecs.
Now using common helper functions with the new capsrc_nids field.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
937b416027d8f79d7b37bb63b6585ea8fdf125de 11-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC880 F1734 model

Fixed some issues with ALC880 F1734 model
- fix capture via mic
- enable volume-wheel control

Signed-off-by: Takashi Iwai <tiwai@suse.de>
aa27a44395c3d35bc16e52f1e709e0fb2a3709e4 08-Feb-2008 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - remove duplicate controls in alc268 test mixer

I've just noticed that there are a handful of duplicate controls in the
ALC268 test model mixer. This patch (against alsa-driver 1.0.16) removes
them.

Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
7ba72ba1fe891a94b1e9d506236507e4dc50e872 06-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-intel - Fix PCM device number assignment

In the current scheme, PCM device numbers are assigned incrementally
in the order of codecs. This causes problems when the codec number
is irregular, e.g. codec #0 for HDMI and codec #1 for analog. Then
the HDMI becomes the first PCM, which is picked up as the default
output device. Unfortuantely this doesn't work well with normal
setups.

This patch introduced the fixed device numbers for the PCM types,
namely, analog, SPDIF, HDMI and modem. The PCM devices are assigned
according to the corresponding PCM type. After this patch, HDMI will
be always assigned to PCM #3, SPDIF to PCM #1, and the first analog
to PCM #0, etc.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f12462c5224bf992f5ed4d37af4d42622f7d5934 04-Feb-2008 Mirco Tischler <mt-ml@gmx.de> [ALSA] hda-codec - Add support of Zepto laptops

Adds support for zepto laptops with alc268 intel_hda codec.

Signed-off-by: Mirco Tischler <mt-ml@gmx.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
b4818494edddfe382de4f5d072cb527b60315a46 23-Feb-2008 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Adapt eeepc p701 mixer for virtual master control

Fix the line-out volume control of eeepc p701 to be a proper slave of
the virtual master control.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
31bffaa9435f14b35a8e23ed2005925f65ec6d9b 27-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix mixer names of realtek codecs to adapt mater controls

Some models like eeepc ep20 have invalid mixer names that aren't
handled properly by virtual master controls. Rename them to the
proper names.

Also fixed some typos in the mixer names but they are not compiled
in right now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0b167bf456d4af58103e2072bc4bd5733e7e7579 03-Feb-2008 Andrew Paprocki <andrew@ishiboo.com> [ALSA] hda_intel - Add model quirk for Albatron KI690-AM2 motherboard

This adds a quirk to the Realtek ALC883 table for the Albatron KI690-AM2
motherboard to use the 6stack-dig model.

Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3f1eeaed2c0dc6c787a47ae7a6c774589a04a3a2 25-Feb-2008 Tony Vroon <tony@linx.net> [ALSA] hda-codec - Add Fujitsu Lifebook E8410 to quirk table

Add the proper model entry for Fujitsu Lifebook E8410 with ALC262 codec.

From: Tony Vroon <tony@linx.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
cced83b62c61fb39b79e796981065dff474b62aa 22-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC882 capture source selection

The capture source selection for ADC list with two elements is buggy
becaues of a wrong capture mux list. This patch fixes the starting
index based on spec->num_adc_nids.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
614ca92b51b81eb42d6a3dcf125451632ddca0f5 22-Feb-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix wrong capture source selection for ALC883 codec

The widget list of capture source selection for ALC883 contains the
wrong NIDs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
edb54a55d2e36de2183a89efa97fadede33b1166 29-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Control SPDIF as slave

Add SPDIF playback switch to the slave element list so that it
can be toggled via the master control as well.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ce875f079efcfdcf693de89c7ab0ca7f71a9bdce 28-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add speaker automute to ALC262 HP models

Added the speaker-automute function to ALC262 HP models.
Also, 'Mono' mixer elements are renamed as more intuitive 'Speaker'.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
bec15c3a5a1814019424228cd8127e9c82965ae1 28-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add speaker automute to ALC260 HP models

Added the speaker-automute function to ALC260 HP models.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f2f48e1859167c936af957a828da1e9ec76848cd 28-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC262 HP-RP5700 model

Removed the PCM mixer elements conflicting with others.
Also renamed Master control to Headphone, which isn't a real master.
(The Master control is still created as a virtual master even after
this rename.)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4bb261302b34998e8c3c8d8f0493ee9e58d57cb2 28-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix mixer controls with ALC262 HP T5735 model

The PCM mixer elements in HP T5735 model of ALC262 codec conflict
with Speaker and Headphone volumes. They should be removed.
Ditto for LineOut that is identical with Speaker.
Also, fixed/cleaned up the auto-mute callback to use the amp cache
correctly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
86cd92983a78d20d16ed77754829b5ee00c78be6 28-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Rename non-standard 'iSpeaker'

Renamed the non-standard mixer elements 'iSpeaker' to 'Speaker'
in Realtek codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
4444704cdcd44bb3534ead01d3318f0db858cb9f 28-Jan-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - Add model for Gigabyte P35 DS3R


Signed-off-by: Jiang zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
dafc83578d1633d7faf3e9de67fd922286c1b38d 25-Jan-2008 Andy Shevchenko <andy@smile.org.ua> [ALSA] hda-codec - Add model for Acer Aspire 5310

Simplify usage of the Acer Aspire 5310 laptop with the ALC268 based codec
sound card via add correct PCI SSID.

Signed-off-by: Andy Shevchenko <andy@smile.org.ua>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
29a52c242d76deee155cb94756bcf7ebf58de4fe 24-Jan-2008 Andy Shevchenko <andy@smile.org.ua> [ALSA] hda-codec - Add model for Acer Aspire 5315

Simplify usage of the Acer Aspire 5315 laptop with the ALC268 based codec
sound card via add correct PCI SSID.

Signed-off-by: Andy Shevchenko <andy@smile.org.ua>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
6330079fc6df4a0829f952b73c4d4999e56034f8 24-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix handling of multiple capture streams

Fixed the bug that multiple capture streams conflict on Realtek codec
routines.
Also, this adds a framework to enable the alternative playback stream,
e.g. for VoIP. It's not fully implemented yet, though.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3866f0b0c2df3d179b2901d084670d3cf711b1da 15-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add the support of Dell OEM laptops with ALC268

Added the support of Dell OEM laptops (Vostro 1200) with ALC268 codec.
The new model=dell is provided.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f0747ee6c12d218c1ccfd90b5413034f043894bb 15-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Disable PCBEEP mixer element in test model

It turned out that the PCBEEP element (0x1d) is disabled on some hardwares
although it's defined in the datasheet. Because of the error at info of
this element, the mixer gets totally unusable.
Since the PCBEEP isn't that important feature, it's safer to disable this.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
52a1d4f9d6e40c2473a85105cb5e055914a4779d 13-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Remove obsolete FIXME's

Removed 'FIXME' comments that have been already fixed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
5795b9e64588192b2b1123fed5f9ecaf0ecef5ba 13-Jan-2008 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda: Fix 5.1 sound in Dell 6stack ALC888 HDA

This patch fixes 5.1 surround output and headphone detection in the
Dell Inspiron 530 and possibly other Dell systems using the ALC888
codec (mode 6stack-dell).

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ce22e03e62fd37fb2612abb7af1c66cc17038606 11-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Don't build boost controls for digital mics

The ALC auto-probe creates mic boost controls automatically for the
probed pins, but it assumes that they are analog mics. The digital
mics have no boost controls and must be skipped.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2134ea4f37d36addbe86d4901f6c67a22a5db006 10-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add virtual master controls

Add master controls using vmaster to codecs that have no real hardware
master volume registers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3d5fa2e59630a852f2dda7096885b64ffa03427d 10-Jan-2008 Jiang zhe <zhe.jiang@intel.com> [ALSA] hda-codec - Device ID for Macbook sound card

Please refer to the [0003680] on ALSA bugtracking system.
The user found that 'model=mbp3' works and provided the ID.
From: Jiang zhe <zhe.jiang@intel.com>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
8c427226ed549af67396794e86246bf2d361ff8f 10-Jan-2008 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Update realtek codec support

1. Support HP rp5700
2. Fixed alc_subsystem_id function (Bug fixed and support Desktop)
3. Support ASUS EP20

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
9004acc70e8c49c50c4c7b652f906f1e0ed5709d 08-Jan-2008 Takashi Iwai <tiwai@suse.de> [ALSA] Remove sound/driver.h

This header file exists only for some hacks to adapt alsa-driver
tree. It's useless for building in the kernel. Let's move a few
lines in it to sound/core.h and remove it.
With this patch, sound/driver.h isn't removed but has just a single
compile warning to include it. This should be really killed in
future.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
86c53bd26b431767438c65f89863471be177f0f7 08-Jan-2008 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - Add test model for ALC268

This implements a test model for the ALC268. It depends on the feature
added by alc260-test-eapd-0.2.diff. This patch also adds a mention of
the ALC260 test model to ALSA-Configuration.txt since this seems to have
been missed.

Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f8225f6d1f68c3d0a0fe844dc40a11cd432a853b 08-Jan-2008 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - Add EAPD controls for ALC260 test model

This implements a switch control for the EAPD signal output by the ALC26x
chips. Since some laptops may utilise this to activate useful things it
is handy to have a control for this in the ALC26x test models. The patch
includes the control in the ALC260 test model.

Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
a9b3aa8a0a203b9b62e15c465ba7d4797a6a2c79 20-Dec-2007 Jiang Zhe <zhe.jiang@intel.com> [ALSA] hda-codec - alc268 input_mux should be a selector instead of mixer

According to the [0003659], the node 0x23,0x24 is a selector.
I checked the alc268 spec on the REALTEK website and it showed that they
were selectors indeed.
However, current code implement the alc268 input_mux in a mixer way.

Signed-off-by: Jiang Zhe <zhe.jiang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
6e7939bb4de289d4e5176b08f1d00e42e0a07d77 19-Dec-2007 Herton Ronaldo Krzesinski <herton@mandriva.com> [ALSA] hda-codec - Fix capture mixers of ALC662 models

The commit that added support for ASUS P701 eeepc also changed the
mixers of other ALC662 models, duplicating entries for the Capture
items, making them to not work anymore. This fixes it by removing
duplicated entries using where possible the common alc662_capture_mixer.
Also alc662_capture_mixer should use alc662* functions and not alc882
(I checked /proc/asound/card0/codec* on an eepc model and it's ok).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
3982d17e3d38850908ed3400cb5a68fdc623877d 19-Dec-2007 Andrew Paprocki <andrew@ishiboo.com> [ALSA] hda-codec - Add missing #defines (and 1 rename) in hda_codec.h

Added AC_VERB_GET_DIGI_CONVERT_2 and renamed AC_VERB_GET_DIGI_CONVERT to
AC_VERB_GET_DIGI_CONVERT_1 to stay consistent with the SET variants. Added
AC_VERB_GET_GPIO_UNSOLICITED_RSP_MASK, AC_VERB_SET_GPIO_UNSOLICITED_RSP_MASK,
and AC_PINCAP_LR_SWAP. The missing fields were listed in the ALC883 datasheet
rev 1.3.

Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ac3e37412c195f1b48fe06327eb4ad0c072a1222 17-Dec-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - sort pci quirk list

Sort pci quirk list in the order of PCI SSID.
This makes easier to find out the buggy duplicated entries.
Thanks to Andy Shevchenko for providing the sort script.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
a8848bd6476102ff1d3bbe56662a18d6ada8674f 13-Dec-2007 Andy Shevchenko <andy@smile.org.ua> [ALSA] hda-codec - Initial support of the Mitac 8252D (based on ALC883)

The attached patch adds initial support of the Mitac 8252D
(http://www.mitac-mtc.com.tw/English/products/8252Dspec.htm).
Working:
- Front speakers (volume + mute)
- Center/LFE speakers (volume + mute)
- HP out (with Front Volume)
- HP individual mute switch
- HP Jack sense
- Front Mic and its volume
Not tested:
- external mic and its volume
Not working while now:
- Mic Jack sense
Questionable:
- is Mic have Jack sense?
- one or two Mic volume controls?
- CD/Line-in: presense in the mixer

Signed-off-by: Andy Shevchenko <andy@smile.org.ua>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f6a92248aef841f14a5806cc299c431e7809c733 13-Dec-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add ALC889/ALC267/ALC269 support

Added the support of new Realtek codecs:
1. New ALC889 Support
2. New ALC267 Support
3. New ALC269 Support

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
bba8dee78218752c6457d0dac9f5faa17755ac95 13-Dec-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Device ID for MSI L745

Added the model targa-2ch-dig for MSL L745 (ALSA bug#3641).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
e3cde64af44624030e7635881a5d1932c353a335 03-Dec-2007 Andy Shevchenko <andy@smile.org.ua> [ALSA] hda-codec - Fix typo in the ALC883 initial code

The attached patch should fix typo in auto initialization verbs for ALC883
codec.

Signed-off-by: Andy Shevchenko <andy@smile.org.ua>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
61dc35de78d2b28e3c28fd7a352ef8c4ff63f42d 14-Nov-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model=hp-tc-t5735 for ALC262

Added the missing model string for the new support of HP TC T5735.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
66d2a9d659ccc6ecf51d606fea9d1058d357f453 14-Nov-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add support of HP Thin Client T5735

Added the support of HP Thin Client T5735 [0x103c 0x302f] with ALC262 codec.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
b98f9334e25c463fbfbb1cc468c66845e1c8e46a 07-Nov-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - new PCI SSID for HP machines

Added new PCI SSIDs for HP machines with ALC262 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
f651b50b9d1ab44f7b09d1ef28ba702903732fd3 26-Oct-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] HDA: Add support for Samsung Q1 Ultra Vista edition

This patch adds full record and playback support for the Samsung Q1
Ultra - Vista model (different codec than the earlier Q1 Ultra models).

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
b995d76da070440c1e5687c0c13c8fbe51222ea2 17-Oct-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing eeepc-p701 model for ALC662

Added the missing model string 'eeepc-p701' for ALC662 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
ea45d15394c57cb214aef8e6d40976c128995d43 27-Oct-2007 Al Viro <viro@ftp.linux.org.uk> duplicate initializer in sound/pci/hda/patch_realtek.c

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
41923e441305728ba3640e773e55d16e4769145c 22-Oct-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix possible array overflow

dac_nids arrays in each codec support code may have up to 5 items
when assigned from the auto-configurator. Some codec codes have
less numbers than the possible max. This patch defines the constant
and fixes the array definitions.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
c9b58006be7e471a5f55d171cbaa08f4aa8078ea 16-Oct-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Fix SKU ID function for realtek codecs

Fixed SKU ID function for realtek codecs. It's used by the automatic
BIOS configuration mode. Now it supports the correct jack-detection
mechanism, too.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
291702f017efdfe556cb87b8530eb7d1ff08cbae 16-Oct-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] Support ASUS P701 eeepc [0x1043 0x82a1] support


Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
39d3ed381877246719184897c853c0c58028fe54 12-Oct-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix for Fujitsu Lifebook C1410

Fixed ALC262 fujitsu model to support Fujitsu Lifebook C1410 properly.
It requires EAPD and has separate int/ext mic inputs (which was missing
in the current driver).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
ac8842a0391a776dfa8f59cc83582f6feffa913b 20-Sep-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Missing support ASUS A7J

Added the missing support for ASUS A7J [0x1043 0x1243]

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
b60dd394f8af01d1b0a8b1d9d1aa6b75c645eb8e 20-Sep-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Fix ALC662 codec support

* Fixed ALC662 init verbs (wrong NIDs)
* Fixed ALC662 auto model issue (wrong DAC index)

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
11370ee2c1c578a704f47d5513d57274c335db43 17-Sep-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec: Add two new systems to ALC883

This patch adds support for the Asus M2A-VM HDMI and Abit IP35-PRO
motherboards.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
b201131c43c155c62e799d9410708d10b2c9a6ad 17-Sep-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec: Add 4 channel support for Realtek ALC883

I had a request for a 4 channel mode. This should implement front
and surround outputs, leaving the 3rd plug for mic input.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
8e7f00f9248c2dc6b36f3c4d1932aa975b454c48 07-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Toshiba A305

Added the proper model=toshiba for Toshiba A305 with ALC268 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
96fe7cc867b73690e806406be1562b0e6fa42d2d 07-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing Mic Boost for some ALC882 models

Mic Boost mixer volume was missing in some ALC882 models. Added now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
b875bf3aaf743fb461ab97e07752fbd825c2d78f 06-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add quirk entry for Casper CPR2000

Added the quirk entry for Casper CPR2000 (model=acer) with ALC268 codec
(ALSA bug#3343).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
0438a00e64f38b2f655a10167f9f2d9759856069 06-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing model names for ALC882 codecs

Added the missing model option strings for ALC882 codecs.
Also added the corresponding description in ALSA-Configuration.txt.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
914759b79e28ce74606e99d9f6aaabeec58394ab 06-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for ASUS A7M

Added the support for ASUS A7M with ALC882 codec.
It's slightly different from ASUS A7J.
The patch taken from ALSA bug#3000
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3000

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
8da6470efbfd022c6d228f8829870ba018092b31 05-Sep-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Acer Aspire 9303

Add the entry for Acer Aspire 9303 (model=acer-aspire) with ALC883 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
accbe4988c5cf3dc86f0a042396163ed279536a6 31-Aug-2007 zhejiang <zhe.jiang@intel.com> [ALSA] hda-codec - Fix capture on ALC262 HP machines

Fix the index for Front Mic capture source on ALC262 HP machines.
Also, added the new capture source list for HP BPC DC7000 series
to work properly.
From: zhejiang <zhe.jiang@intel.com>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
776e184e8082a4ec9bf4fe18b11dae6dc4e43d1f 29-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add Mic Boost control with auto-configuration

Some codecs need Mic Boost mixer controls for obtaining a proper recording
level, but the auto-configuration doesn't create them.
This patch adds the creation of mic-boost controls on corresponding codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
889c43955115ea7412d71335e3ceff6bad118dce 23-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC268 unsol event

The unsol event of ALC268 is in the standard bit 26.
Also, fixed the Acer master controls, and added Extensa 5210
to the quirk list.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
0724ea2a85a804e151d960359b599ae8a7c1cad1 23-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix mater mixer switch of ALC262 sony-amd model

Fixed the master mixer switch of ALC272 sony-amd model.
It used a simple bind-control, but it resulted in unexpected
unmute of speaker output. Now the control checks the HP jack
state apropriately, just like fujitsu model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
33bf17abf98087d7a6eec9476cd767c6e998fc05 21-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing capture boost for ALC268

Added missing capture boost controls for ALC268 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d53d7d9e5e6bce747e8b8b2f825db1b32d8f6647 20-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add SPDIF support on ALC880 fujitsu model

Some Fujitsu laptops have SPDIF output jack (ALSA bug#3009).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
189609ae1e4db898d9a933753348ca19544c5903 20-Aug-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add support for Haier W66

1. Support Lenovo 420A (PCI SSID: 0x17aa 0x3bfc)
2. Support Haier W66 (PCI SSID: 0x1991 0x5625)

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6bc9685796529754acd819d9c979227d823c408d 17-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC268 acer model

ALC268 has different NIDs from ALC262. Acer model should use NID 0x02 and
0x03 instead of 0x0c and 0x0d for the master volume.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
542d7c66201439f98dd44e62a8186ec33a15b1a7 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Toshiba Satellite P205

Add model=lenovo for Toshiba Satellite P205 with ALC861VD codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
87350ad0cf05d734309ca40e1524a07cf12190aa 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Macbook Pro rev3

Added the support for Macbook Pro rev3 with ALC885 codec chip.
The patch taken from ALSA bug#3242.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
38baf5ad8b7d24be16a2cf0e4c1d7429aeb4aa45 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix Toshiba A135 model selection

Fixed the double entries in the model presets.
Toshib A135 prefers model=lenovo rather than dallas.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
64ca1c294c94579af68197d5f4af6911236b5a51 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for MSI m673x

Added model=targa-dig for MSI m673x with ALC883 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
676a9b53dcb0843a98f7339a492e42baf4b9a734 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add unsol_event to ALC883 Acer Aspire

Added unsol_event handling to ALC883 Acer Aspire codes.
Also, removed unneeded channel-mode mixer control from 2-ch only presets.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6c726dc672d82749e09345a79350838d4558fae4 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Remove superfluous code

Remove the superfluous code that's actually not used at all.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7debbe51cc001a6deb549999f9d8f53d99c6fd9e 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix PM on ALC885 Intel Macs

Fix power-management on ALC885 Intel Macs.
It fixes the problem with power-saving mode, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d273809e2e512d0638d443dce408ac0342ab73cf 16-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add ALC268 acer model

Added model=acer for ALC268 codec support.
The configuration is: headphone = 0x14, speaker = 0x15
needs hp-jack auto-detection. The same routine as alc262-fujitsu model
is used.
Also, added the auto-muting routine for ALC268 model=toshiba.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
983f8ae4067cf0731f19fc6bda3bc3ef200c32e7 15-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add option texts and descriptions for new Realtek models

Added the missing text entries and descriptions for the newly added
model values for Realtek codec chips.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
39c5d41ffef0e176968079f2f84f657e8511cdf9 15-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Biostar NF61S SE mobo

Added the support for Biostar NF61S SE mobo with ALC861VD codec,
model=6stack-digout (ALSA bug#3190).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d1a991a682f6718db6c611ccfd36d903732d946c 15-Aug-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Update realtek codec support

1. Support Acer Aspire 9810
2. Support TOSHIBA A205
3. Support HP TX1000

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
765c24efa55752b715d9122f36eee485d4903839 15-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Remove conflicting capture mixers for ALC861VD

Removed conflicting capture mixers for ALC861VD model=dallas.
It fixes the ALSA bug#3236.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cb53c626e1145edf1d619bc4953f6293d3a77ace 10-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-intel - Add POWER_SAVE option

Added CONFIG_SND_HDA_POWER_SAVE kconfig. It's an experimental option
to achieve an aggressive power-saving. With this option, the driver
will turn on/off the power of each codec and controller chip dynamically
on demand.
The patch introduces a new module option 'power_save'. It specifies
the second of time-out for automatic power-down. As default, it's
10 seconds. Setting 0 means to suppress the power-saving feature.
The codec may have analog-input loopbacks, which are usually represented
by mixer elements such as 'Mic Playback Switch' or 'CD Playback Switch'.
When these are on, we cannot turn off the mixer and the codec chip has
to be kept on. For bookkeeping these states, a new codec-callback is
introduced.
For the bus-controller side, a new callback pm_notify is introduced,
which can be used to turn on/off the contoller appropriately.
Note that this power-saving might cause slight click-noise at
power-on/off. Also, it might take some time to wake up the codec, and
might even drop some tones at the very beginning. This seems to be the
side-effect of turning off the controller chip.
This turn-off of the controller can be disabled by undefining
HDA_POWER_SAVE_RESET_CONTOLLER in hda_intel.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cca3b3718ca96dca51daf1129ac03003bcede751 10-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Clean up bind-controls

We have already a generic bind-control helper, so let's clean up the codes
using it.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
47fd830acf0b6b5bc75db55d0f2cc64f59a23b5f 10-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - add snd_hda_codec_stereo() function

Added snd_hda_codec_amp_stereo() function that changes both of stereo
channels with the same mask and value bits. It simplifies most of
amp-handling codes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
82beb8fd365afe3891b277c46425083f13e23c56 10-Aug-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - optimize resume using caches

So far, the driver looked the table of snd_kcontrol_new used for creating
mixer elements and forces to call each of its put callbacks in PM resume
code. This is too ugly and hackish.
Now, the resume is simplified using the codec amp and command register
caches. The driver simply restores the values that have been written
in the cache table. With this simplification, most codec support codes
don't require any special resume callback.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2880a8670d45f66bbdd3c5dd8f4ba46fe1ce9329 07-Aug-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Acer Aspire laptops

This patch adds support for some Acer Aspire systems.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
625dc0bf4d91d379e8b4d5c3c9e05ad6fa978c51 30-Jul-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for the ASRock K8NF6G-VSTA motherboard

This patch adds ALC861VD support for the ASRock K8NF6G-VSTA motherboard.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
532d5381793f3c824f8ff68d7067fab8c76bb811 27-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add a generic bind-control helper

Added callbacks for a generic bind-control of mixer elements.
This can be used for creating a mixer element controlling multiple
widgets at the same time. Two macros, HDA_BIND_VOL() and HDA_BIND_SW(),
are introduced for creating bind-volume and bind-switch, respectively.
It taks the mixer element name and struct hda_bind_ctls pointer, which
contains the real control callbacks in ops field and long array for
private_value of each bound widget.
All widgets have to be the same type (i.e. the same amp capability).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
5b31954e4b364f811450311e3b31d3512e575f63 26-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix the initial mixer state of ALC262 sony-assamd model

Many of ALC262 codes don't call the automute function at the beginning,
which may keep the silence until the HP jack is replugged. Now proper
init_hook is added.
Also, sony-assamd model doesn't handle the widget 0x14 properly, thus
calling automute isn't enough. Now Front switch handles both widgets.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a5ce88909d3007caa7b65996a8f6784350beb2a6 23-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] Clean up with common snd_ctl_boolean_*_info callbacks

Clean up codes using the new common snd_ctl_boolean_*_info() callbacks.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
c54728d8aa59283ece86cb745e5085ece8b4eedb 19-Jul-2007 Nicola Fagnani <nicfagn@iol.it> [ALSA] hda-intel: support for iMac 24'' released on 09/2006

Basic audio support for the iMac 24'' model released on 09/2006,
including
headphone jack detection with automatic speaker muting.
This iMac uses the Realtek ALC885 codec, not a Sigmatel one as in
other models.
Functionality has been tested for internal speakers, headphone and
microphone.

Signed-off-by: Nicola Fagnani <nicfagn@iol.it>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
c5d9f1cdbf067b5500886c5171159e99657341ce 19-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add quirk for Asus P5LD2

Without the proper model setting, the Asus P5LD2 rear outputs remain
completely silent unlike other systems where the front speakers usually
work. This patch adds the P5LD2 to the quirk table.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
ef64adbbba1b215e8b523b50ef9d568b4bf2e1e3 14-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add quirks for HP dx2200/dx2250

HP dx2200 and dx2250 use Micro-Star International (MSI) motherboards
(models MS-7254 and MS-7297 respectively) with an ALC862 codec in
threestack configuration. Adding this quirk allows correct 5.1 sound
output in these systems.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
4723c022e1960abb5608b37ef61443da7d6296bb 13-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Rename HP model-specific quirks

Rename ALC888_HP_NETTLE and ALC888_HP_LUCKNOW models to the more generic
names ALC888_6ST_HP and ALC888_3ST_HP since HP seems to be consistent
in the wiring of their 3stack and 6stack ALC888-based systems.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
e87f97a3e842a816f30f087d5bfac68ef2afaef2 13-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add quirk for HP Samba

This patch fixes 5.1 surround output for the HP Samba using the same
quirk as the HP Lucknow. If HP machines are uniform in their wiring,
we should rename ALC888_HP_NETTLE to ALC888_6ST_HP and ALC888_HP_LUCKNOW
to ALC888_3ST_HP for generic HP 6stack and 3stack configurations.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
e4f41da9e5f03e67ebe6067aad40c6a79443c3ae 13-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add LG LW20 line-in capture source

Add line-in to the list of LG LW20 capture sources. Also fix the LG LW
pin assignment list comment.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2dcd522f89d17936d08665c22ab0ee415b8c5d56 10-Jul-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] HDA-Intel - Add support for MSI K9AGM2-FIH motherboard

This patch adds support for the MSI K9AGM2-FIH on-board audio.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f95474ec05106a2af46220fbf8624adc17fcb3e7 10-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix default pin config of Abit AW9D-MAX

Fix the default pin configuration of Abit AW9D-MAX. The board has a
broken BIOS that doesn't set the correct pin default configs, which
screws up the auto-configuration of snd-hda-intel driver.
The patch enables the override of default pin config values.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
341d4eb0cffdcd5fbdbd696dc26671f91e7c418c 09-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix Toshiba A100 with ALC861

One of the newly added model entries causes a regression on Toshiba A100.
It works fine with model=auto. So, let's deselect the entry again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
0f40502e0b5300a37c4cfc7bf93f84c2702dbbe9 06-Jul-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing model parameter strings for ALC262

Added the missing model option values for ALC262.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
8341de60c76c400eaa453c91810ba6995d2fdb57 06-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add HP Lucknow 5.1 support

Added HP Lucknow (ALC888) 5.1 surround support based on ALC883 6-channel
threestack with changes in channel routing.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cd1e3b40429c172b29c04a9c777be2ca1ac012e0 06-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Fix HP Nettle 5.1 output

Fixed HP Nettle 6ch/8ch channel routing based on ALC883 sixstack and
swapping rear and center/LFE in verbs and mixer settings.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
067b5a844c7b9703b0bdcd8cf003a621734c3bae 05-Jul-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Fix ALC662 auto mode

Fixed ALC662 auto mode, wrong NIDs were chosen.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
83c34218a867085f7108438408c8323b46dbfc4a 05-Jul-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Some fixes for Realtek codec supports

- Added BenQ T31-16 AMD Turion64x2 (ALC262) support
- Added models for ASUS machines with ALC861

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
0a8c5da3c066a1e92a66a493e6fe04d5ce7a206d 04-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Fix 5.1 output in LG LW20

Implemented LG LW20 5.1 support based on ALC880 threestack modes. It was
previously set to use one DAC and 2 jack modes, giving 2-channel output
only. Analog CD playing support is still missing.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
8f41b56645f03e6f50407211d6f0f0627ae95e4e 03-Jul-2007 Claudio Matsuoka <cmatsuoka@gmail.com> [ALSA] hda-codec - Add support for HP Nettle

Added the model for HP Nettle mobo with ALC883.
From: Claudio Matsuoka <cmatsuoka@gmail.com>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d10ad1a26da03fe089c02846a95fa5938c3ca3ce 02-Jul-2007 Adrian Bunk <bunk@stusta.de> [ALSA] sound/pci/hda/patch_realtek.c: remove dead code

This patch removes some dead code spotted by the Coverity checker.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6963f84c428ecd31780c97224004c2462b0664f7 25-Jun-2007 Mike Crash <mike@mikecrash.com> [ALSA] hda: support for S/PDIF out on ASUS M2V

Added support for S/PDIF digital output on ASUS M2V motheboard - added
new model '3stack-660-digout' and ALC660VD_3ST_DIG

Signed-off-by: Mike Crash <mike@mikecrash.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
8c87286fdcb67f796cc9477a9bc1a2f1e173d99f 19-Jun-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC662 auto-configuration code

The auto-configuration code didn't initialize the verbs correctly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a18519e1e4783628182743e6cca5f9dfa6a9e3bd 14-Jun-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for Toshiba A135

Added model=lenovo for Toshiba A135 with ALC861VD codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
febe3375ea690a6cf544c33fa0fea1a06ff451ee 12-Jun-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add HP Pavillion quirk to Realtek code

This patch adds the HP Pavillion a1589L desktop system to the ALC883
configuration table.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6f3bf657edf9c592cf9d92e07ab385bb0ede48c5 08-Jun-2007 Daniel T Chen <crimsun@ubuntu.com> [ALSA] hda-codec - Add quirk for another MSI laptop to alc883_cfg_tbl[]

This hg commit adds the SSID of another MSI laptop to the
alc883_cfg_tbl[] quirk list. Verified in #alsa/Freenode
on Thu, Jun 7, 2007.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
35739bb179386cf52c13d0779a42ecfe18dedf7e 06-Jun-2007 Dave Jones <davej@redhat.com> [ALSA] Yet another Uniwill laptop with ALC861 codec

From: Dave Jones <davej@redhat.com>
Rediffed version of the patch from ..
http://bugzilla.kernel.org/show_bug.cgi?id=8016
that seems to be lingering for some time.
Original patch by: Andy Shevchenko <andy@smile.org.ua>

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a361d84bfcd938208dea6c84aa19994b3d69e15d 05-Jun-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add support of ALC268 codec

Added the support of new ALC268 codec chip.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7d87de2db2213e6e9413532445b14c92dae42c85 05-Jun-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add proper model for HP xw series

Set the proper model for HP xw4550, xw4600, xw6600 and xw8600.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
799f88a3126cae3e59409f135da925cb0c1bc2c1 29-May-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for MSI K9N Ultra

This patch adds the MSI K9N Ultra system to the realtek patch.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
e60623b406ff3f8fea145466557f22daea671ae1 29-May-2007 Daniel T Chen <crimsun@ubuntu.com> [ALSA] hda-codec - Add quirk for Supermicro PDSBA to alc883_cfg_tbl[]

Tested and verified in #alsa/Freenode on Tuesday, May 29, 2007.

Signed-off-by: Daniel T Chen <crimsun@ubuntu.com>
Signed-off-by: crimsun@Box.ncat.edu
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
dd146a60cb70a843a8b3a21560fdcfb4c0c9c850 25-May-2007 Baruch Even <baruch@ev-en.org> [ALSA] hda-codec - Add quirk for MSI S420

Add a quirk for MSI S420 (based on a guess work).
From: Baruch Even <baruch@ev-en.org>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
36c3b4e60a83187e82bc9bcde854e765bde3d670 21-May-2007 Daniel Drake <dsd@gentoo.org> [ALSA] hda-intel: fix ASUS M2V detection

Commit f32610edab47f36946d23b883aeae91e15986121 added ALC660VD support, but
this caused a 2.6.21 regression for some users. The ASUS M2V device is
now detected as ALC660VD rather than ALC660/861 but the PCI quirk was not
carried over.
This patch allows affected users to use audio again.
http://bugzilla.kernel.org/show_bug.cgi?id=8273
https://bugs.gentoo.org/show_bug.cgi?id=178243

Signed-off-by: Daniel Drake <dsd@gentoo.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
272a527c04c0c4f548232f1ec7d2d72bfdab4384 14-May-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Fix ALC882/861VD codec support on some laptops

Fixed some platform no sound and Add JD Function for below platform list:
Sony(0x104d) 0x9015, 0x900e, 0x1f00
Toshiba(0x1179) DALLAS 0xff00, 0xff01
Targa(0x1462) 0x28fb
Asus(0x1043) A7J 0x060d
Lenovo(0x17aa) 0x3bfd, 0x2085
MEDION(0x17c0) MD2 0x4071

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
bdd148a307e230517bf891c108e0eec68ba5d10f 08-May-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add ALC861VD Lenovo support

- Added ALC861VD Lenovo support (17aa:3802, 17aa:2066)
- Modify alc_subsystem_id

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
458a4fabf185d90234225d7e05d81188b4dad9f1 05-May-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC880 uniwill auto-mutes

Fix the auto-mute controls of ALC880 uniwill model. Split to two
individual functions to handle HP and front-mic mutes. For front-mic
mute, use snd_hda_codec_amp_update() to be consistent with mixer.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f223a9fc3d5707c354588570e2cf1f3abf6b1f84 25-Apr-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix model for ASUS A9rp

Fixed the model (asus-laptop) for ASUS A9rp with ALC660 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
baba8ee9d12d17cac1042a5c816aef7d6610a6c3 23-Apr-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix output pin types in auto configuration

Use PIN_HP output type for HP pin widgets accordingly, instead of
always applying PIN_OUT.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
57b14f24d2a7aca65ddc6432fa89ebedf1219cc7 18-Apr-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Gigabyte S-Series GA-M57SLI-S4 motherboard

Added the support for Gigabyte S-Series GA-M57SLI-S4 motherboard
(model=6stack-dig).

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f12ab1e07dadecc3ac4774a7354c61baa83ff11f 12-Apr-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - clean up patch_realtek.c

Trivial code clean-ups of patch_realtek.c: indent and whitespace fixes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
bc9f98a9815c452a74e5eb9cbd2ed61b337fdcd2 12-Apr-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add ALC662 support

- Add ALC662 support
- Fixed no sound for [0x1631, 0xc017, 'PB V7900', ALC260_WILL]
- Fixed no sound for [0x161f, 0x2057, 'Replacer 672V', ALC260_REPLACER_672V]
- Add SKU ID for auto mode

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6b97eb45f2edca51250b6c1e3142801f069245fe 05-Apr-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix SPDIF output

Fix SPDIF output (at least on Realtek codecs). The DIGI_CONVERT verbs
have to be reset before the PCM stream is set up. Otherwise the digital
setup is screwed up.
Also, check the AMP capability before setting AMP of the digital out
widget.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
07e038b349f8fadf0b5c100dc9c3cab47327a244 15-Feb-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix models for some lpatops/mobos

Added the missing models for some laptops / mobos:
ASUS z35m, ASRock board

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a8a5d06775f54ab2d23ad6455db399c15a664feb 15-Mar-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for HP Compaq d5750

Added model=hp-3013 for HP Compaq d5750 with ALC260 codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
9720b718f6b92fec07b2408ab7ca60d5146f07e2 13-Mar-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for HP Compaq d5700

Added model=hp-3013 for HP Compaq d5700 desktop with ALC260 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cc69d12d0a063fd5f25d9b395357be5ba438b0c6 15-Feb-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing Mic Boost controls for ALC262

Added missing Mic Boost controls for ALC262 codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
081d17c4726131ba9ed763ea24f7235d8205fdf3 15-Feb-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add method for configuring Mac Pro without PCI SSID

This patch adds a switch to configure systems that do not provide
PCI SSID's for HD Audio like Mac Pro with ALC885.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2cf9f0fc69358e15e78f936c220cfe8aa208111d 07-Feb-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Fujitsu PI1556 Realtek ALC880

This patch adds support for the Fujitsu PI1556 laptop.
Issue: Volume knob on system maxes out lower than alsamixer (0x35 vs 0x40).
Everything else works, and audio quality is good at 0x35.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f32610edab47f36946d23b883aeae91e15986121 02-Feb-2007 Jakub Schmidtke <sjakub@gmail.com> [ALSA] hda-codec - Add ALC861VD/ALC660VD support

o Added ALC861VD support to patch_realtek.c under hda-intel
o Added ALC660VD as a model of 861VD
o Added pci quirks for Asus G1 as well as for two devices found in Realtek's
driver to point at ALC660VD model (3stack-660)
o Added pci quirk for Lenovo 3000 C200 - although untested, it should work
with ALC861VD 3stack model
o Changed preset id = 0x10ec0660 to point at new patch_alc861vd instead of
patch_861
o Organised the list of presets

Signed-off-by: Jakub Schmidtke <sjakub@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
4147dab62d1b4387c304888488e1f67a83ad53c8 31-Jan-2007 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for Uniwill X40AIx

Added model=uniwill-m31 for Uniwill X40AIx with ALC861 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cd7509a43c3047a6339484e5009c2db7ee4c7a51 26-Jan-2007 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add HP BPC-D7000 support

Add HP BPC-D7000 support.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
32360416322ddfcd2db2f7655f606c5b86a29102 24-Jan-2007 Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> [ALSA] hda-codec - Missing Mic Boost on Realtek ALC882/883

This patch adds Mic Boost controls for Realtek ALC882 and ALC883 chips.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
687a47bd829e040094cbc103126d5f03d46fd2bb 10-Jan-2007 Takashi Iwai <tiwai@suse.de> [ALSA] Fix a typo in the last patch_realtek.c change

Fixed a typo in the last patch_realtek.c change.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
30e80a279d864385306ed4bf905f00196d1c9656 09-Jan-2007 Jaroslav Kysela <perex@suse.cz> [ALSA] hda-codec - add ASUS W7J (0x1043, 0x1205) to quirk list - 3stack

See Novell-bug#228201 .

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2a296cb6633a719846eaf30fcec7f392c511537d 08-Jan-2007 Leonard Norrgard <leonard.norrgard@refactor.fi> [ALSA] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)

Recognize the Realtek ALC883 chip on MSI K9A Platinum motherboards (model
no. MS-7280), enabling full sound capabilities.
Error messages seen before this patch:
cannot find the slot for index 0 (range 0-0)
hda-intel: Error creating card!
HDA Intel: probe of 0000:00:14.2 failed with error -12
[akpm@osdl.org: updated to match recent ALSA table changes]

Signed-off-by: Leonard Norrgard <leonard.norrgard@refactor.fi>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
ad5e773750aeae3ad980f94b9f3cecad5af7c53d 08-Jan-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Toshiba M105 to Realtek patch

This patch adds support for the Toshiba M105-S3041 laptop (ALC861).

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
0e4ceb7507111c3910a0d7e19b498b1f6081afcb 08-Jan-2007 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Change default config for Asus P5GD1

This patch changes the default configuration for the Asus P5GD1
motherboard from 5stack to asus, as reported by stelek on
linuxquestions.org
http://www.linuxquestions.org/questions/showthread.php?p=2556497#post2556497

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7b9470d88492d8be22d1f5307fe28642db9affe5 28-Dec-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add Asus P5W DH to alc882_cfg_tbl

This patch adds the Asus P5W DH to the ALC882 config table
as a 6stack-dig system.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
dc041e0b1fc918562aa3803cda166fee219a34d2 19-Dec-2006 Robert P. J. Day <rpjday@mindspring.com> [ALSA] sound: Change final two instances of kcalloc(1,...) to kzalloc()

Change the two remaining instances in the tree of kcalloc(1,...) to
the corresponding kzalloc() call.

Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
4dc53e28e2e5cccb3521466be8f2ab4689ca9143 18-Dec-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add quirk for Turbo-X Coeus G610P

This patch adds the Turbo-X Coeus G610P to the alc880 config table,
based on user provided information.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
9102cd1c35c9be223e0f60b7c42cb581f0d42f1a 15-Dec-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec (realtek): add support for MacPro series workstations

This patch adds limited support for Intel-based MacPro workstations.
Currently, the front headphone jack is not functioning, but line out
and line in are working. S/PDIF not tested.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
bd869485993f73c303b565da5548bb4e77063c54 28-Nov-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - Make internal speaker work on Acer C20x tablets

The following patch creates a new 'Mono speaker' control in alsamixer
when the Realtek 'acer' model is used with hda_intel. This is needed so
the internal mono speaker (when present) can be controlled.
This new control won't do anything in Acer laptops which are not fitted with
a mono speaker. Acer models which are known to have a mono speaker are the
C20x tablet series but there may be others. I guess we could define a new
model specifically for Acers with mono speakers but this seems a bit silly
given that such a model will be identical to the normal 'acer' model except
for this added control.
This patch also adds the C20x tablets to the list of PCI ids associated with
the 'acer' model. This means that owners of C20x machines will no longer
have to supply 'model=acer' when loading hda_intel.

Signed-off-by: Jonathan Woithe <jwoithe@physics.adelaide.edu.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f5fcc13c2fc62da6f75d80189a51c2492afb39c0 24-Nov-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Use snd_pci_quirk_lookup() for board config lookup

Use snd_pci_quirk_lookup() for looking up a board config table.
The config table is sorted in numerical order of PCI SSIDs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d1d985f019c3b290e09881b7b23abdc87aee2895 23-Nov-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Fix obsolete *_t typedefs

Fixed obsolete *_t typedefs. Now completely removed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
56bb0cab1c1698544e61409e3727f2b6bc205501 22-Nov-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add asus-laptop model for ALC861 (ALC660)

Added a new model 'asus-laptop' for ASUS F2*/F3* laptops
with ALC861 (equivalent with ALC660) codec chip.
Also fixed the model for PCI SSID 1043:1338.
Corresponding to ALSA bug#2480.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
761ccb24b4cad211295a5abe231f418ad97aac04 20-Nov-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Evesham Voyager C530RD laptops

This patch adds support for the Evesham Voyager C530RD series laptops.
So far, only playback has been tested, but microphone should also work.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
9dece1d74bd41f593cb1d9e387dc894dd826abf7 16-Nov-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC861 connection of front-output

Fix the wrongly set SET_CONNECTION verb for NID 0x0f of ALC861.
The widget has only a single connection although the init verb
sets to 0x01.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a2ee47026025a3d1a5c2eccf3b0aa6c9fb02b101 16-Nov-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Change Gigabyte K8N51 from 6stack to 6stack-digout

This patch moves the entry for the Gigabyte K8N51 from the 6stack
grouping to the 6stack-digout grouping, allowing for S/PDIF output
functionality.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
d1f6754748a6523fcd35be7f4aaaf6fde5e5ca87 14-Nov-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Sony UX-90s

Added the model entry (model=hippo) for Sony UX-90s with ALC262 codec.
Although the device has no SPDIF output, the hippo model adds a
PCM output, but it must be harmless.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
b373bdebf57e2ac7994d9be3a68fd5507515caef 07-Nov-2006 Andrew L. Neporada <nepal@asplinux.ru> [ALSA] hda-codec - Clevo M540JE, M550JE laptops (Nvidia MCP51 chipset, ALC883 codec)

We need to enable External Amplifier on this laptops. This patch basicly
adds laptop-eapd model to ALC883 codec.

Signed-off-by: Andrew L. Neporada <nepal@asplinux.ru>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7cdbff945e9e3bb592dee2f66afbcc2255747f8f 23-Oct-2006 Mariusz Domanski <mariook@wp.pl> [ALSA] hda-codec - Add asus model to ALC861 codec

This patch adds support for Asus laptops (for example: Asus
A6Rp-AP002).

Signed-off-by: Mariusz Domanski <mariook@wp.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
ccc656ce5f6627032bd44e660071bb71e65a231a 17-Oct-2006 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add new modesl for Realtek codecs

Changes from Realtek driver:
- New models hippo and hippo_1 for ALC262
- New models tagra-dig and tagra-2ch-dig for ALC883
- New id for ALC660 codec chip

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
a53d1aece388d940831846f642810e47526883e8 17-Oct-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add toshiba model to ALC861 codec

This patch adds support for Toshiba laptops. Code is from
RealTek's alsa-driver-1.0.12-4.05b tree.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
35f60839b6158f72d2be0dd2764ad772e1d44e8a 13-Oct-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add missing comma

Added a missing comma in the medion patch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
c07584c83287ae5a13cc836f69a1d824ad068c66 13-Oct-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] hda-codec - Add support for Medion laptops

This patch adds audio support for Medion's line of laptops,
based on code shipped with the laptops. Microphone support is
still being explored.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
e22a9a8b703d05f13366c3f2e7e1aa0550bb5ca6 01-Jan-2007 Leonard Norrgård <leonard.norrgard@refactor.fi> [PATCH] sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)

Recognize the Realtek ALC883 chip on MSI K9A Platinum motherboards
(model no. MS-7280), enabling full sound capabilities.

Signed-off-by: Leonard Norrgård <leonard.norrgard@refactor.fi>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
efeccac5b79d3569112c886396935ce574f6af9e 24-Oct-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model for HP q965

Added a model entry (HP_BPC) for HP q965 with ALC262 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
bd2033f27f346610b11b40a74ff7d1d023abcfd9 10-Oct-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix wrong error checks in patch_{realtek,analog}.c

Fix wrong error checks of *_ch_mode_put() in patch_realtek.c and
patch_analog.c. snd_hda_ch_mode_put() could return a positive
value for success, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
282e0c87f223afbe8b182197eb06c127a66353ce 06-Nov-2006 John W. Linville <linville@tuxdriver.com> [ALSA] hda: fix typo for xw4400 PCI sub-ID

The PCI sub-device ID for the HP xw4400 is actually 0x280c.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
c06134d73cdc02bb8ab1fad180f6da1f28d2e049 11-Oct-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix assignment of PCM devices for Realtek codecs

Fixed the assignment of PCM devices for Realtek codecs.
The secondary analog capture should be statically asigned to the
third device regardless whether SPDIF exists or not.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7a99795477ca758a4b29ef3595edde2e067af85a 26-Sep-2006 Tobin Davis <tdavis@dsl-only.net> [ALSA] Add new subdevice ids for hda-intel

This patch adds a couple of device ids for Acer laptops. In both cases,
the owners got the driver working by adding 'model=acer' to their
modprobe.conf files.

Signed-off-by: Tobin Davis <tdavis@dsl-only.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
eb06ed8f4c2440558ebf465e8baeac6367d90201 20-Sep-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Support multiple headphone pins

Some machines have multiple headpohne pins (usually on the lpatop
and on the docking station) while the current hda-codec driver
assumes a single headphone pin. Now it supports multiple hp pins
(at least for detection).
The sigmatel 92xx code supports this new multiple hp pins.
It detects all hp pins for auto-muting, too.
Also, the driver checks speaker pins in addition. In some cases,
all line-out, speaker and hp-pins coexist.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
e08a007d1041e0bc3df6b855043d8efde91851aa 07-Sep-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix SPDIF device number of ALC codecs

Assign the SPDIF always to the secondary device (dev#1) to keep
the same configuration. Move the optional capture device to the
third device (dev#2).
hda_intel now just ignores the NULL entries in the pcm arrays
from codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
cd417d4fe89638a2848980cb389b9781d4913173 06-Sep-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for LG LW25 laptop

Added the support for LG LW25 laptop with ALC880 codec.
It's the same codec model as LG LW20 (model=lg-lw).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
bab282b912baf372d8f705357946ef691b621899 22-Aug-2006 Vladimir Avdonin <vldmrrr@yahoo.com> [ALSA] hda-codec - Fix for Acer laptops with ALC883 codec

Patch enables the internal speaker on acer laptops with ALC883.

Signed-off-by: Vladimir Avdonin <vldmrrr@yahoo.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2aaeee8bd1cf51b6ed7c751a8472cb77f3ddc642 21-Aug-2006 Tobin Davis <tobinx.b.davis@intel.com> [ALSA] hda-codec - add missing device ids

This patch adds missing device ids for Intel 915 and D102GGC
motherboards.

Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
c256652466127872f1b2e510431dc25524ba40ba 17-Aug-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add missing TLV callbacks for HD-audio codecs

Added missing TLV callbacks for HD-audio codec supports.
Also cleaned up the tlv callback for ad1986a (no mutex is needed there).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
22309c3e0c8911865cad0aa94f53a9afadaad7ee 09-Aug-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Added model for Uniwill laptop with ALC861

Added a new model 'uniwill-m31' for Uniwill laptops with ALC861
codec chip. The patch is taken from ALSA bug#2035, and modifeid.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
f5a5ffad072ec3c1fd636174c30f0ba52fe0259f 08-Aug-2006 Danny Tholen <danny@mailmij.org> [ALSA] [snd-hda-intel] fix sound on some Asus W6A chips

This patch adds support in ALSA snd-hda-intel driver for Asus W6A
motherboard as reported in MDV Bugzilla #19962
(see http://qa.mandriva.com/show_bug.cgi?id=19962)

Signed-off-by: Danny Tholen <danny@mailmij.org>
Signed-off-by: Thomas Backlund <tmb@mandriva.org>
Signed-off-by: Thierry Vignaud <tvignaud@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
25b6c43b3d6258f3e87244eeb2b9347dc5e83c40 08-Aug-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Fix the preselected model for HP machine

Fixed the preselected model for a HP machine with SSID 103c:3010
to use hp-3013 (ALSA bug#2157).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
4e195a7b78618c89b06547f3140e67a69ec23272 28-Jul-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Fix noisy output with shared channel mode with hd-audio

- Fix the wrong initialization of num_dacs when changing the channel
mode between 2 and multi-channel modes. It must be evaluated
after calling snd_hda_ch_mode_put()
- Added the similar check of num_dacs fix in Realtek code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
4b146cb087b4a668511f6c991da1dc40e2e04b0d 28-Jul-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Misc fixes for Realtek HD-audio codecs

- Added model=arima for Arima W820Di1 with ALC882 codec chip
- Added EAPD-control verbs to TCL S700 init verbs
- Added missing model strings for Realtek codecs (to be specified
via module option explicitly for testing/debugging)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
304dcaac91f0d26543b31fd7e63726f096c826ee 25-Jul-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add support of Benq laptop with ALC262

Added the support of Benq laptop with ALC262 codec.
A model string 'benq' is added, too.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
6d177ba7839dd7ed391c2f36b121eb09d1eaee4c 25-Jul-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add hp-bpc model type for HP laptops

Added 'hp-bpc' model type for HP xw4400-compatible laptops.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
5a053d012d0576e9306009939ca81a86547ef35a 25-Jul-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add model entry for Clevo m665n laptop

Added the proper model entry for Clevo m665n laptop with ALC880 codec.
Also, added a model string 'clevo' to enable the clevo-type model option.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
9c7f852e8b2cc37da5dc5e1ba416238166a37d0f 28-Jun-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecs

Patch from Realtek:
- Fix ALC883 support code
- Add support of ALC888 codec
- Add ALC660 support (ALC861-compatible)
- Add HP xw4400/6400/8400/9400 support (model=hp-bpc)
- Code clean-up: fix spaces and indentation

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
766a6c36f3a0b12e1c55dddc1df6673db6b22bfb 26-May-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix model for HP dc7600

Changed the assigned model for HP dc7600 with ALC260 codec
to match better with the actual I/O assignment.
Patch taken from ALSA bug#2157.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
474167d646cb2147b9fcd7bacf5cdf8177ed43c4 17-May-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix init verbs for ALC260 hp model

Use the basic init verbs for ALC260 instead of hp init verbs
since hp init verbs seem incomplete and not working on some machines.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0defb2672d7cde8d048eec35c183da7b88adbd9e 11-May-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix handling of capture controls on ALC882 3/6-stack models

Fixed the handling of capture controls on ALC882 3/6-stack models.
Now the driver checks the availability of NID 07h.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
3206b9ca9fba8dc8d6ddd371a3ff455c67ad137f 10-May-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for Sony Vaio VGN-S3HP

Added the missing support for Sony Vaio VGN-S3HP with ALC260 codec.
The patch taken from ALSA bug#2101.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
886da8677d2e4e942fc8984b22bfb8da45e810ec 02-May-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for LG S1 laptop

Added the model entry for LG S1 laptop.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5e1b1518a53fc62d9f39a13819c849336c6d8dd4 28-Apr-2006 Kenneth Crudup <kenny@panix.com> [ALSA] hda-codec - Add support for Sony Vaio VGN-A790 laptop

Added the model entry for Sony Vaio VGN-A790 laptop with ALC260 codec.
From: Kenneth Crudup <kenny@panix.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
531213a93f0e75b934471bf5567babad4da1ff70 18-Apr-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add entry for Epox EP-5LDA+ GLi

Added the SSID entry for Epox EP-5LDA+ GLi with ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a1e8d2da03b3a1017aab01d49666ec9b67927de5 28-Mar-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/Realtek: multiple input mux definitions and pin mode additions

The following patch relative to CVS from 20060324 adds the following
features to the Realtek HDA codec.

1) Define two new pin modes: ALC_PIN_DIR_IN_NOMICBIAS and
ALC_PIN_DIR_INOUT_NOMICBIAS. These can be used with jack mode switch
definitions in mixers to prevent the user being offered the mic bias
options if the hardware doesn't support it.

2) Add the ability to have different input mux definitions for different
ADCs. This is needed because the ALC260 chip uses different mux layouts
for the two onboard ADCs. A new field (num_mux_defs) was added to the
alc_spec and alc_config_preset structures to support this.

3) Adjust numerous comments to make them consistent with the above changes.

4) Utilise the new multi-mux definition functionality for the ALC260 fujitsu
model to allow recording of the mixer output.

5) Utilise the new multi-mux definition functionality for the ALC260 test
model to make the mux selections a little less confusing.

6) Allow the headphone jack of the ALC260 acer model to be retasked in
the mixer.

6) Utilise the new multi-mux definition functionality for the ALC260 acer
model to give access to the mixer output and the retasked headphone
jack.

At this stage the *_NOMICBIAS modes are not used. We have reports that the
"Line" jack of at least some Acer models doesn't pass the bias out, and we
also know that NIDs 0x0f and 0x10 don't seem to accept the mic bias requests
at all. However, I feel we need to collect more evidence on both counts
before committing to the use of *_NOMICBIAS. In the case of the Acers, it's
not clear whether this issue (probably caused by the inclusion of DC
blocking capacitors) affects all Acer models or just a small number. With
the issue with NIDs 0x0f and 0x10 it's unclear whether this is a hardware
bug which will be addressed in later chip revisions or if it's an
intentional restriction. The datasheet makes no mention of the restriction
so at this stage I'm inclined to consider it a hardware bug. Comments in
the source reflect this reasoning.

On a similar theme, the headphone jack of the Fujitsu S7020 also doesn't
appear to pass mic bias voltage. I'm still investigating this however.

With the ability to retask the headphone jack, owners of ALC260-based Acer
laptops should now be able to record 4 channels of audio if they desire. The
multiple mux definitions allow this jack to be presented from both ADCs
(since this mux input is one of those which differs between the muxes).

This patch has been tested on a Fujitsu S7020 laptop and appears to behave
itself both for the "test" and "fujitsu" models. Definitions using only a
single mux specification also work. Other ALC chips should be fine but I
cannot test these myself. The "auto" modes should also continue to function
but again I have not verified this.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d681518a56d25d21d73a421174d189242adc68c7 23-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add support of LG LW20 laptop

Add support of LG LW20 laptop with ALC880 codec (ALSA bug#1572).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
84f3430c7255668a0298d166605d27e3c96b5de4 21-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support for ASUS P4GPL-X

Modules: HDA Codec driver

Added the support ASUS P4GPL-X with ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
82bc955f6379135e6ce35ff90c7ac411fd412c4c 21-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix BIOS auto-configuration

Modules: HDA Codec driver,HDA generic driver

- Fix autoconfig speaker/hp detection
Now it allows multiple speaker pins (e.g. Dell laptops have such config)

- Use speaker or hp pins if no line-outs are available
This fixes the silence output on recent Dell laptops with STAC9200
(ALSA bug#1843)

- Fix analog/realtek/sigmatel autoconfig parser

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a12606cff106335650f0e9382e87b0fb08733eff 15-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model entry for FIC P4M-915GD1

Modules: HDA Codec driver

Add model entry for FIC P4M-915GD1 with ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ede3531e8ce2deb81e477e18d72ef10efeb20ebe 13-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix Aopen i915GMm-HFS mobo

Modules: HDA Codec driver

Add a model entry for Aopen i915GMm-HFS mobo with ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c1fc8047310c9d3147f9521af651a5823a72d218 06-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] Add default entry for CTL Travel Master U553W

Modules: HDA Codec driver

Added the default entry of ALC880 configuration table for
CTL Travel Master U553W.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
ae6b813a4dbba2713df497c032798b845289653f 03-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add lg model for LG laptop

Modules: Documentation,HDA Codec driver

Added a new model 'lg' for LG laptop (m1 express dual) with ALC880 codec.
Also clean up the initialization/unsol_event hooks in patch_realtek.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
834be88d136ee82828e3ce1b34fa7a1dcf947b81 01-Mar-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC262 for Fujitsu laptop

Modules: HDA Codec driver,HDA generic driver

Add 'fujitsu' model for ALC262 patch to support a FSC laptop.
The internal speaker is turned on/off with jack sensing.

Also fixed alc262 'basic' model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
92621f130e60da865de2f5aa6d3dec2ee844b803 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 7/7 - add SPDIF enable to test model

Modules: HDA Codec driver

This patch adds mixer controls to the 'test' ALC260 model which allow the
user to selectively enable or disable the SPDIF output pins. This should
assist people identify digital outputs on machines which bring them to the
outside world.

Note that while the patch *should* work, I cannot personally verify it since
my laptop doesn't bring the SPDIF lines out.

As for the GPIO switches added in patch 4, these controls are currently
only compiled in if debug mode is selected.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
f7ace40d14c46dca9a12ab753677adc17b1b906c 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 6/7 - Fujitsu/test model tweaks

Modules: HDA Codec driver

This patch is janitorial - it cleans up a number of cosmetic issues with
the 'fujitsu' and 'test' models. Issues addressed:

* spaces instead of tabs used for some indents,

* clarified/corrected selected comments.

Unlike a patch from earlier this week, this keeps both ADCs connected to
the mic1 pin widget by default. I believe this is the better default, since
some laptops don't bring the line1 widget to the outside world. Most (if
not all) do bring mic1 out though, so it seems to me that this default
should remain in place.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0bfc90e95946ac420e2de049707232ce18ddeba9 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 5/7 - add 'acer' model

Modules: HDA Codec driver

This patch adds a new 'acer' model. It is based on work by Rimas and many
other dedicated Acer owners over the past few weeks (see bug number
1618) - kudos to them. This adds support for a variety of Acer laptops,
although we are still in the process of collecting pci/subsystem IDs to add.
There are still some potentially outstanding issues: there are reports that
the CD control might not yet be functional for example. However, the time
is probably right to get a 'first cut' into the kernel which can be refined
as more test reports come in.

From the reports by various Acer owners, this code allows them to record
from internal mics and external jacks. Playback also seems to work to all
external jacks and the internal speaker. The 'beep' control doesn't appear
functional at the moment.

This patch depends on the changes made in patch 3/7.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5c8f858d71054960f08c46703a3f0fb36a752079 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 4/7 - add GPIO switches to test model

Modules: HDA Codec driver

This patch adds 'test' model mixer switches for the GPIO controls found on
the ALC260. It has been found that some laptops (eg: Acer) can use these to
enable particular controls, so it would be useful to have access to these
via the 'test' model. It will make testing new models easy, especially if
certain outputs cannot be made to work any other way.

This patch *should* work, but because the GPIO pins don't do anything in
my laptop I cannot personally verify that all this works as expected.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d57fdac0691d500d5c697e452f769335b22a75e3 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 3/7 - generalise some structures

Modules: HDA Codec driver

This patch generalises a structure added for the 'fujitsu' model but which
is potentially useful for other models as well. It turns the
'alc260_fujitsu_adc_nids' array into 'alc260_dual_adc_nids'; for other
models which decide to utilise the dual ADC functionality there's really
no reason why they need to define their own list of ADC nids.

The 'fujitsu' model preset is adjusted accordingly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
cdcd9268a1b03c6695ea07983ce029b2b4a099d8 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 2/7 - switch pin buffer enables

Modules: HDA Codec driver

This patch adds functionality which switches the input/output buffer enables
of retasking pins when the user changes their mode with the mode control.
This probably reduces noise *slightly* for recording compared to the case
where both input and output buffers were enabled simultaneously.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
17e7aec680a252ec0cea6d886d3983319af43ac4 28-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] HDA/ALC260: 1/7 - Fix test model input mux label

Modules: HDA Codec driver

This patch fixes input mux labels used for the ALC260 'test' model. This is
needed to avoid confusion which comes about because the two ADCs in the
ALC260 have slightly different mappings for their input selectors. Since
this is just the test model it's sufficient to simply report both options
where they exist. If a model comes along for which this becomes an issue,
the ALC260 input mux code will have to be extended to allow different mux
layouts for different ADCs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7cf51e48315d87b4c1cf600d611894f45f661142 09-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda: ALC260 test model implementation

Modules: HDA Codec driver

The following patch adds a 'test' ALC260 model specification to the
patch_realtek.c driver if CONFIG_SND_DEBUG is set. This is similar to the
'test' ALC880 model in that it sets up mixer controls for almost everything
to make it easier for people to test their laptop/soundcard when working out
what pin widgets are connected to which real-world devices.

This patch assumes my previous patch (adding the second PCM to the ALC260)
has previously been applied since it uses infrastructure added by that
patch.

In developing this patch it was found that not all retasking pins accept all
the modes - in particular, some ignore the VREFxx variants. The pin mode
control has therefore been tweaked to prevent this becoming a problem in
mixer applications.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8b33a5aa08c4e462360d812386dcecc0467efd7b 09-Feb-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda: minor correction to fujitsu ALC260 initverbs

Modules: HDA Codec driver

Jonathan Woithe <jwoithe@physics.adelaide.edu.au>

The following patch changes the initverbs associated with the output sum
widgets 0x08, 0x09 and 0x0a used with the fujitsu model in patch_realtek.c.
It is against alsa 1.0.11rc3.

Currently these widgets have their output muted, but a close reading of the
datasheet suggests that they don't actually have an output mute. They have
an *input* mute for each of their two inputs and a single output gain. This
patch therefore activates the input mutes and zeros the output gain. It has
not yet been tested but the above interpretation of the ALC260 datasheet
seems correct.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4c5186ed6b25278df595edf2d355ee87b00c4426 09-Feb-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda: add PCM for 2nd ADC on ALC260

Modules: HDA Codec driver

The following patch against alsa 1.0.11rc3 creates a PCM device (pcm1c) for
the second ADC present on the ALC260 codec used by the hda driver. It also
defines a new mixer control allowing the mode of retasking pins to be set;
this means a user can (for example) designate the headphone jack to be a
second input. With this patch in place it is possible to do 4 channel
recording on laptops equipped with an ALC260 codec assuming both a stereo
line-in jack is provided in addition to a headphone jack.

Mixer controls are provided to allow the headphone jack to be switched as
an input. In addition, an (input only) mode control is configured for
the line-in jack to allow a bias voltage to be requested (VREF80 or VREF50)
so headsets based on condensor microphones have a chance of working.

This patch has been tested on a Fujitsu S7020 laptop and as such these
features are currently only configured for the 'fujitsu' model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1494a92f4c2b1d5abdaa1f823dd19f797bb137de 31-Jan-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix typos in alc882 model table

Modules: HDA Codec driver

Fixed typos in alc882 model table.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
bae2bdb334c1ca5f4721e4fab1ca947f44455117 27-Jan-2006 Arnaud Patard <apatard@mandriva.com> [ALSA] patch_realtek.c: Add new model

Modules: HDA Codec driver

This little patch add the model for the motherboard K8N51 from Gigabyte
to the known models of ALC boards.

Signed-off-by: Arnaud Patard <apatard@mandriva.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
fd56f2db9385a651d31fe86eb4cc6cacbb0c5a63 24-Jan-2006 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - Fix init verb of ALC260

Modules: HDA Codec driver

Fixed the wrong widget id for line-2 selector in the init verb
of ALC260.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b14e77e613a104c78ab455c0109b566dab430de6 11-Jan-2006 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model entry for Sony VAIO

Modules: HDA Codec driver

Added an ALC260 model entry (basic) for Sony VAIO.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
041dec01736c59df43b0600c0fd154e50d8ccf6e 23-Dec-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add model entry for Shuttle ST20G5

Modules: HDA Codec driver

Added the model entry for Shuttle ST20G5.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7632c7b4443057e1294208a0d9a55d8558f2f6ca 07-Dec-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add the model entry for ASUS P5GD1-HVM

Modules: HDA Codec driver

Add the model entry (ALC880 6stack) for ASUS P5GD1-HVM.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
4a471b7ddfe76e39c1633d5a23a687f4b5fc0d8d 07-Dec-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Small clean up and fixes

Modules: HDA Codec driver,HDA generic driver

- Common labels for input pins
- Fix and clean up of Realtek codec parsers

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a3bcba384c2f2448ad204ea52baa15f1227d0d40 06-Dec-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix Oops with ALC260 auto-probe

Modules: HDA Codec driver

- Fix Oops with auto-probing of ALC260 with digital I/O
- Fix a typo

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c5f2ea08fbd8911e2c975094780d2b16e65f27e0 06-Dec-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix ALC codec probing

Modules: HDA Codec driver

- Fix ALC882 BIOS auto-probe
- Fix ALC262 basic model
- Add assert for debugging Oops

Signed-off-by: Takashi Iwai <tiwai@suse.de>
df694daa3c0135202e4702cb2d11e68a43f6c51e 05-Dec-2005 Kailang Yang <kailang@realtek.com.tw> [ALSA] hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861

Modules: HDA Codec driver,HDA generic driver

This patch adds the support of ALC262,ALC883,ALC885,ALC861 to driver
More models and improvements for ALC880, ALC260 and ALC882 codecs, too.

Signed-off-by: Kailang Yang <kailang@realtek.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
5014f193166d14e47525a34d65a1c7d77b0f6f38 23-Nov-2005 Libin Yang <libin.yang@intel.com> [ALSA] hda-codec - Fix auto-probe of ALC880

Modules: HDA Codec driver

This patch is to fix the problem of calculating the nid incorrectly
when auto-probe for ALC880. The problem to be fixed often behaves
with such words when using dmesg, 'num_steps = 0 for NID=0x8' when
auto-probe for ALC880.

The patch contains:
- alsa-kernel/pci/hda/patch_realtek.c: replace 'alc880_dac_to_idx'
with 'alc880_idx_to_dac' in function 'alc880_auto_fill_dac_nids()'

Signed-off-by: Libin Yang <libin.yang@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
54d174031576a2855c49611d83d4946bde81b504 21-Nov-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix connection list parsing

Modules: HDA Codec driver,HDA generic driver

- Fix connection list parsing (with ranged flag).
- Increase the max number of connections
- Introduce widget capabilities cache
- Power up/down widgets at init, suspend and resume

Signed-off-by: Takashi Iwai <tiwai@suse.de>
c8b6bf9b5ef1f595a65a3414a5ca2588e8d993b2 17-Nov-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Remove xxx_t typedefs: HD-Audio codec

Modules: HDA Codec driver,HDA generic driver

Remove xxx_t typedefs from the HD-Audio codec support codes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8d88bc3d361bdd81a214eb9c5d06b291d06c603a 17-Nov-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix assignment of speaker pin

Modules: HDA Codec driver,HDA generic driver

Fix the auto-assignment of speaker pin. Handle it independently from
line-out pins.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
d2a6d7dc757da6b57d77bd8b460cf4faa9fd152d 17-Nov-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add channel-mode helper

Modules: HDA Codec driver,HDA generic driver

Add common channel-mode helper functions for all codec patches.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
985be54ba8b042923f5a76276a1c0490aa8af7a1 02-Nov-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Minor rewrites

Modules: HDA Codec driver,HDA generic driver

- Make bound controls global to all patches
- Clean up analog patches (for the upcoming extension to AD1988)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
a9430dd8fc232cfddcfaedde1a6a915e241366a8 16-Sep-2005 Jonathan Woithe <jwoithe@physics.adelaide.edu.au> [ALSA] hda-codec - A new model for Fujitsu S7020

Modules: HDA Codec driver

Added a new model 'fujitsu' to ALC260 config for Fujitsu S7020.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
35451088f445955fe460a38b25b97c263ff35033 29-Sep-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Fix confliction of capture controls on ALC880 test model

HDA Codec driver
Fixed the confliction of capture controls on ALC880 'test' model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
92447f3f1a1c1af418eb1dfee85a7685d9b9a3ef 29-Sep-2005 John W. Linville <linville@tuxdriver.com> [ALSA] fix HD audio ALC882 lfe (un)mute

HDA Codec driver
Mark the ALC882 'LFE Playback Switch' as an input, like the other
playback switch settings.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
1c1fa8b69e6d538bcc1e58791938b31a2354ee65 29-Sep-2005 John W. Linville <linville@tuxdriver.com> [ALSA] fix alc880_test_mixer typo

HDA Codec driver
Fix a typo (cut & paste) in the alc880_test_mixer structure.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
a7175aab3f5cffe3c79575e56dfcfe87a41a74c7 29-Sep-2005 John W. Linville <linville@tuxdriver.com> [ALSA] fix HD audio ALC260 mono (un)mute

HDA Codec driver
The ALC260 'Mono Playback Switch' is marked as an output in
patch_realtek.c. It actually does not work unless it is marked as an
input. Go figure... This was tested and confirmed on an HP xw4300.

Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
e560d8d8368ad8b6161839984b253de622863265 09-Sep-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Replace with kzalloc() - pci stuff

AD1889 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver
BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver
ES1938 driver,ES1968 driver,FM801 driver,Intel8x0 driver
Intel8x0-modem driver,Maestro3 driver,SonicVibes driver,VIA82xx driver
VIA82xx-modem driver,AC97 Codec,AK4531 codec,au88x0 driver
CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver
HDA generic driver,HDA Intel driver,ICE1712 driver,ICE1724 driver
KORG1212 driver,MIXART driver,NM256 driver,Trident driver,YMFPCI driver
Replace kcalloc(1,..) with kzalloc().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
8648811f1db85eeacb821591ef11a2c229c29aa0 09-Sep-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Added ASUS A6

HDA Codec driver
Added ASUS A6 support for ALC880 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
0ca21611b668eee9ac07bb85825ce30002976550 05-Sep-2005 Davide Libenzi <davidel@xmailserver.org> [ALSA] hda-codec - Bring the Vaio's RA826G HDA (82801) to life ...

HDA Codec driver
Add the subsystem PCI devid to the list (on top of 2.6.13).

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
3c10a9d9f8c76fd87c92a14c201ae211d0b81288 23-Aug-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add beep support for Uniwill

HDA Codec driver
Added the missing beep support for Uniwill laptop (ALSA bug#1358).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
5a47fe3c5e8f394fb1578bbe8117f3dcc250b6fd 15-Aug-2005 Jaroslav Kysela <perex@suse.cz> [ALSA] hda-patch-realtek - added pci subdevice ID for Acer TravelMate 8100 (3 stack model + digital out)

HDA Codec driver

Signed-off-by: Jaroslav Kysela <perex@suse.cz>
7a318a70a42057692f191ff49c289cd3e27e21f5 28-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add entry for Acer APFV

HDA Codec driver
Added the model entry for Acer APFV.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b6482d48e536729829025262d6529df09ae20396 27-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add 6stack model for ALC880

Documentation,HDA Codec driver
- Added a new '6stack' model for ALC880.
- Fixed the typo in 6stack-digout model name.
- Added description for missing models in ALSA-Configuration.txt.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
b0af0de5cb57c96b0c3d739005172152b7de0ce8 21-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Fix oops with ALC880

HDA Codec driver
- Fixed oops with ALC880 auto-config mode
- Fixed a wrong config table entry for ALC880

Signed-off-by: Takashi Iwai <tiwai@suse.de>
543537bd922692bc978e2e356fcd8bfc9c2ee7d5 23-Jun-2005 Paulo Marques <pmarques@grupopie.com> [PATCH] create a kstrdup library function

This patch creates a new kstrdup library function and changes the "local"
implementations in several places to use this function.

Most of the changes come from the sound and net subsystems. The sound part
had already been acknowledged by Takashi Iwai and the net part by David S.
Miller.

I left UML alone for now because I would need more time to read the code
carefully before making changes there.

Signed-off-by: Paulo Marques <pmarques@grupopie.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
e9edcee061a80181f0d6e7cada07e1898c14718e 13-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - More fix of ALC880 codec support

Documentation,HDA Codec driver,HDA generic driver,HDA Intel driver
- Fix some invalid configurations, typos in the last patch
- Make init_verbs chainable, so that different configs can share the same
init_verbs
- Reorder and clean up the source codes in patch_realtek.c
- Add the pin default configuration parser, used commonly in cmedia
and realtek patch codes.
- Add 'auto' model to ALC880 for auto-configuration from BIOS
Use this model as default, and 3-stack as fallback

Signed-off-by: Takashi Iwai <tiwai@suse.de>
16ded525389c31256bcc9fd44352ab799b60b7fc 10-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Add support of more models with ALC codecs

HDA Codec driver,HDA Intel driver
Merged the work of pshou <pshou@realtek.com.tw> for the support of
more models with ALC codecs: ALC880 ASUS, Uniwill, FSC1734, generic 6-stack,
and ALC260 HP. Tests with the real hardwares are appreciated.

The codec patch is cleaned up: The preset configuration of codecs are
stored in the table and copied to the spec instance.

Added/fixed comments.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
05acb863a27e7f82d81c422b977415fa80b99f96 10-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] hda-codec - Clean up and fix ALC-codec support code

HDA Codec driver
Clean up and fix ALC-codec support code.

The last addition of bound volume is fixed now to handle correctly
the bound 'mute switches'. The analog loopback should work better.
The init verbs are fixed together with this change.

The numbers are replaced with macros for better readability.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
41e41f1f3495c6a7443977d2842d6911e3dcf31c 08-Jun-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Fix the analog loopback volumes of ALC codecs

HDA Codec driver
Fix the analog loopback volumes of ALC codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
71fe7b82db923e0f71b05deeb54fce75d5a4d08d 25-May-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Fix ALC880 capture problems

HDA Codec driver
Fixed the capture on some ALC880 devices.
The node 0x07 is sometimes invalid as an ADC. Also, the intialization
of ADC nodes are fixed on some models.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
fd2c326de8cd35a36514a887541426b1ef7c5516 13-May-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Allow more than 2 channel modes

HDA Codec driver
Allow 'Channel Mode' control to have more than 2 modes.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
7291548df69ab4e3a87ff6952449d1f05c3a5443 12-May-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Rename pci_vendor/pci_device to pci_subvendor/pci_subdevice

HDA Codec driver,HDA generic driver
Renamed pci_vendor/pci_device fields to pci_subvendor/pci_subdevice.
They are really PCI subsystem IDs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2fa522bed875cf0bde9e9fdb8fdd852c9d74d67d 12-May-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Add test model for debugging ALC880 devices

HDA Codec driver
Added 'test' model for testing/debugging the devices with ALC880 codec.
This model is built only when CONFIG_SND_DEBUG is set.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
dfc0ff62a1d24e987205b41fbf322a4377626481 12-May-2005 Takashi Iwai <tiwai@suse.de> [ALSA] Add ASUS Z71V support

Documentation,HDA Codec driver
Added the ASUS Z71V (or similar) laptop support.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 17-Apr-2005 Linus Torvalds <torvalds@ppc970.osdl.org> Linux-2.6.12-rc2

Initial git repository build. I'm not bothering with the full history,
even though we have it. We can create a separate "historical" git
archive of that later if we want to, and in the meantime it's about
3.2GB when imported into git - space that would just make the early
git days unnecessarily complicated, when we don't have a lot of good
infrastructure for it.

Let it rip!