Commit Graph

514 Commits

Author SHA1 Message Date
Tobin Davis
ae0a8ed8bf [ALSA] This patch adds more support for Dell systems with Stac9205 codecs.
Tested against a couple of different systems (with different pin
configs), but the others should also work.  Also cleaned up some of the
9205 patch code.

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>
2007-10-16 15:58:50 +02:00
Takashi Iwai
95e99fdadb [ALSA] hda-intel - Fix resume with power save
The controller power wasn't turned on properly at resume due to the
power-saving patch.  Now fixed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:49 +02:00
Takashi Iwai
cb53c626e1 [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>
2007-10-16 15:58:46 +02:00
Takashi Iwai
cca3b3718c [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>
2007-10-16 15:58:45 +02:00
Takashi Iwai
47fd830acf [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>
2007-10-16 15:58:43 +02:00
Takashi Iwai
82beb8fd36 [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>
2007-10-16 15:58:43 +02:00
Takashi Iwai
b3ac563641 [ALSA] hda-codec - introduce command register cache
This patch adds the cache for codec command registers.
snd_hda_codec_write_cache() and snd_hda_sequence_write_cache() do
the write operations with caching, which values can be resumed via
snd_hda_codec_resume_cache().
The patch introduces only the framework, and no codec code is using
this cache yet.  It'll be implemented in the following patch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:41 +02:00
Takashi Iwai
01751f54ff [ALSA] hda-codec - rewrite amp cache more generic
Rewrite the code to handle amp cache and hash tables to be more
generic.  This routine will be used by the register caches in the
next patch.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:41 +02:00
Tobin Davis
2880a8670d [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>
2007-10-16 15:58:28 +02:00
Tobin Davis
4ff076e5d9 [ALSA] hda-codec - Add more Dell systems
This patch adds support for Dell E520 and a couple of other 965 based 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>
2007-10-16 15:58:27 +02:00
Takashi Iwai
12f288bffe [ALSA] hda-intel - Remove invalid __devinit
Some functions in hda_codec.c are called from patch ops, which are
kept in the codec instance even after initialization.  Thus they
shouldn't be marked as __devinit.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:24 +02:00
Takashi Iwai
8259980ebc [ALSA] hda-codec - Fix GPIO in resume
Reinitialize GPIO in resume callback if necessary.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:18 +02:00
Takashi Iwai
d71a5c50ca [ALSA] hda-intel - Fix a typo in Makefile
Fixed a typo of CONFIG_SND_HDA_GENERIC.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:17 +02:00
Takashi Iwai
312d045c75 [ALSA] hda-intel - Fix compile warning in snd_hwdep_ioctl_compat()
Fix missing cast:
    sound/pci/hda/hda_hwdep.c:86: warning: passing argument 4 of 'hda_hwdep_ioctl' makes integer from pointer without a cast

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:16 +02:00
Tobin Davis
625dc0bf4d [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>
2007-10-16 15:58:16 +02:00
Takashi Iwai
82467611ff [ALSA] hda-codec - kernel config for each codec
Create kernel configs to choose the codec support codes to build.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:12 +02:00
Takashi Iwai
532d538179 [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>
2007-10-16 15:58:11 +02:00
Takashi Iwai
2807314d46 [ALSA] hda-intel - Add hwdep interface
Added a hwdep interface for each codec (enabled per kconfig).
This interface can be used for reading/writing HD-audio verbs
and other purposes as future extensions.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:10 +02:00
Takashi Iwai
d01ce99fc5 [ALSA] hda-intel - Coding style fixes
Fix codes to follow more to the standard kernel coding style.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:58:09 +02:00
Takashi Iwai
5b31954e4b [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>
2007-10-16 15:58:01 +02:00
Takashi Iwai
bddcf5411f [ALSA] hda-codec - Fix AD1988 SPDIF output
The SPDIF output on AD1988 had some problems due to the wrongly routed
analog loopback to SPDIF.  This patch fixes the implementation of
'IEC958 Playback Source' mixer to handle the amp bits of mixer widget
0x1d correctly.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-10-16 15:57:58 +02:00
Takashi Iwai
a5ce88909d [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>
2007-10-16 15:57:45 +02:00
Takashi Iwai
aafc03398b [ALSA] hda-codec - Fix input with STAC92xx
The recent fix for STAC92xx surround outputs broke the input pin
setting for shared line-in and mic jacks.  This patch fixes the
breakage.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:12:00 +02:00
Nicola Fagnani
c54728d8aa [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>
2007-07-20 11:12:00 +02:00
Claudio Matsuoka
c5d9f1cdbf [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>
2007-07-20 11:12:00 +02:00
Matthew Ranostay
87d483630a [ALSA] hda: Enable SPDIF in/out on some stac9205 boards
Added support for some boards with SPDIF in/out, and cleaned up the GPIO
enable function.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:57 +02:00
Claudio Matsuoka
ef64adbbba [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>
2007-07-20 11:11:53 +02:00
Claudio Matsuoka
4723c022e1 [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>
2007-07-20 11:11:53 +02:00
Claudio Matsuoka
e87f97a3e8 [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>
2007-07-20 11:11:52 +02:00
Claudio Matsuoka
e4f41da9e5 [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>
2007-07-20 11:11:52 +02:00
Matthew Ranostay
1b290a510c [ALSA] hda: stac9202 mixer fix
Added support for line out controls for STAC9202 cards, and fixed issue
where master mixer control was being created twice for headphone and
speaker outs.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:51 +02:00
Claudio Matsuoka
ef2ec0dd65 [ALSA] hda-codec - Add LG LW20 si3054 modem id
Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:51 +02:00
Claudio Matsuoka
be38114a49 [ALSA] hda-codec - Add VIA HDA to si3054
Add VIA HDA identification to use the HDA-based Motorola modem of
the Clevo m540 laptop.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:49 +02:00
Tobin Davis
2dcd522f89 [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>
2007-07-20 11:11:49 +02:00
Takashi Iwai
f95474ec05 [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>
2007-07-20 11:11:48 +02:00
Takashi Iwai
341d4eb0cf [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>
2007-07-20 11:11:48 +02:00
Takashi Iwai
43bbb6ccc6 [ALSA] hda-intel - Show the last command in warning messages
Show the last issued command in warning messages when any communication
error with CORB/RIRB occurs.
Also, a bit code clean-up for composing the command value in
*_send_cmd().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:47 +02:00
Takashi Iwai
a4eed138ad [ALSA] hda-codec - Fix number of pin widgets with STAC codecs
Use ARRAY_SIZE() to calculate the number of pin widgets for each codec
chip.
This also fixes a typo in STAC9205 code that gives a wrong number (14
instead of 12), which resulted in fatal communication errors.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:46 +02:00
Takashi Iwai
0f40502e0b [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>
2007-07-20 11:11:45 +02:00
Claudio Matsuoka
8341de60c7 [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>
2007-07-20 11:11:44 +02:00
Claudio Matsuoka
cd1e3b4042 [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>
2007-07-20 11:11:43 +02:00
Takashi Iwai
1624cb9a35 [ALSA] hda-codec - Fix the recording selection on VAIO laptop
Fix the mismatch of init verb and capture mux with VAIO STAC9872.
Also, changed the item names to be more intuitive.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:43 +02:00
Kailang Yang
067b5a844c [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>
2007-07-20 11:11:42 +02:00
Kailang Yang
83c34218a8 [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>
2007-07-20 11:11:42 +02:00
Claudio Matsuoka
0a8c5da3c0 [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>
2007-07-20 11:11:42 +02:00
Claudio Matsuoka
8f41b56645 [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>
2007-07-20 11:11:41 +02:00
Claudio Matsuoka
8481da5a8d [ALSA] hda-codec - Add support for HP Spartan
Added the model for HP Spartan with Conexant codec chip.
From: Claudio Matsuoka <cmatsuoka@gmail.com>

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:41 +02:00
Takashi Iwai
df802952b7 [ALSA] hda-codec - Fix the error in DAC assignment of STAC codec
The STAC codec support code has the automatic recognition of
additional side-output pins, and this may result in an error when
the assigned pin has no corresponding DAC connection.
The patch fixes the problem -- it corrects the line_outs again
without such additional pins.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:39 +02:00
Adrian Bunk
d10ad1a26d [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>
2007-07-20 11:11:39 +02:00
Tobin Davis
f8f794ab27 [ALSA] HDA - Change default configuration for Fujitsu Si3515
This patch changes the default configuration for the Fujitsu Siemens
Si3515 Laptop to the correct model=laptop.

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>
2007-07-20 11:11:38 +02:00
Mike Crash
6963f84c42 [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>
2007-07-20 11:11:37 +02:00
Takashi Iwai
e65365de5b [ALSA] Fix invalid schedule_timeout_interruptible()
Fixed the invalid use of schedule_timeout_interruptible() without
checking pending signals.  Simply replaced with schedule_timeout().
Suggestions thanks to Jeff Garzik.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:36 +02:00
Takashi Iwai
0ac8551ea0 [ALSA] hda-codec - Add AD1882 codec support
Added AD1882 codec support.  It has currently two models, 3stack and
6stack.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:33 +02:00
Jonathan Phenix
e25c05f1d5 [ALSA] hda-codec - Output MFG information for HDA devices
This patch output information about the MFG (Modem Function Group) to
the /proc/asound/card?/codec#? file. This information is important to
identify if a HDA device has a modem or not.

Signed-off-by: Jonathan Phenix <jonathan@linuxant.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:31 +02:00
Matthew Ranostay
92a22beb75 [ALSA] hda: add eapd support to additional idt codecs
Added support for EAPD on the 927x, and 9227-8 IDT HDA codecs.
Enabling EAPD powers the internal speaker amp otherwise there is no
sound on systems with an internal amp.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:30 +02:00
Takashi Iwai
76c0882870 [ALSA] hda-codec - Add model dell for Dell XPS M1210
Added a new model 'dell' for Dell XPS M1210 with STAC922x codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:30 +02:00
Tobin Davis
b69f374840 [ALSA] hda-codec - Add Fujitsu Siemens v3515 support to patch_conexant
This patch adds support for the Fujitsu Seimens Amilo Pro v3515 notebook.

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>
2007-07-20 11:11:30 +02:00
Takashi Iwai
8c87286fdc [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>
2007-07-20 11:11:29 +02:00
Takashi Iwai
a18519e1e4 [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>
2007-07-20 11:11:28 +02:00
Tobin Davis
febe3375ea [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>
2007-07-20 11:11:28 +02:00
Peer Chen
15cc4458c5 [ALSA] Add the MCP73/77 support to hda_intel driver
Add the MCP73/MCP77 support to hda driver.
The patch base on kernel 2.6.22-rc4

Signed-off-by: Peer Chen <peerchen@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:27 +02:00
Takashi Iwai
b959d1f83f [ALSA] hda-codec - Fix Thinkpad X61/T61 outputs
Enable EAPD bit on Thinkpad X61/T61.  The recent model requires it
explicitly to make any sounds.   In future, it should be toggled
automatically on demand.
Also, added a beep volume/switch.  Some people like it although I
don't understand why :)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:26 +02:00
Daniel T Chen
6f3bf657ed [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>
2007-07-20 11:11:25 +02:00
Dave Jones
35739bb179 [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>
2007-07-20 11:11:24 +02:00
Kailang Yang
a361d84bfc [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>
2007-07-20 11:11:24 +02:00
Kailang Yang
7d87de2db2 [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>
2007-07-20 11:11:24 +02:00
Takashi Iwai
538c49c41b [ALSA] hda-codec - Fix AD1984 basic model
Fix the amp direction of digital mic capture volume mixer, which
resulted in -EINVAL.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:23 +02:00
Takashi Iwai
3b194401a3 [ALSA] hda-codec - Fix Oops with AD1984 thinkpad model
Fixed Oops with AD1984 thinkpad model.  Also fixed the wrong
init verbs for NID 0x03 and 0x04, which have apparently no mute
bit.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:23 +02:00
Takashi Iwai
807a463603 [ALSA] hda-codec - Fix STAC922x capture boost level
STAC922x provides the capture boost level up to 4, but actually it
works only up to 2.  Since the range of the mixer is automatically
defined from amp-capability bits, we need to override the value
beforehand.  snd_hda_override_amp_caps() is introduced for this
purpose.
The function patch_stac922x() calls this for NID 0x12 (Mux Capture
Volume).  This should fix another recording problem on Intel Macs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:22 +02:00
Ivan N. Zlatev
5d5d3bc3ed [ALSA] hda-codec - Fix pin configs for Intel Macs
* adds the pinconfigs for all 5 Apple boards and 14 Subsystem IDs
  (support for possibly all iMac, Mac, MacMini etc etc)
* adds 'intel-mac-v1' to v5 models which replace the current
* reflects changes in Alsa-Configuration.txt

Signed-off-by: Ivan N. Zlatev <contact@i-nz.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:22 +02:00
Takashi Iwai
0ba7962b9f [ALSA] hda-codec - Fix wrong mixer controls for AD1984 thinkpad model
Fixed the wrong mixer controls for AD1984 thinkpad model.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:19 +02:00
Takashi Iwai
0dae0f83cd [ALSA] hda-codec - Add support of newer version of Intel iMac
Added the pin configs for newer version of Intel iMac.
The information provided by Ivan N. Zlatev <contact@i-nz.net>.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:19 +02:00
Takashi Iwai
2bac647c45 [ALSA] hda-codec - Add AD1884 / AD1984 codec support
Added the support of AD1884 and AD1984 codec chips.
Also experimental quirks for Thinkpad T61/X61 laptops with AD1984.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-07-20 11:11:18 +02:00
Takashi Iwai
897cc188f7 [ALSA] hda-codec - Fix STAC922x capture boost level
STAC922x provides the capture boost level up to 4, but actually it
works only up to 2.  Since the range of the mixer is automatically
defined from amp-capability bits, we need to override the value
beforehand.  snd_hda_override_amp_caps() is introduced for this
purpose.
The function patch_stac922x() calls this for NID 0x12 (Mux Capture
Volume).  This should fix another recording problem on Intel Macs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-31 09:06:04 +02:00
Takashi Iwai
f9acba4347 [ALSA] hda-codec - Fix input with STAC92xx
The recent fix for STAC92xx surround outputs broke the input pin
setting for shared line-in and mic jacks.  This patch fixes the
breakage.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-31 09:06:04 +02:00
Steve Longerbeam
7353e14d91 [ALSA] hda-codec - Fix pin configs for Gateway MX6453
Fix pin default configs for speaker associations and sequence
for Gateway MX6453 machine with STAC925x codecs.

Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-31 09:06:03 +02:00
Tobin Davis
799f88a312 [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>
2007-05-31 09:06:03 +02:00
Daniel T Chen
e60623b406 [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>
2007-05-31 09:06:03 +02:00
Baruch Even
dd146a60cb [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>
2007-05-31 09:06:03 +02:00
Daniel Drake
36c3b4e60a [ALSA] hda-intel: fix ASUS M2V detection
Commit f32610edab 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>
2007-05-31 09:06:02 +02:00
Christian Rothlaender
3b542985ed [ALSA] hda-codec - Add support for ASUS A8J modem
This patch adds support for the ASUS A8J Series 56k Modem (Motorola SM56)

Signed-off-by: Christian Rothlaender <christian@rothlaender.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-31 09:06:02 +02:00
Tobin Davis
fb3409e71f [ALSA] HDA: Fix headphone mute issue on non-eapd Conexant systems
This patch fixes an automute code issue for systems that do not rely
on eapd support.

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>
2007-05-31 09:06:02 +02:00
Tobin Davis
49c605db8d [ALSA] HDA: Add more systems to Sigmatel codec
This patch adds more Dell systems and a Panasonic laptop with
STAC9200 codecs.

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>
2007-05-31 09:06:02 +02:00
Tobin Davis
2c11f955b2 [ALSA] HDA: Add support for Gateway NX860
This patch adds support for the Gateway NX860 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>
2007-05-31 09:06:01 +02:00
Daniel T Chen
8286c53e54 [ALSA] Include quirks from Ubuntu Dapper/Edgy/Feisty
Included is a patch against current alsa-kernel hg tip adding
quirks that Ubuntu Dapper/Edgy/Feisty contains.

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>
2007-05-16 12:23:03 +02:00
Kailang Yang
272a527c04 [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>
2007-05-16 11:45:29 +02:00
Takashi Iwai
b75e53f092 [ALSA] hda-codec - Make the mixer capability check more robust
In some cases, mixer elements return -EINVAL because it couldn't
obtain proper amp_cap bits.  The patch improves the robustness,
trying the amp_cap query again in such a case.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-16 11:45:28 +02:00
Steve Longerbeam
81937d3bac [ALSA] Add speaker pin sequencing to hda_codec.c:snd_hda_parse_pin_def_config()
Some verb tables (such as an Asus VT sent by IDT) contain only speaker
outs in the default pin configs, and no line-outs. In such a case the
speaker sequence numbers have to be used to order the speaker out
pins, just as is being done for line-out pins. Then, when speaker-outs
are copied to line-outs, the line-outs will be ordered properly.

Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:18 +02:00
Kailang Yang
bdd148a307 [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>
2007-05-11 16:56:18 +02:00
Takashi Iwai
0bbed758c0 [ALSA] hda-codec - Fix connection list in generic parser
Fix the retrival of widget connection list in the generic parser.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:17 +02:00
Takashi Iwai
d427c77eb2 [ALSA] hda-codec - Fix a typo
The AMP mute bit is bit 7.  No real influence since no one uses this
definition yet, though...

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:17 +02:00
Takashi Iwai
458a4fabf1 [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>
2007-05-11 16:56:15 +02:00
Takashi Iwai
35b26722a1 [ALSA] hda-codec - Fix AD1988 SPDIF playback route control
Fix AD1988 SPDIF playback route control for selecting ADC1-3.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:15 +02:00
Steve Longerbeam
7b04389999 [ALSA] hda-codec - bug fixes for stac92xx HDA codecs.
* fixed surround playback on stac922x. Pin direction control bits were
  not being set correctly in stac92xx_set_pinctl(). Specifically it
  would refuse to set the port as an output if the port was already
  configured as an input. Last hunk (#8).
* fixed an input mux bug on 92xx codecs. When there is more than one
  possible input calculated for the muxes, the actual mux widget never
  gets set from its reset default, which is index 0, in the stac9221
  case that is port E. So alsamixer/amixer/gnome-mixer report the Mic
  as being the selected input source, but in fact is something else
  (line-in port E in stac9221 case). Another problem with this is that
  if you actually try to set the mux input to 'Mic', nothing happens
  because *cur_val == idx (see snd_hda_input_mux_put). You have to
  actually toggle input source to line-in then back to mic to actually
  set the mux widget. Hunk #7.
* fixed some typos in patch_sigmatel.c. Hunk #6.
* fix to stac92xx_add_dyn_out_pins() that fixes surround playback on
  codecs with less that 4 DACs (stac9205 for example). It reads the widget
  caps cache created by hda_codec to count the total number of analog DACs
  found. It then uses that to determine whether there will be enough
  independent DACs available for line/mic switch controls. Hunk #1, #2,
  and #3.
* improvements to stac92xx_auto_fill_dac_nids() to make it more general.
  This fixes surround playback on some codecs in combination with the
  fix to stac92xx_add_dyn_out_pins() above. It reads the full connection
  list now, instead of just the first entry, and then locates an analog
  DAC in the list. If one is found and it's free, assign it to that line-out.
  If no free DAC is found for the line-out, return -ENODEV. It also makes
  sure to actually select the chosen DAC if more than one DAC is input to
  the pin. Hunks #4, #5.

Signed-off-by: Steve Longerbeam <stevel@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:15 +02:00
Takashi Iwai
5d403b1923 [ALSA] hda-codec - Fix resume of STAC92xx codecs
Added a missing call to resume mixer controls for STAC92xx codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:14 +02:00
Tobin Davis
4d69d756d1 [ALSA] hda-codec - Add support for new HP DV series laptops
This patch adds support for 3 new HP laptops to the Conexant
'Venice' driver.

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>
2007-05-11 16:56:13 +02:00
Sylvain FORET
f16928fb53 [ALSA] snd_hda_intel: fix for intel imac
Add handling of Intel-iMac-specific pinconfig of the sound card.
Intel-iMac now handled as a separated subsystem.

Signed-off-by: Sylvain FORET <sylvain.foret@anu.edu.au>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:12 +02:00
Wolke Liu
e6db111931 [ALSA] hda-intel - Add ATI RS780,R600 HDMI audio support
This patch is for ATI RS780 and R600 HDMI support.

Signed-off-by: Wolke Liu <wolke.liu@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:12 +02:00
Takashi Iwai
43ea1d478f [ALSA] hda-codec - Prefer audio codec name as the mixer name
Prefer the name of audio codecs as the mixer name even if
modem codecs are probed before the audio codecs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:12 +02:00
Takashi Iwai
f223a9fc3d [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>
2007-05-11 16:56:10 +02:00