summaryrefslogtreecommitdiff
path: root/sound/pci/hda/hda_codec.c
AgeCommit message (Collapse)AuthorFilesLines
2007-05-11[ALSA] hda-codec - Allow opening SPDIF while analog dup modeTakashi Iwai1-4/+3
Allow opening the dedicated SPDIF stream while running on analog dup mode. Then the SPDIF stream is once reset and assigned for the new stream. It's useful for exclusive SPDIF output like AC3/DTS. (In the former version, you had to close once the analog stream to play the exclusive digital stream.) Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] hda-codec - Add support of 96kHz backTakashi Iwai1-3/+8
Added the support of 96kHz sample rate back. Although the rate isn't listed in the ACC_PAR_PCM bits but si3054 codecs do support this rate explicitly. Now fixed the deteciton code not to check this extra bit. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] hda-codec - Fix SPDIF outputTakashi Iwai1-7/+37
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[ALSA] Fix NULL dereference with null modelnameTakashi Iwai1-2/+4
Fix the NULL dereference of modelname option. The check is moved to find_codec_preset() now, too. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-05-11[ALSA] hda-codec - Allow model=generic always for generic parserTakashi Iwai1-1/+2
Accept model=generic option to specify the generic parser regardless of codec chips. This is helpful for testing and debugging. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09[ALSA] hda-codec - Use global workqueueTakashi Iwai1-8/+2
Use global workqueue for simplicity. The unsolicited event frequency isn't so high to have own queue. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09[ALSA] hda-codec - Add support for VIA VT1708(A) HD audio codecJoseph Chan1-0/+1
This patch is VIA first release for HD audio codec, VT1708(A) and it provides geneneral HD audio driver features. Signed-off-by: Joseph Chan <josephchan@via.com.tw> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2007-02-09[ALSA] hda-codec - Use snd_pci_quirk_lookup() for board config lookupTakashi Iwai1-22/+35
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>
2006-12-20[ALSA] hda-codec - Fix detection of supported sample ratesTakashi Iwai1-3/+0
Don't include 9.6kHz in the list of supported sample rates. Since this rate isn't indicated in AC_PAR_PCM parameter, the driver might guess wrongly as if it's available. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-11-22WorkStruct: make allyesconfigDavid Howells1-4/+6
Fix up for make allyesconfig. Signed-Off-By: David Howells <dhowells@redhat.com>
2006-09-23[ALSA] hda-codec - Fix mic input with STAC92xx codecsTakashi Iwai1-5/+14
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[ALSA] hda-codec - Support multiple headphone pinsTakashi Iwai1-8/+15
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[ALSA] hda_intel prefer 24bit instead of 20bitNicolas Graziano1-2/+2
If I understand the hda_intel code, for format > 20bit it only advertise the SNDRV_PCM_FMTBIT_S32_LE format and play it at 32 bit, 20 bit or 24 bit. But if the 20bit and 24bit are available, actually it prefer the 20bit format. This path is to prefer the 24bit format instead of 20bit. Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23[ALSA] hda-codec - Add vendor ids for Motorola and ConexantTakashi Iwai1-0/+2
Added string entries for Motorola and Conexant vendor ids. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23[ALSA] Don't set up the same PID twice in snd_hda_multi_out_analog_prepareTakashi Iwai1-1/+1
Check the hp_nid whether it's identical with front pin to avoid the setup of the same widget node twice. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23[ALSA] HDA driver - do not set mute flag for dB scale (follow HDA specification)Jaroslav Kysela1-7/+0
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-09-23[ALSA] HDA codec & CA0106 - add/fix TLV supportJaroslav Kysela1-0/+33
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-06-28[ALSA] Fix/add support of Realtek ALC883 / ALC888 and ALC861 codecsTakashi Iwai1-1/+3
Patch from Realtek: - Fix ALC883 support code - Add support of ALC888 codec - Add ALC660 support (ALC861-compatible) - Add HP xw4400/6400/8400/9400 support (model=hp-bpc) - Code clean-up: fix spaces and indentation Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
2006-06-22[ALSA] hda-codec - Move EXPORT_SYMBOL() to adjacent to each functionTakashi Iwai1-19/+22
Move EXPORT_SYMBOL() to adjacent to each exported function/variable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-31[ALSA] sound/pci/hda: use create_singlethread_workqueue()OGAWA Hirofumi1-1/+1
process_unsol_events() seems to assume a singlethread one (IOW, racey). So, this patch uses create_singlethread_workqueue() instead of create_workqueue(). Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] hda-codec - Fix BIOS auto-configurationTakashi Iwai1-3/+74
Modules: HDA Codec driver,HDA generic driver - Fix autoconfig speaker/hp detection Now it allows multiple speaker pins (e.g. Dell laptops have such config) - Use speaker or hp pins if no line-outs are available This fixes the silence output on recent Dell laptops with STAC9200 (ALSA bug#1843) - Fix analog/realtek/sigmatel autoconfig parser Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] hda-codec - Fix ALC262 for Fujitsu laptopTakashi Iwai1-2/+4
Modules: HDA Codec driver,HDA generic driver Add 'fujitsu' model for ALC262 patch to support a FSC laptop. The internal speaker is turned on/off with jack sensing. Also fixed alc262 'basic' model. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] hda-intel - Automatic correction to single_cmd modeTakashi Iwai1-0/+6
Modules: HDA Codec driver,HDA Intel driver Switch to single_cmd mode automatically as a fallback when CORB/RIRB communication doesn't work well. It may make the driver working on some devices with broken BIOS/ACPI support. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-03-22[ALSA] semaphore -> mutex (PCI part)Ingo Molnar1-25/+26
Semaphore to mutex conversion. The conversion was generated via scripts, and the result was validated automatically via a script as well. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Small clean up and fixesTakashi Iwai1-0/+6
Modules: HDA Codec driver,HDA generic driver - Common labels for input pins - Fix and clean up of Realtek codec parsers Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Add the support of ALC262,ALC883,ALC885,ALC861Kailang Yang1-1/+15
Modules: HDA Codec driver,HDA generic driver This patch adds the support of ALC262,ALC883,ALC885,ALC861 to driver More models and improvements for ALC880, ALC260 and ALC882 codecs, too. Signed-off-by: Kailang Yang <kailang@realtek.com.tw> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Fix channel mode helperTakashi Iwai1-1/+1
Modules: HDA Codec driver Fix the channel mode helper (for put callback). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Fix connection list parsingTakashi Iwai1-42/+113
Modules: HDA Codec driver,HDA generic driver - Fix connection list parsing (with ranged flag). - Increase the max number of connections - Introduce widget capabilities cache - Power up/down widgets at init, suspend and resume Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] Remove xxx_t typedefs: HD-Audio codecTakashi Iwai1-45/+45
Modules: HDA Codec driver,HDA generic driver Remove xxx_t typedefs from the HD-Audio codec support codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Fix assignment of speaker pinTakashi Iwai1-1/+3
Modules: HDA Codec driver,HDA generic driver Fix the auto-assignment of speaker pin. Handle it independently from line-out pins. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Prepare unsol workqueue on demandTakashi Iwai1-2/+6
Modules: HDA Codec driver Prepare unsol workqueue only when a codec really supports. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Add channel-mode helperTakashi Iwai1-0/+48
Modules: HDA Codec driver,HDA generic driver Add common channel-mode helper functions for all codec patches. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2006-01-03[ALSA] hda-codec - Allocate amp hash array dynamicallyTakashi Iwai1-3/+19
Modules: HDA Codec driver Allocate amp hash array dynamically instead of static array. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] hda-codec - Minor rewritesTakashi Iwai1-0/+45
Modules: HDA Codec driver,HDA generic driver - Make bound controls global to all patches - Clean up analog patches (for the upcoming extension to AD1988) Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-11-04[ALSA] hda-codec - Get subsystem ID from AFG/MFGTakashi Iwai1-0/+7
Modules: HDA Codec driver Get subsytem ID from AFG/MFG if not obtained from the root node. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-09-12[ALSA] Replace with kzalloc() - pci stuffTakashi Iwai1-3/+3
AD1889 driver,ATIIXP driver,ATIIXP-modem driver,AZT3328 driver BT87x driver,CMIPCI driver,CS4281 driver,ENS1370/1+ driver ES1938 driver,ES1968 driver,FM801 driver,Intel8x0 driver Intel8x0-modem driver,Maestro3 driver,SonicVibes driver,VIA82xx driver VIA82xx-modem driver,AC97 Codec,AK4531 codec,au88x0 driver CA0106 driver,CS46xx driver,EMU10K1/EMU10K2 driver,HDA Codec driver HDA generic driver,HDA Intel driver,ICE1712 driver,ICE1724 driver KORG1212 driver,MIXART driver,NM256 driver,Trident driver,YMFPCI driver Replace kcalloc(1,..) with kzalloc(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30[ALSA] hda-codec - Code clean upTakashi Iwai1-11/+18
HDA Codec driver Use struct instead of array to improve the readability of hda_codec.c. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30[ALSA] hda-intel - correct a bug in detection of rate supportedNicolas Graziano1-1/+5
HDA Codec driver The insertion of the rate 9600 make a shift in detection of supported rate, put this rate at the end of the list. Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30ALSA CVS updateSasha Khapyorsky1-12/+16
HDA Codec driver,HDA generic driver Summar: hda-codec - MFG support This adds Modem Functional Group (MFG) support and option for 9600 sample rate. Signed-off-by: Sasha Khapyorsky <sashak@smlink.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30[ALSA] hda-codec - Fix LFE volume/switchNicolas Graziano1-4/+9
HDA Codec driver Fixed LFE volume/switch control. Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-08-30[ALSA] hda-codec - Fix reordering of surround channelsTakashi Iwai1-3/+20
HDA Codec driver - Fixed the reordering of surround channels. Originally reported by Nicolas GRAZIANO <nicolas.graziano@wanadoo.fr>. - Show the selected ssid when debug option is set. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-06-22[ALSA] hda-codec - More fix of ALC880 codec supportTakashi Iwai1-2/+101
Documentation,HDA Codec driver,HDA generic driver,HDA Intel driver - Fix some invalid configurations, typos in the last patch - Make init_verbs chainable, so that different configs can share the same init_verbs - Reorder and clean up the source codes in patch_realtek.c - Add the pin default configuration parser, used commonly in cmedia and realtek patch codes. - Add 'auto' model to ALC880 for auto-configuration from BIOS Use this model as default, and 3-stack as fallback Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-06-22[ALSA] hda-codec - Allow sub_device=0 in board config checkTakashi Iwai1-1/+2
HDA Codec driver Allow sub_device=0 in board config check. This means that every device with the given sub vendor ID will match. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-06-22[ALSA] hda-codec - Feed front signals to all surroundsTakashi Iwai1-3/+4
HDA Codec driver Feed front signals to all surround channels if no data is given for surround channels. It seems that CLFE works as expected (only center outputs) even if connected from the front line - at least on my test system. If this change causes problems on other system (e.g. only the left channel is transferred to the center channel), please let me know... Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-06-22[ALSA] Fix the handling of amp cache in hda-codecTakashi Iwai1-40/+34
HDA Codec driver Fixed the handling of amp cache in hda-codec driver. The confliction of cache values with different indices should be fixed now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] Add Analog Devices vendor nameTakashi Iwai1-0/+1
HDA Codec driver Added the missing vendor name entry for Analog Devices. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] Suppress error messageTakashi Iwai1-1/+1
HDA Codec driver Suppressing the error message regarding no AFG. This is often harmless (e.g. probing a modem codec). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] make code staticAdrian Bunk1-2/+2
CA0106 driver,HDA Codec driver This patch makes needlessly global code static. Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] Rename pci_vendor/pci_device to pci_subvendor/pci_subdeviceTakashi Iwai1-4/+4
HDA Codec driver,HDA generic driver Renamed pci_vendor/pci_device fields to pci_subvendor/pci_subdevice. They are really PCI subsystem IDs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2005-05-29[ALSA] Fix and cleanup of CM9880 auto-configurationTakashi Iwai1-0/+3
HDA Codec driver Fix and cleanup of CM9880 automatic PIN configuration. snd_hda_codec_setup_stream() doesn't do anything when NID is 0. Signed-off-by: Takashi Iwai <tiwai@suse.de>