aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
AgeCommit message (Collapse)AuthorFilesLines
2009-01-21ALSA: hda: 83xxx port 0xe DAC selectionMatthew Ranostay1-5/+11
On the 92hd8xxx codecs port 0xe needs the connection selected to be the last DAC in the list. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20ALSA: hda - Assign proper digital I/O type for STAC/IDTTakashi Iwai1-1/+1
Assign the proper PCM digital I/O type (HDA_PCM_TYPE_*) for the digital I/O on STAC/IDT codecs. HDA_PCM_TYPE_HDMI is assigned for the HDMI I/O. A similar framework is implemented to patch_realtek.c, but it's not set up and still using only HDA_PCM_TYPE_SPDIF yet. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20ALSA: hda - Improve auto-probing of STAC9872 codecTakashi Iwai1-10/+48
Use the standard STAC/IDT auto-probing routine for non-static STAC9872 codec probing. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-20ALSA: hda - Halve too large volume scales for STAC/IDT codecsTakashi Iwai1-8/+33
STAC/IDT codecs have often too large volume scales such as -96dB, and exposing this as is results in too large scale in percentage representation. This patch adds the check of the volume scale and halves the volume range if it's too large automatically. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-18ALSA: hda: fix invalid power mapping masksMatthew Ranostay1-1/+1
Fixed invalid power mappings for ports 0xd and 0xe on 93hd83xxx codecs. They were shifted right one too many bits. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-15ALSA: hda - Fix (yet more) STAC925x issuesTakashi Iwai1-7/+8
The codec-parsing of STAC925x was utterly broken due to its unique design unlike other STAC codecs. It has a volume control only in NID 0x0e (similar as STAC9200), but the parser assumes that the amp is available on each DAC widget. The patch fixes the whole wrong stories: fix the initial volume, assign the fixed "Master" volume, and avoid to create wrong volume controls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-15ALSA: hda - Fix invalid amp value for STAC925xTakashi Iwai1-1/+1
The value set in the commit 2465fb6605b4f8f3964b132017bf4078d1265fe9 is actually wrong. The value range is from 0 to 0x1f while the patch sets to 0x7f. Let's fix it. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-14ALSA: hda - Fix HP dv5 mic inputTakashi Iwai1-1/+4
Fix HP dv5 (103c:3603) built-in mic input. Reference: kernel bug 12440 http://bugzilla.kernel.org/show_bug.cgi?id=12440 Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: stable@kernel.org
2009-01-14ALSA: hda - Fix missing initialization of NID 0x0e for STAC925xTakashi Iwai1-0/+2
The selector widget 0x0e isn't initialized properly in the whole probe process, thus it can be a wrong value depending on the BIOS setup. This patch adds the init verb to set it to the max & unmuted. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-14ALSA: hda - Fix stac92hd83xxx_amp_nids[]Takashi Iwai1-1/+1
Fix the bug introduced in commit c15c5060fc32d7de7cde76aa61e98bae1334d82e: sound/pci/hda/patch_sigmatel.c: In function ‘patch_stac92hd83xxx’: sound/pci/hda/patch_sigmatel.c:4765: warning: assignment from incompatible pointer type Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-14ALSA: hda - Don't reset HP pinctl in patch_sigmatel.cTakashi Iwai1-0/+11
Resetting HP pinctl at the unplugged state may cause a sort of regression on some devices because of their wrong pin configuration. A simple workaround is to disable the pin reset. This is ugly and may be not good from the power-saving POV (if any), but damn simple. Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: stable@kernel.org
2009-01-14ALSA: hda: stac92hd8xxx amp mixersMatthew Ranostay1-0/+6
Added amp nid for stac92hd8xxx families of codecs so the input amp mixer is created. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-14ALSA: hda - Fix silent headphone output on Panasonic CF-74Takashi Iwai1-0/+6
CF-74 does the headphone/speaker switching on hardware, thus the driver shouldn't do any software-toggling of pins. Otherwise it results in a silent headphone output. This patch simply resets the hp_detect flag to fix the problem. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-13Merge branch 'topic/hda-gateway' into topic/hdaTakashi Iwai1-30/+97
2009-01-13ALSA: hda - Add quirk for another HP dv5Giuseppe Bilotta1-0/+2
Add the model=hp-m4 quirk for another HP dv5 (103c:3603) Reference: kernel bug#12440 http://bugzilla.kernel.org/show_bug.cgi?id=12440 Signed-off-by: Takashi Iwai <tiwai@suse.de> Cc: stable@kernel.org
2009-01-13ALSA: hda - Fix a typoTakashi Iwai1-1/+1
Fix a typo in stac92hd83xxx_cfg_tbl[]. The actual number is identical thus there is no behavior change. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-24Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+3
2008-12-24ALSA: hda - Add missing terminators in patch_sigmatel.cHerton Ronaldo Krzesinski1-0/+3
Signed-off-by: Herton Ronaldo Krzesinski <herton@mandriva.com.br> Cc: stable@kernel.org Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20ALSA: hda: fix incorrect mixer index values for 92hd83xxMatthew Ranostay1-10/+10
Fixed incorrect mixer index values for 92hd83xx codec's audio input mixer. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20ALSA: hda: dinput_mux checkMatthew Ranostay1-1/+2
Add check to determine if dinput_mux is set by any of patch_stac*() functions, otherwise a invalid pointer my be referenced causing gibberish to mixer values. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-20ALSA: hda - Add quirk for another HP dv7Takashi Iwai1-0/+2
Added the model=hp-m4 quirk for another HP dv7 (103c:30fc) with IDT 92HD71b* codec. Reference: Novell bnc#461108 https://bugzilla.novell.com/show_bug.cgi?id=461108 Cc: stable@kernel.org Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Power up always when no jack detection is availableTakashi Iwai1-2/+10
When no jack detection is available, the pins should be always turned on since it can't be turned on/off dynamically via unsol events. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Fix unused variable warnings in patch_sigmatel.cTakashi Iwai1-3/+2
Fixed "unused varible" warnings in patch_sigmatel.c that have been introduced by the last changes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Use more distinct name for a unique volume in STAC/IDTTakashi Iwai1-4/+29
When the line_out has only one DAC and it's unique (i.e. not shared by other outputs), assign a more reasonable and distinct mixer name such as "Headphone" or "Speaker". Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Rework on STAC/IDT auto-configuration codeTakashi Iwai1-263/+204
The current auto-configuration code has several problems especially for the new IDT codecs, e.g. wrong assignment of pins and DACs or coupled volume for speaker and headphone. This patch is a fairly large rewrite of the auto-configuration code. Some remaks - mic_switch and line_switch contain NIDs instead of bool - dac_list isn't fixed for IDT 92HD* codecs now, they are all probed - extra HP and speakers are stored in extra_dacs[]. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-1/+2
2008-12-19ALSA: hda - Remove non-working headphone control for Dell laptopsTakashi Iwai1-1/+2
The previous commit re-enabled hp_nid setup for IDT92HD73*, but it's unneeded indeed for Dell laptops that have multiple headphones. Setting the extra hp_nid results in a non-working "Headpohne" mixer control. Thus hp_nid should be 0 for these dell models. Also, the automatic addition of hp_nid should check whether it's a dual-HP model or not. For dual-HPs, the pins are already checked by the early workaround. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Use snd_hda_ctl_add() in patch_sigmatel.cTakashi Iwai1-1/+1
Fixed the call of snd_ctl_add() by replacing with snd_hda_ctl_add() so that this mixer element can be tracked for re-configuration. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+17
2008-12-19ALSA: hda - Add no-jd model for IDT 92HD73xxTakashi Iwai1-0/+5
Added the model without the jack-detection for some desktops that have really no jack-detection. The recent driver caused regressions regarding the sound output on such machines. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: Revert "ALSA: hda: removed unneeded hp_nid references"Takashi Iwai1-0/+3
This reverts commit 07f455f779acfb3eba4921fd1399761559b10fa9. ALSA: hda: removed unneeded hp_nid references Removed unneeded hp_nid references for 92hd73xx codec family. This caused the silent output on some Intel desktops due to missing routing of widget 0x0a and 0x0d. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-19ALSA: hda - Add quirk for Dell Studio 17Joerg Schirottke1-0/+2
Added the matching model=dell-m6 for Dell Studio 17 laptop. Signed-off-by: Joerg Schirottke <master@kanotix.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-18ALSA: hda - Fix silent HP output on D975Takashi Iwai1-0/+7
Some desktops seems to have no HP/mic jack detection on the front panel, which results in the silent output in the recent driver, because the driver mutes the output (to save power) when no plug is detected. This patch adds a new model that disables the jack-detection. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-05ALSA: hda - Proper power-map toggling for input pinsTakashi Iwai1-8/+22
The current code overrides the event type on input pins always to PWR_EVENT. Although this still works (PWR_EVENT and INSERT_EVENT are handled samely), it'd be better to avoid such overrides. Also, currently the unsol events are registered even for fixed pins which will never raise the pin-detection event. This patch fixes both issues. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-05ALSA: hda - Fix pin-detection in patch_sigmatel.cTakashi Iwai1-14/+14
The pin-detection function used in patch_sigmatel.c shouldn't be specific to HP pin because it's used for input pins in general, too. This patch fixes the detection function, removes the HP check from it and moves to stac92xx_hp_detect(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-03Merge branch 'topic/hda-modularize' into topic/hdaTakashi Iwai1-2/+25
2008-12-01ALSA: hda - Remove unnecessary caches for power states in patch_sigmatel.cTakashi Iwai1-56/+6
The power-state changes in patch_sigmatel.c are accessed via *_cached() but they shouldn't be really cached. Fixed to the normal write. Also, stac92hd71xx_suspend and resume are no longer necessary as the power-state changes are handled properly in the common routine. Removed these hacks now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-12-01ALSA: hda - Use amp cache for SPDIF mute controls in patch_sigmatel.cTakashi Iwai1-4/+4
The amp switch of SPDIF outputs have to be cached in the amp cache instead of codec cache. Otherwise it conflicts with the IEC958 playback switch control in hda_codec.c. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-30ALSA: hda - More fixes on Gateway entriesMauro Carvalho Chehab1-39/+33
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-30ALSA: patch_sigmatel: Add missing Gateway entries and autodetectionMauro Carvalho Chehab1-8/+81
Gateway autodetection and entries are incomplete. This patch adds the entries found at the .INI file for their driver version 5.10.5082.0. It also uses the proper code to seek for notebook ID, since this is based on codec subsystem ID on those devices. This should provide a proper pinup for several gateways notebooks: Gateway M465-E Notebook [Part #1008637] Gateway M465-G Notebook [Part #1008667] Gateway NX260X Notebook [Part #1008794] Gateway NX100X Notebook [Part #1008798] Gateway E-100M Notebook [Part #1008799] Gateway E-100M G Notebook [Part #1008800] Gateway M255-E Notebook [Part #1008801] Gateway M255-G Notebook [Part #1008803] Gateway M285-E Convertible Notebook [Part #1008804] Gateway M285-G Convertible Notebook [Part #1008805] Gateway CX210S Convertible Notebook [Part #1008807] Gateway CX210X Convertible Notebook [Part #1008808] Gateway E-100M SB Notebook [Part #1008973] Gateway M255-E SB Notebook [Part #1008989] Gateway M285-E SB Convertible Notebook [Part #1008990] Gateway M465-E Notebook [Part #1009022] Gateway CX2724 Convertible Notebook [Part #1009036] Gateway MX1025 Notebook [Part #1009046] Gateway CX2720 Convertible Notebook [Part #1009063] Gateway CX2724h Convertible Notebook [Part #1009089] Gateway MX1023 Notebook [Part #1009097] Gateway MX1023h Notebook [Part #1009098] Gateway NX260X Notebook [Part #1009112] Gateway E-100M Notebook [Part #1009126] Gateway MX7533 Notebook [Part #1009146] [Part #1009163] Gateway CX210X Convertible Notebook [Part #1009346] Gateway NX570X Notebook [Part #1009442] Gateway NX570X Notebook [Part #1009448] Gateway NX270S Notebook [Part #1009550] Gateway MX6448 Notebook [Part #1013912R] Gateway MX6453 Notebook [Part #1013913R] Gateway MX6216 Notebook [Part #1013916R] Gateway MX6931 Notebook [Part #1013918R] Gateway CX2726 Convertible Notebook [Part #1013921R] Gateway MP8708 Notebook [Part #1013924R] Gateway MX6446 Notebook [Part #1013927R] Gateway MX6930 Notebook [Part #1013928R] Gateway MX6447 Notebook [Part #1013932R] Gateway MX6454 Notebook [Part #1013943R] Gateway MX6439 Notebook [Part #1013947R] [Part #1013955R] [Part #1013971R] Gateway MX6930h Notebook [Part #1013973R] [Part #1013974R] [Part #1013975R] Gateway MX6955 Notebook [Part #1014028R] Gateway MX6956 Notebook [Part #1014033R] Gateway MX6959 Notebook [Part #1014061R] Gateway MX6957 Notebook [Part #1014065R] Gateway MX6960 Notebook [Part #1014068R] Gateway MX6958 Notebook [Part #1014072R] Gateway NX570X Notebook [Part #1014077R] Gateway NX570XL Notebook [Part #1014078R] Gateway NX570QS Notebook [Part #1014079R] Gateway MX6961 Notebook [Part #1014080R] [Part #1014106R] Gateway MX6961h Notebook [Part #1014112R] Gateway NX270S Notebook [Part #1014120R] Gateway MX6431 Notebook [Part #1014121R] Gateway MX8710 Notebook [Part #2905895R] Gateway MX3702 Notebook [Part #2905898R] Blade-K8F GW UMA Single Core Motherboard w/RS485M and 1394 - Quanta (FRU) [Part #4006133R] Since some entries conflict with existing pinups, I'm providing a separate patch to fix those entries. Tested only with Gateway MX6453. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-28ALSA: hda - Add IDT/STAC-specific proc outputTakashi Iwai1-0/+56
Added power-map and analog-loopback information to proc output for IDT/STAC codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-27ALSA: hda - Modularize HD-audio driverTakashi Iwai1-2/+25
Split the monolithc HD-audio driver into several pieces: - snd-hda-intel HD-audio PCI controller driver; loaded via udev - snd-hda-codec HD-audio codec bus driver - snd-hda-codec-* Specific HD-audio codec drivers When built as modules, snd-hda-codec (that is invoked by snd-hda-intel) looks up the codec vendor ID and loads the corresponding codec module automatically via request_module(). When built in a kernel, each codec drivers are statically hooked up before probing the PCI. This patch adds appropriate EXPORT_SYMBOL_GPL()'s and the module information for each driver, and driver-linking codes between codec-bus and codec drivers. TODO: - Avoid EXPORT_SYMBOL*() when built-in kernel - Restore __devinit appropriately depending on the condition Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-25Merge branch 'topic/fix/hda' into topic/hdaTakashi Iwai1-21/+26
Conflicts: sound/pci/hda/patch_sigmatel.c
2008-11-25ALSA: hda - Check model for Dell 92HD73xx laptopsTakashi Iwai1-21/+26
Check the model type instead of PCI SSID for detection of the mic types on Dell laptops with IDT 92HD73xx codecs. In this way, a new laptop can be tested via model module option. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-25ALSA: hda - mark Dell studio 1535 quirkTakashi Iwai1-1/+1
Fixed the quirk string for Dell studio 1535 (the product name wasn't published at the time the patch was made). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-25ALSA: hda - No 'Headphone as Line-out' swich without line-outsTakashi Iwai1-1/+1
STAC/IDT driver creates "Headphone as Line-Out" switch even if there is no line-out pins on the machine. For devices only with headpohnes and speaker-outs, this switch shouldn't be created. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-25ALSA: hda - Assign unsol tags dynamically in patch_sigmatel.cTakashi Iwai1-58/+101
Since we need to handle many unsolicited events assigned to different widgets, allocate the event dynamically using the existing events array, and use the tag appropriately instead of combination of fixed number and widget nid. (Note that widget nid can be over 4 bits!) Also, replaced the call of unsol_event handler with a dedicated function to be more readable. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-25Merge branch 'topic/fix/hda' into topic/hdaTakashi Iwai1-25/+53
Conflicts: sound/pci/hda/patch_sigmatel.c
2008-11-25ALSA: hda - Fix AFG power management on IDT 92HD* codecsTakashi Iwai1-26/+54
The AFG pin power-mapping isn't properly set for the fixed I/O pins on IDT 92HD* codecs. This resulted in the low power mode after the boot until any jack detection is executed, thus no output from the speaker. This patch fixes the power mapping for the fixed pins, and also fixes the GPIO bits and digital I/O pin settings properly in stac92xx_ini(). Reference: Novell bnc#446025 https://bugzilla.novell.com/show_bug.cgi?id=446025 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-24ALSA: hda - No 'Headphone as Line-out' swich without line-outsTakashi Iwai1-1/+1
STAC/IDT driver creates "Headphone as Line-Out" switch even if there is no line-out pins on the machine. For devices only with headpohnes and speaker-outs, this switch shouldn't be created. Signed-off-by: Takashi Iwai <tiwai@suse.de>