Commit Graph

587 Commits

Author SHA1 Message Date
Jiang Zhe
a9b3aa8a0a [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>
2008-01-31 17:29:44 +01:00
Jiang Zhe
6b7eb1960d [ALSA] hda-codec - Device ID for Toshiba laptop which uses AD1986A
The model laptop-eapd get rid of the high-pitched noise.
(ALSA bug#3662)

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>
2008-01-31 17:29:43 +01:00
Herton Ronaldo Krzesinski
6e7939bb4d [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>
2008-01-31 17:29:43 +01:00
Andrew Paprocki
3982d17e3d [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>
2008-01-31 17:29:42 +01:00
Takashi Iwai
1697055e6c [ALSA] hda-codec - Fix invalid access to non-existing dmux on STAC
The digital mux on STAC codecs doesn't always exist although the
driver builds dmux enum mixer elements unconditionally.
Now the driver creates 'digital input source' mixer elements only
when dmux is available.
Also, the patch adds the missing dmux definition for STAC925x.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:42 +01:00
Joe Perches
561de31a23 [ALSA] sound/: Spelling fixes
Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:41 +01:00
Takashi Iwai
ac3e37412c [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>
2008-01-31 17:29:37 +01:00
Takashi Iwai
48ecb7e879 [ALSA] hda-codec - Avoid overload of PCM volume on Cx5045 codec
The PCM volume of Cx5045 codec has overload that isn't useful but
rather harmful.  Add a hack to override the amp info to set the max
level 0 dB.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:37 +01:00
Matthew Ranostay
8e9068b1c7 [ALSA] hda: STAC927x DMIC Cleanup
Cleaned up STAC927x and added several subsystem id's for more laptops.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:36 +01:00
Andrew Paprocki
38fcaf8efc [ALSA] hda-codec - Fix definition of AC_KNBCAP_DELTA to match spec
AC_KNBCAP_DELTA is incorrectly defined as (1<<8). According to the Intel
HDA spec, this is bit 7 after AC_KNBCAP_NUM_STEPS which is a 0x7f mask.

Signed-off-by: Andrew Paprocki <andrew@ishiboo.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:36 +01:00
Matthew Ranostay
541eee8768 [ALSA] hda: Added more 92HD71 codecs
Added more codecs to the 92HD71 family, as well as support for several
that don't have an analog mixer.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:34 +01:00
Matthew Ranostay
71685b90d2 [ALSA] hda: 92HD73 DMIC Amps
Changed hardware gain mixers for the digital mic's from HDA_OUTPUT to
HDA_INPUT.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:34 +01:00
Johannes Stezenbach
695005cfe4 [ALSA] hda-intel: Enable Analog CD Input from internal ATAPI connector on Asus M2N-SLI
Enable Analog CD Input from internal ATAPI connector on Asus M2N-SLI.

Signed-off-by: Johannes Stezenbach <js@sig21.net>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:34 +01:00
Matthew Ranostay
e1f0d66908 [ALSA] hda: Added STAC92HD73 support
Added support for new STAC92HD73 family of codecs. Additionally added
features for multiple analog loopbacks, and multiple dmux mixers.
Regression testing for the analog loopback changes for STAC9205 and
STAC9274D completed with any issues, as well for the dmux changes.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:34 +01:00
Andy Shevchenko
a8848bd647 [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>
2008-01-31 17:29:33 +01:00
Kailang Yang
f6a92248ae [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>
2008-01-31 17:29:33 +01:00
Josepch Chan
f7278fd0a5 [ALSA] hda-codec - Add support for VIA VT1708B HD audio codec
This patch adds support for VIA new HD audio codec, VT1708B.

Signed-off-by: Josepch Chan <josephchan@via.com.tw>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:33 +01:00
Takashi Iwai
bba8dee782 [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>
2008-01-31 17:29:31 +01:00
Andy Shevchenko
e3cde64af4 [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>
2008-01-31 17:29:30 +01:00
Takashi Iwai
f673dc829b [ALSA] hda-codec - Revert volume knob controls in STAC codecs
Volume knob controls with STAC codecs seem to cause problems with some
devices.  Volumes change very slowly or silent suddenly.  It's likely
due to conflict between the software and the hardware volume knob
setup.
Since we'll have a virtual master control in future, it's safer to
remove this control completely right now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:26 +01:00
Takashi Iwai
e171613949 [ALSA] hda-intel - Show more volume-knob attributes
Show more attributs of volume-knob widgets.
Also don't put empty lines when no connection list is found.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:26 +01:00
Ingo Molnar
9b1fffddc8 [ALSA] snd hda suspend latency: shorten codec read
not sleeping for every codec read/write but doing a short udelay and
a conditional reschedule has cut suspend+resume latency by about 1
second on my T60.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:26 +01:00
Wolke Liu
27da183402 [ALSA] HDA-Intel - Add support for RV6xx HDMI audio
This patch is to add R6xx HDMI audio support. Meanwhile, the device ID
in the previous patch is changed.
I have checked the patch from Herton Ronaldo Krzesinski, it's right as
our spec said. :)

Signed-off-by: Wolke Liu <Wolke.Liu@amd.com>
Signed-off-by: Andrea Zhang <Andrea.Zhang@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:26 +01:00
Takashi Iwai
68ea7b2f2d [ALSA] hda-codec - Check value range in ctl callbacks
Check the value ranges in ctl put callbacks properly so that
invalid values won't be stored or written to registers.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:24 +01:00
Takashi Iwai
61dc35de78 [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>
2008-01-31 17:29:23 +01:00
Kailang Yang
66d2a9d659 [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>
2008-01-31 17:29:23 +01:00
Jiang Zhe
40c1d30871 [ALSA] hda-codec - Avoid wrong speaker-auto mute via mic jack
When a mic jack is set up as the multiple I/O, it may issue the automute
function wrongly.  This patch fixes the wrong automute detection.

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>
2008-01-31 17:29:22 +01:00
Jiang Zhe
bcecd9bd96 [ALSA] hda-codec - Add workaround for multiple HPs
Dell laptops have multiple HP jacks that can be used for multi-channel
outputs.  The current auto pincfg handles the speaker as the primary
output and thus cannot handle the multi-channel configuration for such
cases.  This patch adds a workaround to fix this issue by swapping the
HP and speaker during multi-channel setup routines.

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>
2008-01-31 17:29:21 +01:00
Jiang Zhe
7f9310c1c9 [ALSA] hda-codec - Update dell-m82 model pin config
Updated dell-m82 model pin config table.  The old config doesn't work
with Dell 1210 and co.

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>
2008-01-31 17:29:21 +01:00
Matthew Ranostay
b222fe50f2 [ALSA] hda: STAC9228 Subsystem update
Added more laptops subsystem id's that have STAC9228 DMIC support.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:19 +01:00
Takashi Iwai
b98f9334e2 [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>
2008-01-31 17:29:18 +01:00
Matthew Ranostay
9b35947fcd [ALSA] hda: STAC92HD71 codec mixer
Added analog loopback support and missing ADC capture mixer for the
STAC92HD71 codec family.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:18 +01:00
Matthew Ranostay
e035b84101 [ALSA] hda: Added new IDT codec family
Added initial support for the STAC92HD71BXX family of codecs.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:16 +01:00
Herton Ronaldo Krzesinski
2797f724cd [ALSA] HDA-Intel - Add support for RV610/RV630 HDMI audio
The Audio interface on HD2400/HD2600 cards isn't currently detected by
snd-hda-intel. I added missing pci device ids for RV610 and RV630, but
I only had a HD2400 pro card to test, where now the audio interface is
detected (and no need to change patch_atihdmi.c, as the codec vendor id
remains 0x1002aa01 for which we already have an entry there). I also
couldn't test if sound pass-trough is ok (and I don't know how to), but
at least now the device is detected.

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>
2008-01-31 17:29:16 +01:00
Matthew Ranostay
f1f208d0b4 [ALSA] hda: STAC9228 DMIC
Added support for the dmics and enabled EAPD for several laptops with
STAC9228 cards.

Signed-off-by: Matthew Ranostay <mranostay@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:15 +01:00
Tobin Davis
d9f9b8baa0 [ALSA] HDA: Add Asus VX1 support
Simple patch to add the Asus VX1 laptop to the Analog Devices pci quirk list.

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>
2008-01-31 17:29:15 +01:00
Takashi Iwai
f889fa91ad [ALSA] hda-codec - Improve the auto-configuration
Some small improvements on autocfg stuff:
- sort HP pins by sequence number, too
- move sole mic pin to AUTO_PIN_MIC instead of AUTO_PIN_FRONT_MIC
- ditto for line-in pin

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:15 +01:00
Takashi Iwai
e97a516701 [ALSA] hda-codec - Show more information in proc file
Show the current EAPD status and volume-knob status in proc file.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:11 +01:00
Tobin Davis
f651b50b9d [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>
2008-01-31 17:29:10 +01:00
Takashi Iwai
61bae0934e [ALSA] hda-codec - Add model for Fujitsu V5505
Added model=laptop for Fujitsu V5505 with Cxt5405 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:08 +01:00
Matthew Ranostay
83eef75bfe [ALSA] hda: STAC9228 updated DMUX nid
Changed the dmux for STAC9228 from ADC1MUX to ADC0MUX to avoid confusion.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:07 +01:00
Matthew Ranostay
47744f638a [ALSA] hda: Add dmux to STAC 9228
Added a dmux to the STAC9228 cards with DMIC support. And added a
STAC_DIGITAL_INPUT_SOURCE macro for repeating mixer code.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:07 +01:00
Matthew Ranostay
7f16859a83 [ALSA] hda-codec - Add STAC9228 DMIC support
Added the missing STAC9228 DMIC support.
Also added a new vendor id tag for IDT.

Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2008-01-31 17:29:06 +01:00
Takashi Iwai
b995d76da0 [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>
2008-01-31 17:29:06 +01:00
Linus Torvalds
d238998fbf Revert "hda_intel suspend latency: shorten codec read"
This reverts commit 57a04513cb.

Harald Dunkel reports that it broke sound for him:
  "Alsa stopped working for me.  I still can access /dev/dsp, change the
   volume and so on, but the speakers are quiet."

Reverting it fixed things for him.

Reported-and-tested-by: Harald Dunkel <harald.dunkel@t-online.de>
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-01-08 11:46:37 -08:00
Ingo Molnar
57a04513cb hda_intel suspend latency: shorten codec read
not sleeping for every codec read/write but doing a short udelay and
a conditional reschedule has cut suspend+resume latency by about 1
second on my T60.

The patch also fixes the unexpected codec-connection errors that
happen more often in the new power-save mode:
    http://lkml.org/lkml/2007/11/8/255
    http://bugzilla.kernel.org/show_bug.cgi?id=9332

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-01-06 12:35:56 -08:00
Takashi Iwai
6020c008df [ALSA] hda-codec - Revert volume knob controls in STAC codecs
Volume knob controls with STAC codecs seem to cause problems with some
devices.  Volumes change very slowly or silent suddenly.  It's likely
due to conflict between the software and the hardware volume knob
setup.
Since we'll have a virtual master control in future, it's safer to
remove this control completely right now.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-11-20 19:52:00 +01:00
Takashi Iwai
7eba5c9dc3 [ALSA] hda-codec - Check PINCAP only for PIN widgets
The recent addition of checking PINCAP for EAPD seems to break some
systems due to unexpected response from the codec chip.  We shouldn't
issue GET_PINCAP verb to non-PIN widgets.  Now checks the widget type
before checking EAPD bit.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-11-19 18:38:32 +01:00
Takashi Iwai
d29240ce57 [ALSA] hda-codec - Disable shared stream on AD1986A
AD1986A has a hardware problem that it cannot share a stream with
multiple pins properly.  The problem occurs e.g. when a volume is changed
during playback.
So far, hda-intel driver unconditionally assigns the stream to multiple
output pins in copy-front mode, and this should be avoided for AD1986A
codec.
The original fix patch was by zhejiang <zhe.jiang@intel.com>.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2007-11-19 18:38:32 +01:00
Al Viro
ea45d15394 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>
2007-10-27 22:23:06 -07:00