openwrt/staging/blogic.git
15 years agoALSA: hda - Added HP HDX16/HDX18 notebook support for HDA codecs (82HD71)
Christoph Plattner [Sun, 8 Mar 2009 22:19:05 +0000 (23:19 +0100)]
ALSA: hda - Added HP HDX16/HDX18 notebook support for HDA codecs (82HD71)

Added codec recognition of HP HDX platforms and added support of the
MUTE LED (orange/white). For this feature the CONFIG_SND_HDA_POWER_SAVE
is needed to use event handling for mute control.

Signed-off-by: Christoph Plattner <christoph.plattner@gmx.at>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Assign HP and speaker DACs before mic/line-in
Takashi Iwai [Fri, 6 Mar 2009 11:10:41 +0000 (12:10 +0100)]
ALSA: hda - Assign HP and speaker DACs before mic/line-in

Assign DACs to HP and speaker before mic-in/line-in shared outputs.
This improves the usability as it results in more intuitive mixer
names.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Connect to primary DAC if no individual DAC is available
Takashi Iwai [Fri, 6 Mar 2009 11:00:24 +0000 (12:00 +0100)]
ALSA: hda - Connect to primary DAC if no individual DAC is available

In stac92xx_auto_fill_dac_nids[], connect to the primary DAC if no
individual DAC is available for each pin.  This ensures that the pin
works somehow at least.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Create multiple HP / speaker controls with index
Takashi Iwai [Fri, 6 Mar 2009 09:13:24 +0000 (10:13 +0100)]
ALSA: hda - Create multiple HP / speaker controls with index

Create multiple "Headphone" and "Speaker" controls with non-zero index
numbers instead of "Headphone2", etc.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Allow slave controls with non-zero indices
Takashi Iwai [Fri, 6 Mar 2009 09:08:14 +0000 (10:08 +0100)]
ALSA: hda - Allow slave controls with non-zero indices

Fix snd_hda_add_vmaster() to check the non-zero indices of slave controls.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Create output controls according to pin types for IDT/STAC
Takashi Iwai [Fri, 6 Mar 2009 09:00:05 +0000 (10:00 +0100)]
ALSA: hda - Create output controls according to pin types for IDT/STAC

Improve the parser to pick up more intuitive control names for the
outputs judging from the pin type, instead of fixed names assigned
to channels.

Also, revive the multi-HP workaround since this change fixes the
problem with the multi-HP detection.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 6 Mar 2009 08:52:36 +0000 (09:52 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Fix headphone-detect regression with multiple HP jacks
Takashi Iwai [Fri, 6 Mar 2009 08:43:58 +0000 (09:43 +0100)]
ALSA: hda - Fix headphone-detect regression with multiple HP jacks

The recent changes over the DAC detection mechanism in patch_sigmatel.c
breaks the HP detection on the machines with multiple HP jacks.
It's basically because of the workaround to support the multi-channel
output.  Since the HP detection is more important feature, disable
the HP-swap workaroud temporarily.

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

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Fix typos in slave controls in patch_sigmatel.c
Takashi Iwai [Fri, 6 Mar 2009 08:42:07 +0000 (09:42 +0100)]
ALSA: hda - Fix typos in slave controls in patch_sigmatel.c

"Headphone Playback ..." appears twice in slave_vols[] and slave_sws[].
They should be "Headphone Playback2 ..."

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: Fix sample rate of Lenovo Ideapad to 44.1kHz
Takashi Iwai [Thu, 5 Mar 2009 13:18:16 +0000 (14:18 +0100)]
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>
15 years agoALSA: hda - Fix check of ALC888S-VC in alc888_coef_init()
Takashi Iwai [Thu, 5 Mar 2009 08:40:16 +0000 (09:40 +0100)]
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>
15 years agoALSA: hda - Map 3stack-hp model (ALC888) for HP Educ.ar
Herton Ronaldo Krzesinski [Wed, 4 Mar 2009 17:22:52 +0000 (14:22 -0300)]
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>
15 years agoALSA: hda - Add headphone automute support for 3stack-hp model (ALC888)
Herton Ronaldo Krzesinski [Wed, 4 Mar 2009 17:22:51 +0000 (14:22 -0300)]
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>
15 years agoALSA: hda - Add 4 channel mode for 3stack-hp model (ALC888)
Herton Ronaldo Krzesinski [Wed, 4 Mar 2009 17:22:50 +0000 (14:22 -0300)]
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>
15 years agoALSA: hda - Fix conflict of mixer controls on Sony VAIO VGN-AR71S
Takashi Iwai [Wed, 4 Mar 2009 10:30:25 +0000 (11:30 +0100)]
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>
15 years agoALSA: hda - Fix HP dv6736 mic input
Takashi Iwai [Wed, 4 Mar 2009 08:03:50 +0000 (09:03 +0100)]
ALSA: hda - Fix HP dv6736 mic input

Fix the mic input of HP dv6736 with Conexant 5051 codec chip.
This laptop seems have no mic-switching per jack connection.
A new model hp-dv6736 is introduced to match with the h/w implementation.

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

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Fix gcc compile warning
Takashi Iwai [Tue, 3 Mar 2009 14:00:35 +0000 (15:00 +0100)]
ALSA: hda - Fix gcc compile warning

It's false positive, but annoying.
  sound/pci/hda/hda_codec.c: In function ‘get_empty_pcm_device’:
  sound/pci/hda/hda_codec.c:2772: warning: ‘dev’ may be used uninitialized in this function

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Update documetation for hints sysfs entry
Takashi Iwai [Mon, 2 Mar 2009 16:34:51 +0000 (17:34 +0100)]
ALSA: hda - Update documetation for hints sysfs entry

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add more hint options for IDT/Sigmatel codecs
Takashi Iwai [Mon, 2 Mar 2009 13:38:35 +0000 (14:38 +0100)]
ALSA: hda - Add more hint options for IDT/Sigmatel codecs

Allow more options to be set/reset via hwdep hint entry.
hp_detect, gpio_mask, gpio_dir, gpio_data, eapd_mask and eapd_switch
can be checked.

For example, to disable hp_detect on the fly,
# echo "hp_detect=0" > /sys/class/sound/hwC0D0/hints

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Create "Analog Loopback" controls optionally
Takashi Iwai [Mon, 2 Mar 2009 13:26:25 +0000 (14:26 +0100)]
ALSA: hda - Create "Analog Loopback" controls optionally

Don't create "Analog Loopback" controls as default since these controls
are usually more harmful than useful for normal users.
Only created when "loopback = yes" hint is given.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add show for init_verbs and hints sysfs entries
Takashi Iwai [Mon, 2 Mar 2009 16:09:25 +0000 (17:09 +0100)]
ALSA: hda - Add show for init_verbs and hints sysfs entries

Added the show method for init_verbs and hints hwdep sysfs entries.
They show the current values.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add hint string helper functions
Takashi Iwai [Mon, 2 Mar 2009 13:25:17 +0000 (14:25 +0100)]
ALSA: hda - Add hint string helper functions

Added snd_hda_get_hint() and snd_hda_get_bool_hint() helper functions
to retrieve a hint value.

Internally, the hint is stored in a pair of two strings, key and val.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Don't return a fatal error at PCM-creation errors
Takashi Iwai [Mon, 2 Mar 2009 09:46:03 +0000 (10:46 +0100)]
ALSA: hda - Don't return a fatal error at PCM-creation errors

Don't return a fatal error to the driver but continue to probe when
any error occurs at creating PCM streams for each codec.
It's often non-fatal and keeping it would help debugging.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Revert the codec probe at control-creation errors
Takashi Iwai [Mon, 2 Mar 2009 09:44:15 +0000 (10:44 +0100)]
ALSA: hda - Revert the codec probe at control-creation errors

Revert the codec probe instead of returning the error to the driver
when any error occurs at creating the control elements.
The control element conflict can be non-fatal in many cases,
especially if it comes from the digital-only codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Intialize more codec fields in snd_hda_codec_reset()
Takashi Iwai [Mon, 2 Mar 2009 09:35:29 +0000 (10:35 +0100)]
ALSA: hda - Intialize more codec fields in snd_hda_codec_reset()

Initiailize forgotten fields in snd_hda_codec_reset().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Remove Toshiba probe_mask quirk
Takashi Iwai [Mon, 2 Mar 2009 07:06:11 +0000 (08:06 +0100)]
ALSA: hda - Remove Toshiba probe_mask quirk

Revert the Toshiba probe_mask quirk for 2.6.29 kernel
(commit 38f1df27e3191d76e983cb9c6b4392582fd32fda).
In the current tree, the digital-only codec is handled properly so
no codec conflict should occur.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Don't create a beep control for digital-only ALC268
Takashi Iwai [Mon, 2 Mar 2009 07:04:35 +0000 (08:04 +0100)]
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>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Mon, 2 Mar 2009 07:04:10 +0000 (08:04 +0100)]
Merge branch 'fix/hda' into topic/hda

Conflicts:
sound/pci/hda/hda_intel.c

15 years agoALSA: hda - Add probe_mask default for Toshiba laptop with ALC268
Takashi Iwai [Sun, 1 Mar 2009 09:55:44 +0000 (10:55 +0100)]
ALSA: hda - Add probe_mask default for Toshiba laptop with ALC268

Some Toshiba laptops have another ALC268 codec on slot#3 that conflicts
with the primary codec.  The codec#3 is for the digital I/O, and should
be fixed by the driver, but it'd need a bunch of changes.

So, let's fix the probe problem temporarily by setting the default
probe_mask value.

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

Tested-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Fix an "unused variable" compile warning
Takashi Iwai [Fri, 27 Feb 2009 16:52:22 +0000 (17:52 +0100)]
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>
15 years agoALSA: hda - Match all 103c:17xx devices for HP BPC model
Takashi Iwai [Fri, 27 Feb 2009 16:49:44 +0000 (17:49 +0100)]
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>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 27 Feb 2009 16:47:31 +0000 (17:47 +0100)]
Merge branch 'fix/hda' into topic/hda

Conflicts:
sound/pci/hda/patch_realtek.c

15 years agoALSA: hda - Add quirk for new HP xw series
Takashi Iwai [Fri, 27 Feb 2009 16:44:07 +0000 (17:44 +0100)]
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>
15 years agoALSA: hda - Fix digital mic on dell-m4-1 and dell-m4-3
Takashi Iwai [Fri, 27 Feb 2009 16:36:33 +0000 (17:36 +0100)]
ALSA: hda - Fix digital mic on dell-m4-1 and dell-m4-3

Fix num_dmuxes initialization for dell-m4-1 and dell-m4-3 models
of IDT 92HD71bxx codec, which was wrongly set to zero.

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add the Device IDs for MCP89 and remove IDs of MCP7B
peerchen [Fri, 27 Feb 2009 09:03:19 +0000 (17:03 +0800)]
ALSA: hda - Add the Device IDs for MCP89 and remove IDs of MCP7B

Added the Device IDs for MCP89 HD audio controller.
Removed the IDs of MCP7B cause this chipset had been cancelled.

Signed-off-by: Peer Chen <peerchen@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add model=auto for STAC/IDT codecs
Takashi Iwai [Thu, 26 Feb 2009 15:50:43 +0000 (16:50 +0100)]
ALSA: hda - Add model=auto for STAC/IDT codecs

Added the model=auto to STAC/IDT codecs to use the BIOS default setup
explicitly.  It can be used to disable the device-specific model quirk
in the driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Clean up the input pin setup in automatic mode
Takashi Iwai [Thu, 26 Feb 2009 12:03:58 +0000 (13:03 +0100)]
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>
15 years agoALSA: sound/pci/hda: fix sparse warning: different signedness
Hannes Eder [Wed, 25 Feb 2009 21:28:45 +0000 (22:28 +0100)]
ALSA: sound/pci/hda: fix sparse warning: different signedness

Fix this sparse warning:
  sound/pci/hda/hda_codec.c:1544:19: warning: incorrect type in assignment (different signedness)
  sound/pci/hda/hda_codec.c:1544:19:    expected unsigned long *vals
  sound/pci/hda/hda_codec.c:1544:19:    got long *<noident>

Signed-off-by: Hannes Eder <hannes@hanneseder.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Clean up / fix quirk for Sony laptops with ALC262
Takashi Iwai [Wed, 25 Feb 2009 23:57:01 +0000 (00:57 +0100)]
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>
15 years agoALSA: hda - Clean up / fix quirks for HP laptops with AD1984A
Takashi Iwai [Wed, 25 Feb 2009 17:12:13 +0000 (18:12 +0100)]
ALSA: hda - Clean up / fix quirks for HP laptops with AD1984A

Use SND_PCI_QUIRK_MASK() to clean up / support better HP laptops with
AD1984A codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add pseudo device-locking for clear/reconfig
Takashi Iwai [Mon, 23 Feb 2009 15:57:04 +0000 (16:57 +0100)]
ALSA: hda - Add pseudo device-locking for clear/reconfig

Added the pseudo device-locking using card->shutdown flag to avoid
the crash via clear/reconfig during operations.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'test/hda-pincfg' into topic/hda
Takashi Iwai [Mon, 23 Feb 2009 13:15:47 +0000 (14:15 +0100)]
Merge branch 'test/hda-pincfg' into topic/hda

15 years agoALSA: hda - Add an example about pin reconfiguration
Takashi Iwai [Mon, 23 Feb 2009 13:14:51 +0000 (14:14 +0100)]
ALSA: hda - Add an example about pin reconfiguration

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Don't give over 0dB volume for AD1984A HP laptops
Takashi Iwai [Mon, 23 Feb 2009 10:33:34 +0000 (11:33 +0100)]
ALSA: hda - Don't give over 0dB volume for AD1984A HP laptops

Set the upper limit 0dB to the volume of mixer amp 0x20 for
AD1984A HP laptops.  The overloaded volume may damage the internal
speaker.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Make user_pin overriding the driver setup
Takashi Iwai [Mon, 23 Feb 2009 08:45:59 +0000 (09:45 +0100)]
ALSA: hda - Make user_pin overriding the driver setup

Make user_pin overriding even the driver pincfg, e.g. the static / fixed
pin config table in patch_sigmatel.c.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Rename {override,cur}_pin with {user,driver}_pin
Takashi Iwai [Mon, 23 Feb 2009 08:42:57 +0000 (09:42 +0100)]
ALSA: hda - Rename {override,cur}_pin with {user,driver}_pin

Rename from override_pin and cur_pin with user_pin and driver_pin,
respectively, to be a bit more intuitive.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Use snd_hda_codec_get_pincfg() in the rest places
Takashi Iwai [Mon, 23 Feb 2009 08:28:12 +0000 (09:28 +0100)]
ALSA: hda - Use snd_hda_codec_get_pincfg() in the rest places

Replace with snd_hda_codec_get_pincfg() in the places where available.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Mon, 23 Feb 2009 07:14:41 +0000 (08:14 +0100)]
Merge branch 'fix/hda' into topic/hda

Conflicts:
sound/pci/hda/patch_realtek.c

15 years agoALSA: hda - Quirk for Acer Aspire 6530G
Juan Jesus Garcia de Soria [Mon, 23 Feb 2009 07:11:59 +0000 (08:11 +0100)]
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>
15 years agoALSA: hda - add another MacBook Pro 3,1 SSID
Luke Yelavich [Mon, 23 Feb 2009 02:00:33 +0000 (13:00 +1100)]
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>
15 years agoALSA: hda - add support for "Maxdata Favorit 100XS" (Intel HDA/ALC260)
Michael Schwingen [Sun, 22 Feb 2009 17:58:45 +0000 (18:58 +0100)]
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>
15 years agoALSA: hda - Update documentation for pincfg sysfs entries
Takashi Iwai [Fri, 20 Feb 2009 13:50:35 +0000 (14:50 +0100)]
ALSA: hda - Update documentation for pincfg sysfs entries

Added the brief descriptions of new sysfs entries for pint default
config values.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Remove codec-specific pin save/restore functions
Takashi Iwai [Fri, 20 Feb 2009 13:37:42 +0000 (14:37 +0100)]
ALSA: hda - Remove codec-specific pin save/restore functions

Replace the accessor to pin defaults with the common code for caching.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Remove IDT codec-specific pin save/restore functions
Takashi Iwai [Fri, 20 Feb 2009 13:33:36 +0000 (14:33 +0100)]
ALSA: hda - Remove IDT codec-specific pin save/restore functions

Removed its own save/restore functions and replaced with the common code.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Remove realtek codec-specific pin save/restore functions
Takashi Iwai [Fri, 20 Feb 2009 13:13:06 +0000 (14:13 +0100)]
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>
15 years agoALSA: hda - Add generic pincfg initialization
Takashi Iwai [Fri, 20 Feb 2009 13:11:16 +0000 (14:11 +0100)]
ALSA: hda - Add generic pincfg initialization

Added the generic pincfg cache and save/restore functions.
Also introduced the pin-overriding via hwdep sysfs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 20 Feb 2009 15:06:47 +0000 (16:06 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Fix parse of init_verbs sysfs entry
Takashi Iwai [Fri, 20 Feb 2009 14:59:01 +0000 (15:59 +0100)]
ALSA: hda - Fix parse of init_verbs sysfs entry

Fixed the parse of init_verbs hwdep sysfs entry.
Simplieied using sscanf.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add digital-only mode for ALC268
Takashi Iwai [Thu, 19 Feb 2009 07:15:49 +0000 (08:15 +0100)]
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>
15 years agoALSA: hda - Avoid doubly beep attachment in patch_alc268()
Takashi Iwai [Thu, 19 Feb 2009 07:13:26 +0000 (08:13 +0100)]
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>
15 years agoALSA: hda - Don't enable beep for digital-only ALC262
Takashi Iwai [Thu, 19 Feb 2009 07:06:35 +0000 (08:06 +0100)]
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>
15 years agoALSA: hda - Add quirk for Acer X3200
Takashi Iwai [Wed, 18 Feb 2009 12:16:26 +0000 (13:16 +0100)]
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>
15 years agoALSA: hda - Clean up quirks for HP laptops with AD1984A
Takashi Iwai [Mon, 16 Feb 2009 14:20:41 +0000 (15:20 +0100)]
ALSA: hda - Clean up quirks for HP laptops with AD1984A

Clean up quirks for HP laptops with AD1984A using SND_PCI_QUIRK_MASK()

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Cleanup IDT92HD7x HP quirks
Takashi Iwai [Mon, 16 Feb 2009 13:16:36 +0000 (14:16 +0100)]
ALSA: hda - Cleanup IDT92HD7x HP quirks

Clean up IDT92HD7x quirks for HP laptops with SND_PCI_QUIRK_MASK().

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Mon, 16 Feb 2009 09:23:35 +0000 (10:23 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Fix speaker output on HP DV4 1155-SE
Herton Ronaldo Krzesinski [Mon, 16 Feb 2009 09:23:00 +0000 (10:23 +0100)]
ALSA: hda - Fix speaker output on HP DV4 1155-SE

Force speaker pin config with model=hp-dv5 model for cases when bios
doesn't set it up properly. All reported hp laptops using model=hp-dv5
model have speaker at pin 0x0d with same config, so it's safe to add
this within hp-dv5 model.

Reference: alsa-devel mailing list thread on
    http://mailman.alsa-project.org/pipermail/alsa-devel/2009-February/014390.html

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoRevert "Sound: hda - Restore PCI configuration space with interrupts off"
Takashi Iwai [Mon, 16 Feb 2009 09:13:03 +0000 (10:13 +0100)]
Revert "Sound: hda - Restore PCI configuration space with interrupts off"

This reverts commit 32e176c14d7a425b681ef003c9061001ddb7fc7b.

That commit caused a regression with suspend on Thinkpad SL300.

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

Tested-by: Alexandre Rostovtsev <tetromino@gmail.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Support multiple digital outs with auto-probing
Takashi Iwai [Fri, 13 Feb 2009 10:19:09 +0000 (11:19 +0100)]
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>
15 years agoALSA: hda - Add proper cleanup for multiout-dig for ALC codecs
Takashi Iwai [Fri, 13 Feb 2009 10:47:37 +0000 (11:47 +0100)]
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>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 13 Feb 2009 10:59:26 +0000 (11:59 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Add snd_hda_multi_out_dig_cleanup()
Takashi Iwai [Fri, 13 Feb 2009 10:32:28 +0000 (11:32 +0100)]
ALSA: hda - Add snd_hda_multi_out_dig_cleanup()

Added the helper function snd_hda_multi_out_dig_cleanup() to clean up
the digital outputs with multi setup.  This call is needed in cases
the codec supports multiple digital outputs as slaves.  Otherwise the
slave widgets aren't properly cleaned up.

For a single digital output (e.g. in patch_conexant.c), this call isn't
needed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add missing terminator in slave dig-out array
Takashi Iwai [Fri, 13 Feb 2009 10:37:08 +0000 (11:37 +0100)]
ALSA: hda - Add missing terminator in slave dig-out array

Added the missing terminator for ad1989b_slave_dig_outs[].

Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add quirk for Acer AX1700-U3700A
Takashi Iwai [Fri, 13 Feb 2009 08:31:20 +0000 (09:31 +0100)]
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>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Fri, 13 Feb 2009 07:41:44 +0000 (08:41 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model
Herton Ronaldo Krzesinski [Thu, 12 Feb 2009 19:27:27 +0000 (17:27 -0200)]
ALSA: hda - Change HP dv7 (103c:30f4) quirk from hp-m4 to hp-dv5 model

Change HP dv7 quirk: although reported to work with hp-m4 model
(https://bugzilla.novell.com/show_bug.cgi?id=445321), the original
report doesn't contain info about testing of internal microphone.

Recently I received a report about internal mic not working
(https://qa.mandriva.com/show_bug.cgi?id=44855#c193), this must be
related with the forced line in on pin 0x0e done with hp-m4 model. Thus
change the current quirk from STAC_HP_M4 to STAC_HP_DV5, later reported
to be fixed on a provided kernel with this change
(https://qa.mandriva.com/show_bug.cgi?id=44855#c196).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda: add quirk for Lenovo X200 laptop dock
Aristeu Sergio Rozanski Filho [Thu, 12 Feb 2009 22:50:37 +0000 (17:50 -0500)]
ALSA: hda: add quirk for Lenovo X200 laptop dock

Currently the HP connector on X200 dock doesn't detect when a HP is connected
nor allows sound to be played using it. This patch fixes the problem by adding
a quirk for this specific model. It's possible that others have the same NID
(0x19) to report when dock HP is connected, but I don't have access to any.
Please Cc me in the reply since I'm not subscribed to alsa-devel@.

Signed-off-by: Aristeu Rozanski <aris@redhat.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda: Add STAC_DELL_S14 quirk
Matthew Ranostay [Thu, 12 Feb 2009 21:50:01 +0000 (16:50 -0500)]
ALSA: hda: Add STAC_DELL_S14 quirk

Add STAC_DELL_S14 quirk for new laptop series. Removed un-needed pins
in pin_nids for stac92hd83xxx. Also reorganized connection selection
code for the respective ports per quirk define.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Update documentation
Takashi Iwai [Fri, 13 Feb 2009 07:33:55 +0000 (08:33 +0100)]
ALSA: hda - Update documentation

Update documentation regarding codec probing; the new probe_only option
and the new probe_mask usage.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Add forced codec-slots for ASUS W5F
Takashi Iwai [Fri, 13 Feb 2009 07:18:48 +0000 (08:18 +0100)]
ALSA: hda - Add forced codec-slots for ASUS W5F

ASUS W5F needs the fixed codec-slots to probe to override the BIOS
problem.

Tested-by: Giovanni Moser Frainer <giovanni@redix.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Allow fixed codec-probe mask
Takashi Iwai [Fri, 13 Feb 2009 07:16:55 +0000 (08:16 +0100)]
ALSA: hda - Allow fixed codec-probe mask

Some devices have broken BIOS and they don't set the codec probe-bit
properly after cleared by the driver.  This makes the driver skipping
the necessary codec slots.

Since BIOS update isn't always easy, now the semantics of probe_mask
option is changed a bit.  When it contains the bit 8 (0x100), the
lower bits are used to probe that slots regardless of codec-probe bits
returned by the hardware.

For example, probe_mask=0x103 will force to probe the codec slot #0
and #1.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Cleanup setting of pin_configs in patch_stac927x
Herton Ronaldo Krzesinski [Wed, 11 Feb 2009 22:33:15 +0000 (20:33 -0200)]
ALSA: hda - Cleanup setting of pin_configs in patch_stac927x

After commit "ALSA: hda - Fix restore of pin configs at resume for
STAC/IDT codecs", the introduced stac_save_pin_cfgs function checks
already for pins == NULL case, saving then default pin configs from
machine with stac92xx_save_bios_config_regs. So we can remove the
extra checks when stac927x_brd_tbl[spec->board_config] == NULL.

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Wed, 11 Feb 2009 23:14:34 +0000 (00:14 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Register (new) devices at reconfig
Takashi Iwai [Wed, 11 Feb 2009 23:13:19 +0000 (00:13 +0100)]
ALSA: hda - Register (new) devices at reconfig

The devices that have been newly added during reconfig must be
registered.  Otherwise they won't be visible to user-space.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Detect multiple digital-out pins
Takashi Iwai [Wed, 11 Feb 2009 10:35:15 +0000 (11:35 +0100)]
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>
15 years agoALSA: hda - Fix a wrong pin check in snd_hda_parse_pin_def_config()
Takashi Iwai [Wed, 11 Feb 2009 10:33:13 +0000 (11:33 +0100)]
ALSA: hda - Fix a wrong pin check in snd_hda_parse_pin_def_config()

Fixed a wrong pin check (a typo) for debug print of digital input pin.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Wed, 11 Feb 2009 08:09:29 +0000 (09:09 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - add id for Intel IbexPeak integrated HDMI codec
Wu Fengguang [Wed, 11 Feb 2009 07:22:31 +0000 (15:22 +0800)]
ALSA: hda - add id for Intel IbexPeak integrated HDMI codec

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - compute checksum in HDMI audio infoframe
Wu Fengguang [Wed, 11 Feb 2009 07:22:30 +0000 (15:22 +0800)]
ALSA: hda - compute checksum in HDMI audio infoframe

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - enable HDMI audio pin out at module loading time
Wu Fengguang [Wed, 11 Feb 2009 07:22:29 +0000 (15:22 +0800)]
ALSA: hda - enable HDMI audio pin out at module loading time

We found that enabling/disabling HDMI audio pin out at stream start/stop
time will kill the leading 500ms or so sound samples. Avoid this by enabling
pin out once and for ever at module loading time.

The leading ~500ms audio samples will still be lost when switching from
X-channel playback to Y-channel playback where X != Y. However there's no
much we can do about it: the audio infoframe has to change and it looks like
either G45 or YAMAHA requires some time to switch the configuration.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - allow multi-channel HDMI audio playback when ELD is not present
Wu Fengguang [Wed, 11 Feb 2009 07:22:28 +0000 (15:22 +0800)]
ALSA: hda - allow multi-channel HDMI audio playback when ELD is not present

The YAMAHA AV-X1800 requires audio infoframe to include speaker-channel
mapping to play >2 channel HDMI audio. In theory that mapping should be
derived from its speaker configurations contained in its ELD. However we
currently cannot get ELD in console before the KMS functionalities are ready.
This is a more or less general issue at least in the near future. As a
workaround, we propose to allow playback of mult-channel audio when ELD
is not available.

Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoMerge branch 'fix/hda' into topic/hda
Takashi Iwai [Tue, 10 Feb 2009 16:17:17 +0000 (17:17 +0100)]
Merge branch 'fix/hda' into topic/hda

15 years agoALSA: hda - Add quirk for Asus z37e (1043:8284)
Mackenzie Morgan [Tue, 10 Feb 2009 16:13:43 +0000 (17:13 +0100)]
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>
15 years agoALSA: hda - add digital beep support for ALC268
Takashi Iwai [Tue, 10 Feb 2009 10:56:44 +0000 (11:56 +0100)]
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>
15 years agoALSA: hda - Clean up quirk lists
Takashi Iwai [Mon, 9 Feb 2009 16:14:52 +0000 (17:14 +0100)]
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>
15 years agoMerge branch 'topic/quirk-cleanup' into topic/hda
Takashi Iwai [Mon, 9 Feb 2009 16:19:21 +0000 (17:19 +0100)]
Merge branch 'topic/quirk-cleanup' into topic/hda

15 years agoALSA: Add subdevice_mask field to quirk entries
Takashi Iwai [Fri, 30 Jan 2009 16:27:45 +0000 (17:27 +0100)]
ALSA: Add subdevice_mask field to quirk entries

Introduced a new field, subdevice_mask, which specifies the bitmask
to match with the given subdevice ID.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Don't touch non-existent port f on 4-port 92hd71bxx codecs
Herton Ronaldo Krzesinski [Sun, 8 Feb 2009 21:51:28 +0000 (19:51 -0200)]
ALSA: hda - Don't touch non-existent port f on 4-port 92hd71bxx codecs

When checking for input amps on pins 0x0a, 0x0d and 0x0f, and
initializing them for 92hd71xxx codec models, we must skip nid 0x0f
for 4-port models too like with 5-port models, as it is unused
(nid 0x0f is vendor reserved in 4-port models).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Bind new ecs mobo id (1019:2950) to model=ecs202
Herton Ronaldo Krzesinski [Sun, 8 Feb 2009 21:50:34 +0000 (19:50 -0200)]
ALSA: hda - Bind new ecs mobo id (1019:2950) to model=ecs202

This adds a new sound quirk entry (model=ecs202) for an ecs motherboard
with IDT STAC9221 codec (1019:2950).

Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
15 years agoALSA: hda - Fix unused variable compile warning
Takashi Iwai [Fri, 6 Feb 2009 16:34:03 +0000 (17:34 +0100)]
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>
15 years agoALSA: hda - Use digital beep for AD codecs
Takashi Iwai [Fri, 6 Feb 2009 16:22:05 +0000 (17:22 +0100)]
ALSA: hda - Use digital beep for AD codecs

Use digital beep instead of analog pc-beep for AD codecs.
Create the beep mixer controls dynamically on demand.

Signed-off-by: Takashi Iwai <tiwai@suse.de>