aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
AgeCommit message (Collapse)AuthorFilesLines
2010-01-19Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-24/+55
Conflicts: sound/pci/hda/patch_realtek.c
2010-01-15ALSA: hda - Fix mute led GPIO on HP dv-series notebooksKunal Gangakhedkar1-16/+45
On my laptop (HP dv6-1110ax), there are no OEM strings in SMBIOS of type "HP_Mute_LED*". Hence, the GPIO for the mute button LED doesn't get set properly. I didn't find the strings in my cousin's laptop (HP dv9500t CTO) either. As per the documentation of find_mute_led_gpio(), these strings occur in HP B-series systems - so, before scanning the SMBIOS strings, we need to check if we're dealing with a B-series system. Need to get confirmation from HP if this logic takes care of all the systems. I'm trying to poke a friend there. Signed-off-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-27ALSA: hda - Use strict_strtoul()Takashi Iwai1-22/+26
Rewrite the codes to use strict_strtoul() instead of simple_strtoul(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-27ALSA: hda - Add snd_hda_shutup_pins() helper functionTakashi Iwai1-11/+1
Add a common helper function for clearing pin controls before suspend. Use the pincfg array instead of looking through all widget tree. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-26ALSA: hda - Add more hints for GPIO setup of IDT/STAC codecsTakashi Iwai1-0/+14
gpio_led, gpio_led_polarity and gpio_mute are added now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-25ALSA: hda - use snd_hda_jack_detect() again in patch_sigmatel.cTakashi Iwai1-8/+10
Use snd_hda_jack_detect() again for jack-sensing. The triggering problem can be worked around with codec->no_trigger_sense flag now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-25Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+3
2009-12-23ALSA: hda - Add STAC9205 PCI_QUIRK for Dell Vostro 1700Anisse Astier1-0/+3
Signed-off-by: Anisse Astier <anisse@astier.eu> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-23Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-9/+10
2009-12-22ALSA: hda - Add Bass Speaker switch for HP dv7Takashi Iwai1-0/+57
The bass speaker is controlled via GPIO5. Tested-by: Wael Nasreddine <mla@nasreddine.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-22ALSA: hda - Fix NULL dereference with enable_beep=0 optionTakashi Iwai1-9/+10
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-15ALSA: hda - simplify usage of HDA_SUBDEV_AMP_FLAGJaroslav Kysela1-5/+3
The HDA_SUBDEV_NID_FLAG is duplicate for amplifier control elements. Move get_amp_nid_() call to the snd_hda_ctl_add() function. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-12-15ALSA: hda - introduce HDA_SUBDEV_AMP_FLAG (ControlAmp in proc)Jaroslav Kysela1-1/+2
The purpose of this changeset is to show information about amplifier setting in the codec proc file. Something like: Control: name="Front Playback Volume", index=0, device=0 ControlAmp: chs=3, dir=Out, idx=0, ofs=0 Control: name="Front Playback Switch", index=0, device=0 ControlAmp: chs=3, dir=In, idx=2, ofs=0 Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-12-12ALSA: hda - Overwrite pin config on intel DG45ID board.Alexey Fisher1-0/+8
The pin config provided by BIOS have some problems: 0x0221401f: [Jack] HP Out at Ext Front <-- other association and sequence 0x02a19020: [Jack] Mic at Ext Front <-- other association 0x01113014: [Jack] Speaker at Ext Rear <-- line out (not speaker) 0x01114010: [Jack] Speaker at Ext Rear <-- line out 0x01a19030: [Jack] Mic at Ext Rear <-- other association 0x01111012: [Jack] Speaker at Ext Rear <-- line out 0x01116011: [Jack] Speaker at Ext Rear <-- line out 0x40f000f0: [N/A] Other at Ext N/A 0x40f000f0: [N/A] Other at Ext N/A 0x40f000f0: [N/A] Other at Ext N/A 0x40f000f0: [N/A] Other at Ext N/A 0x40f000f0: [N/A] Other at Ext N/A 0x01451140: [Jack] SPDIF Out at Ext Rear 0x40f000f0: [N/A] Other at Ext N/A just overwrite it. Signed-off-by: Alexey Fisher <bug-track@fisher-privat.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-12-11ALSA: hda - Fix LED GPIO setup for HP laptops with IDT codecsVitaliy Kulikov1-27/+68
This patch fixes an error in processing of the HP BIOS configuration to enable GPIO based mute LED indicator control. That error causes driver to enable such control on all HP systems with the 92HD75 IDT codecs and results in unnecessary toggling of the GPIO on mute control manipulation. It also adds support of the future HP BIOS configuration extension for the named control. New configuration string has a format HP_Mute_LED_P_G where P can be 0 or 1 and defines mute LED GPIO control state (low/high) that corresponds to the NOT muted state of the master volume and G is the index of the GPIO to use (0..9) Lastly, it adds more systems to the support of the audio implementation as found on HP B-series systems Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-27ALSA: hda - Don't trigger pin-sense for STAC/IDT codecsTakashi Iwai1-1/+8
STAC/IDT codecs seem to behave weird when SET_PIN_SENSE verb is issued before reading the jack-detection although the TRIG_REQ pin capability is given by the hardware. Since snd_hda_jack_detect() issues the SET_PIN_SENSE verb simply judging from the pincap, we have to revert the change in the commit d56757abc11a21996d9839c0d4e3b2c3666cd318 ALSA: hda - Replace the rest of jack-detections with snd_hda_jack_detect() to plain GET_PIN_SENSE verb without triggering. Reported-by: Jiri Slaby <jirislaby@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-18ALSA: hda - Fix mute-LED sync on HP laptops with IDT92HD83xxx codecsTakashi Iwai1-2/+37
The mute-LED isn't synchronized with the actual mute state on some HP laptops with IDT 92HD83xxx codecs. A similar hack using check_power_status callback is added for this codec, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-18ALSA: hda - Fix detection of dual headphonesTakashi Iwai1-2/+21
The dual-headphone mode with STAC/IDT codecs is useful only for machines that have two (or more) built-in headphones. But, some HP laptops give multiple headphone pin configs, one for the built-in and another for the separate (likely a docking station) one. This results in a missing speaker volume control. This patch adds more check for the dual-headphone mode to avoid this problem. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-18ALSA: hda - Replace the rest of jack-detections with snd_hda_jack_detect()Takashi Iwai1-5/+2
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16ALSA: hda - Get rid of magic digits for subdev hackTakashi Iwai1-1/+1
Define a proper const for a magic 31bit flag for subdev / NID setup with a brief comment. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16ALSA: hda - proc - add support for dynamic controls to mixer<->NID mappingJaroslav Kysela1-3/+7
This patch adds support for dynamically created controls to proc codec file (Control: lines). Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16ALSA: hda - proc - introduce Control: lines to show mixer<->NID assignmentJaroslav Kysela1-2/+2
This is an initial patch to show universal control<->NID assigment in proc codec file. The change helps to debug codec related problems. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16ALSA: hda_intel: Digital PC Beep - change behaviour for input layerJaroslav Kysela1-8/+8
Original implementation was keeping registered input device for SND_BEEP and SND_TONE events all time. This patch changes this behaviour: If digital PC Beep is turned off using universal control switch, the input device is unregistered. Explanation: The kd_mksound() send SND_BEEP and SND_TONE only to last registered device acceping those events. It means that the HDA Intel audio driver blocks also the internal PC Speaker device (pcspkr.c driver) even if the HDA Beep is muted. The user can easy disable all beeps using 'setterm -blength 0' or 'xset b off' command. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-16Merge branch 'topic/beep-rename' into topic/hdaTakashi Iwai1-3/+3
2009-11-16Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+2
2009-11-15ALSA: hda - Dell Studio 1557 hd-audio quirkDaniel J Blueman1-0/+2
Add the Dell Studio 15 (model 1557, Core i7) laptop to the hd-audio quirk list, enabling audio. Signed-off-by: Daniel J Blueman <daniel.blueman@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-10ALSA: hda - Add reboot notifier to each codecTakashi Iwai1-0/+1
Add reboot notifier to each codec so that it can do some workarounds needed for reboot. So far, patch_sigmatel.c calls its shutup routine for avoiding noises at reboot on some HP machines. References: Novell bnc#544779 http://bugzilla.novell.com/show_bug.cgi?id=544779 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-06ALSA: hda - Reset pins of IDT/STAC codecs at freeTakashi Iwai1-18/+24
Some laptops cause annoying clicks or noises at shutdown/reboot since the speaker pin is set still high. Apply the same procedure used for the suspend to avoid such clicks/noises for freeing the codec, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-05ALSA: hda, move hp_bseries_systemRandy Dunlap1-20/+20
Function hp_bseries_system() is always used, outside of CONFIG_ boundaries/controls, so move it. sound/pci/hda/patch_sigmatel.c:5458: error: implicit declaration of function 'hp_bseries_system' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-05ALSA: rename "PC Speaker" and "PC Beep" controls to "Beep"Jaroslav Kysela1-3/+3
To avoid confusion in control names for the standard analog PC Beep generator using a small Internal PC Speaker, rename all related "PC Speaker" and "PC Beep" controls to "Beep" only. This name is more universal and can be also used on more platforms without confusion. Introduce also "Internal Speaker" in ControlNames.txt for systems with full-featured build-in internal speaker. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-11-04ALSA: hda - Enable GPIO control for mute LED on HP systemsVitaliy Kulikov1-0/+68
This patch enables GPIO to control mute LED indicator on the HP systems with the special string in BIOS and applies it with the correct polarity on HP B-series systems. It also restores configuration of the pin intended as the second Headphone on HP B-series systems but configured as something else in the BIOS to pass MS DTM. Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-10-13ALSA: hda - Fix volume-knob setup for Dell laptops with STAC9228Takashi Iwai1-1/+11
The volume-knob widget needs to be set with 0x7f instead of 0xff for Dell laptops with STAC9228 codec, too, like the previous commit. Reference: Novell bnc#545013 http://bugzilla.novell.com/show_bug.cgi?id=545013 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-10-13ALSA: hda - Fix mute sound with STAC9227/9228 codecsTakashi Iwai1-0/+17
On FSC laptops, the sound gets muted gradually when the volume is chnaged. This is due to the wrong volume-knob widget setup. The delta bit (bit 7) shouldn't be set for these devices. This patch adds a new quirk to set the value 0x7f to the widget 0x24 instead of 0xff. Reference: Novell bnc#546006 http://bugzilla.novell.com/show_bug.cgi?id=546006 Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-10-01ALSA: hda - Fix digita/analog mic auto-switching with IDT codecsTakashi Iwai1-6/+14
When the auto-mic switching between an analog and a digital mic is needed with IDT codecs, the current driver doesn't reset the connection of the digital mux. This patch fixes the behavior by checking both mux connections properly. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-15ALSA: hda - Fix Dell S14 pin setupTakashi Iwai1-2/+2
The pin setup for Dell S14 quirk is rather wrong for the latest driver. Fixed pin 0x0a, 0x0b, 0x0d and 0x0f. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-15ALSA: hda - Fix IDT92HD83* codec setupTakashi Iwai1-5/+0
Remove unnecessary (and buggy) init sequences left for IDT92HD83* codecs in the previous fixes. The DACs are now dynamically connected, thus shouldn't be set statically in init verbs. Also, the mono_nid is detected dynamically, thus shouldn't be set staticaly, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-14ALSA: hda - Add support for HP dv6Takashi Iwai1-0/+7
Add the quirk entry for HP dv6. Also add a workaround for the headphone detection by setting hp_detect=1 beforehand. Without this, the driver won't do auto-muting because BIOS doesn't give any HP pin but only a line-out pin. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-14ALSA: hda - Fix HP/line-out initialization with IDT/STAC codecsTakashi Iwai1-3/+11
It's possible that hp_detect is set even though no headphone pin is detected. The driver issues, however, an unsol event only to hp_pins[0], which can be invalid. This patch adds the check of the valid pin to send an unsol event at initialization and resume callbacks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-14ALSA: hda - Set default GPIO for IDT92HD71bxxTakashi Iwai1-1/+1
A smiliar fix for IDT 92HD71Bxx codecs like the previous commit for other IDT/STAC codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-14ALSA: hda - Set default GPIO for STAC/IDT codecsTakashi Iwai1-20/+13
IDT92HD73xx and STAC927x codecs use GPIO0 bit as EAPD on many machines. However, currently we don't set it unless the model is specified just for safety reason. But, most machines do need this bit, so this safety handling is rather annoying. This patch enables GPIO0 setup as default for them. Many HP / Dell laptops should work even without model override with this change. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-02ALSA: hda - Add support of Alienware M17x laptopTakashi Iwai1-0/+27
Added the quirk for Alienware M17x with IDT 92HD73* codec chip. It has two HP and one line-out jack, one mic jack, a built-in speaker and a built-in mic. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-02ALSA: hda - Remove dead codes from patch_sigmatel.cTakashi Iwai1-132/+0
Due to the previous fix of input source for IDT92HD73xx, the amp mux and amp vol stuff became unused. Let's rip off dead codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-09-02ALSA: hda - Fix input source selection of IDT92HD73xxTakashi Iwai1-147/+4
Fix the mux_nids to select directly the input source instead of mux mixers so that it works with the current mux enum handler for IDT 92HD73xx codecs. Also, clean up useless / unnecessary mixer controls and init verbs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-29ALSA: hda - Create "Digital Mic Capture Volume" correctly for IDT codecsTakashi Iwai1-7/+23
So far, the digital mic capture volume wasn't created. This is because IDT codecs have output amps for digital mics, not input amps, while input amps should be used for other analog pins. Thus the automatic capture volume creation should check both directions for digital mics. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-19Merge branch 'fix/hda' into topic/hdaTakashi Iwai1-0/+6
2009-08-19ALSA: hda: add model for Intel DG45ID/DG45FC boardsWu Fengguang1-0/+6
The BIOS pin configs are in fact correct and shall not be overwritten. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-15ALSA: hda - Add missing num_adc_nids definition for IDT92HD8xxxTakashi Iwai1-0/+1
The previous fix removed the definition of num_adc_nids wrongly, and this resulted in the missing input-source control. Now readded again. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-13ALSA: hda - Fix / clean up IDT92HD83xxx codec parserTakashi Iwai1-80/+69
A few improvements for IDT 92HD83xxx codec pareser: - Remove unused / deprecated mixer-amp controls - Handle d-mics as normal inputs since this codec has no separate MUXes for analog and digital - Don't create duplicated controls for capture volumes with Mux capture volumes Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-08-13Merge branch 'topic/hda-dmic-fix' into topic/hdaTakashi Iwai1-109/+59
2009-08-13ALSA: hda - Enable line-out detection only with speakersTakashi Iwai1-1/+2
Enable line-out detection for IDT/STAC codecs only when speaker pins exist. In some cases, the speaker itself is identified as line-out, and this confuses the situation. Only the extra line-outs should do auto-muting. Signed-off-by: Takashi Iwai <tiwai@suse.de>