Commit Graph

72 Commits

Author SHA1 Message Date
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 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
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
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
Abhijit Bhopatkar c45e20eb21 [ALSA] hda-codec - Add first generation macbook subsystem ID
First generation MacBooks were getting ignored by sigmatel drivers
and wrongly being identified as MACMINI. This patch makes them
identify as MACBOOK.

Signed-off-by: Abhijit Bhopatkar <bainonline@gmail.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:56:03 +02:00
Takashi Iwai 6b97eb45f2 [ALSA] hda-codec - Fix SPDIF output
Fix SPDIF output (at least on Realtek codecs).  The DIGI_CONVERT verbs
have to be reset before the PCM stream is set up.  Otherwise the digital
setup is screwed up.
Also, check the AMP capability before setting AMP of the digital out
widget.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:55:56 +02:00
Takashi Iwai 02a5039fc7 [ALSA] hda-codec - Fix Macmini and Macbook pin configs
Original idea from Nicolas Boichat <nicolas@boichat.ch>.
The pin configurations of Macmini and MacBook (1st generation, at least)
seem identical with MacBook Pro (1st generation).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:55:50 +02:00
Takashi Iwai 2549413ea6 [ALSA] hda-codec - Code clean up of patch_sigmatel.c
- Remove superfluous array member in stac9205_dmic_nids[]
- Use ARRAY_SIZE() instead of hard-coded numbers

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11 16:55:48 +02:00
Tobin Davis 68e22543ee [ALSA] hda-codec - Add Sony VGC-LA1 to patch_sigmatel.c
This patch adds the Sony Vaio VGC-LA1 to the stac9872_cfg_tbl.

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:55:47 +02:00
Nicolas Boichat 6f0778d872 [ALSA] hda-codec - Add support for MacBook Pro 1st generation
Fix audio on Macbook Pro 1st generation.

Signed-off-by: Nicolas Boichat <nicolas@boichat.ch>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-03-15 12:44:51 +01:00
Takashi Iwai 0a07acafd6 [ALSA] hda-codec - Fix speaker output on MacPro
Initialize the first line-out widget as the output pin in stac92xx_init().
Some devices like MacPro seem to set this widget as INPUT as default,
and confuses the driver.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-03-14 08:24:18 +01:00
Takashi Iwai 3fc24d8507 [ALSA] hda-codec - Define pin configs for MacBooks
Define pin configs for MacBook and MacBook Pro with STAC92xx codecs.
The latter is detected automatically by checking codec SSID now.
Also, fixed the documentation regarding available modeliof sigmatel
codec chips.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-03-06 10:40:28 +01:00
Takashi Iwai f0f9674585 [ALSA] hda-codec - Add LFE support on Dell M90
Added LFE support on Dell M90 laptop.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-03-06 10:40:21 +01:00
Mikael Nilsson 46f02ca36e [ALSA] hda-codec - Patch for enabling LFE on more Dell laptops
Fix LFE controls for Dell Inspiron E1705/9400 and XPS M1710 laptops.

Signed-off-by: Mikael Nilsson <mikael@nilsson.name>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-14 08:38:27 +01:00
Takashi Iwai 9e507abd87 [ALSA] hda-codec - Fix Oops with probing sigmatel codec chips
When a device is unkown, the driver tries to set up the codec based on
the BIOS information.  Then it may result in Oops if BIOS is broken.
The patch fixes the issue, falling back to a reference model in such a
case.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-14 08:38:20 +01:00
Cory T. Tusar 877b866d86 [ALSA] hda-codec - Dell Latitude D820 + D/Port
Support port replicator headphone output on Dell Latitude D820 + D/Port.

Signed-off-by: Cory T. Tusar <ctusar@videon-central.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:03:21 +01:00
Tobin Davis 8e21c34cd4 [ALSA] hda-codec - Add support for Sigmatel STAC9202/9250/9251 codecs
This patch adds support for Gateway laptops based on the
Sigmatel STAC9250 codecs, as well as basic support for
STAC9202/9250/9251 codecs.  Some Gateway systems require
probe_mask=1 to work.  More work to be done prior to alsa 1.0.14
final.

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-02-09 09:02:56 +01:00
Matt Porter 333824034a [ALSA] hda: add sigmatel 9205 eapd support
Adds support for handling EAPD on 9205 codecs

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:02:30 +01:00
Takashi Iwai f5fcc13c2f [ALSA] hda-codec - Use snd_pci_quirk_lookup() for board config lookup
Use snd_pci_quirk_lookup() for looking up a board config table.
The config table is sorted in numerical order of PCI SSIDs.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:02:04 +01:00
Takashi Iwai d1d985f019 [ALSA] Fix obsolete *_t typedefs
Fixed obsolete *_t typedefs.  Now completely removed.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:01:45 +01:00
Adrian Bunk ddc2cec4db [ALSA] make sound/pci/hda/patch_sigmatel.c:stac92xx_dmic_labels[] static
This patch makes the needlessly global stac92xx_dmic_labels[] static.

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-02-09 09:01:37 +01:00
Matt Porter 8b65727bf0 [ALSA] hda: add dig mic support for sigmatel codecs
Adds support for digital microphone pin widgets on SigmaTel codecs.
Enables support only on the 9205 codecs for now.

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09 09:01:12 +01:00
Matt Porter e7377071cd [ALSA] hda: fix sigmatel dell system detection
Fixes Dell system detection on 9200 codecs. The support
to detect certain Dell machines was merged in the
9205 table where it will be unused on the various Dell
9200-based codec systems. This moves the subsystem IDs
to the correct 9200 table.

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-11-28 13:46:35 +01:00
Takashi Iwai eb995a8c82 [ALSA] hda-codec - Fix headphone auto-toggle on sigmatel codec
Fix/optimize the headphone auto-toggle function on sigmatel codecs.
The headphone pins are kept as output.  When headhpones are unplugged,
you cannot hear anyway ;)

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:48:12 +02:00
Takashi Iwai 314634bc81 [ALSA] hda-codec - Fix mic input with STAC92xx codecs
Fixed mic input with STAC92xx codecs.  The mic pin was sometimes set to
OUTPUT by the headphone jack detection.
Also, try to assign a secondary mic as front-mic (or vice versa)
in the auto-detection if possible.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:48:01 +02:00
Takashi Iwai eb06ed8f4c [ALSA] hda-codec - Support multiple headphone pins
Some machines have multiple headpohne pins (usually on the lpatop
and on the docking station) while the current hda-codec driver
assumes a single headphone pin.  Now it supports multiple hp pins
(at least for detection).
The sigmatel 92xx code supports this new multiple hp pins.
It detects all hp pins for auto-muting, too.
Also, the driver checks speaker pins in addition.  In some cases,
all line-out, speaker and hp-pins coexist.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:47:38 +02:00
Richard Fish 160ea0dc6b [ALSA] [snd-intel-hda] enable center/LFE speaker on some laptops
This patch adds LFE mixer controls for laptops with a stac9200 and a mono
speaker pin with amplifier.

Signed-off-by: Richard Fish <bigfish@asmallpond.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:46:22 +02:00
Tobin Davis 93ed150375 [ALSA] hda-codec - Add 5 stack audio support for Intel 965 systems
This patch renames the 965_2112 function ids to 965_3ST, and
adds functional support for 965_5ST (5 stack 7.1 surround).

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>
2006-09-23 10:45:43 +02:00
Takashi Iwai 2c7782b420 [ALSA] hda-codec - Use model=ref for some Dell laptops
Force to choose model=ref for some Dell laptops with STAC9200 codec
chip for fixing the silent mic recording problem (possibly due to
a BIOS bug).  Reference: ALSA bug#2038
So far, applied to Inspiron 630m, Latitude D620 and 120L.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:44:26 +02:00
Richard Fish 11b44bbde5 [ALSA] hda-codec - restore HDA sigmatel pin configs on resume
This patch restores the Intel HDA Sigmatel codec pin configuration on
resume.  Most of it is dedicated to saving the BIOS pin configuration
if necessary, so that even unrecognized chips can be resumed correctly.

Signed-off-by: Richard Fish <bigfish@asmallpond.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:43:51 +02:00
Guillaume Munch 6d8590650e [ALSA] hda-codec - Support for SigmaTel 9872
- AR11M and AR11S uses the same chip hence we claim to support the AR Series.
- Added commentary about STAC9225s which shares the same id as CXD9872RD.
- Added entry for 7662 but won't work automatically until pci_subdevice
  is known.
- 'vaio' model now corresponds to CXD9872RD_VAIO for backward compat.
- Replaced STAC766x_VAIO with CXD9872RD_VAIO, STAC9872AK_VAIO, STAC9872K_VAIO
  and CXD9872AKD_VAIO
- Added 'vaio-ar' model for potential future modifications.

Signed-off-by: Guillaume Munch <diabo@free.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:43:47 +02:00
Tobin Davis 81d3dbde76 [ALSA] hda-codec - Add support for new Intel boards with Stac9227 codec
This patch adds full 5.1 audio support for Intel boards
with the SigmaTel 9227 codec chip (946, 963, 965 series).
 

Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:42:06 +02:00
Tobin Davis 948a4db217 [ALSA] hda-codec - add missing device ids for Intel 945 boards
This patch adds missing device ids for Intel 945 motherboards.
 

Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:42:00 +02:00
Tobin Davis 68a6abd97f [ALSA] hda-codec - Fix headphone output for some Intel 945 systems
This patch enables headphone output at initialization for Intel
945 based systems that don't have proper detection circuitry.

Signed-off-by: Tobin Davis <tobinx.b.davis@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:41:51 +02:00
Takashi Iwai c256652466 [ALSA] Add missing TLV callbacks for HD-audio codecs
Added missing TLV callbacks for HD-audio codec supports.
Also cleaned up the tlv callback for ad1986a (no mutex is needed there).

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:41:37 +02:00
Guillaume Munch 99ccc560b7 [ALSA] Add support for Sony Vaio AR 11B
This patch adds automatic detection for Sigmatel ID 7664,
the sound chip in Sony Vaio AR 11B (european name).
- patch_stac7661 becomes patch_stac766x
- .id = 0x83847664 is added

Signed-off-by: Guillaume Munch <diabo@free.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:41:14 +02:00
Matt Porter f3302a59cf [ALSA] hda: sigmatel 9205 family support
Adds support for the '9205 family' which includes some other
part numbers but 9205 is the first one. These are 4 channel
codecs, some have digital mic capability. Support for the digital
mic feature will come later.

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:39:41 +02:00
Matt Porter 22a27c7f8d [ALSA] hda: fix sigmatel 9227/8/9 codec support
SigmaTel 9227/8/9 IDs must use the 927x patch.

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23 10:37:40 +02:00
Linus Torvalds 7c3dec0679 x86 MacMini: make built-in speaker sound actually work
The MacMini board table seems to largely look like any bog-standard
Intel 945 board.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-07-10 22:21:43 -07:00
Takashi Iwai 19039bd007 [ALSA] Add Intel D965 board support
Added the support for Intel D965 boards with STAC9227 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-06-28 19:31:46 +02:00
Sam Revitch 62fe78e90d [ALSA] hda-codec - Add support for Apple Mac Mini (early 2006)
Add support for some audio quirks of the Apple Mac Mini (early 2006)

Signed-off-by: Sam Revitch <samr7@cs.washington.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-06-22 21:33:31 +02:00
Matt Porter a59524faf3 [ALSA] hda: add sigmatel 9227/9228/9229 ids
Adds support for the 9227/9228/9229 sigmatel hda codecs.

Signed-off-by: Matt Porter <mporter@embeddedalley.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-06-22 21:33:25 +02:00
Takashi Iwai a9393d70e5 [ALSA] hda-codec - Fix mute switch on VAIO laptops with STAC7661
Fixed the master mute switch on VAIO laptops with STAC7661
codec chip.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-06-22 21:33:24 +02:00
Takashi Iwai d773781cee [ALSA] hda-codec - Fix capture from line-in on VAIO SZ/FE laptops
Added the missing line-in capture on VAIO SZ/FE laptops with
STAC 7661 codec.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-04-27 21:10:46 +02:00
Ashley Clark a29b6c8895 [ALSA] hda-codec - Adds HDA support for Intel D945Pvs board with subdevice id 0x0707
Modules: HDA Codec driver

This patch adds the entry for the 5-stack pin-config for the STAC
chip on the Intel D945Pvs board with subdevice id 0x0707.

With this patch against 1.0.11rc4 in the linux kernel 2.6.17-rc1, I'm
able to successfully output over the optical port and analog ports.

Signed-off-by: Ashley Clark <aclark@ghoti.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-04-12 11:34:13 +02:00