summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_sigmatel.c
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: hda: Fix model quirk for Dell M1730Daniel T Chen2010-05-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | BugLink: https://launchpad.net/bugs/576160 Symptom: Currently (2.6.32.12) the Dell M1730 uses the 3stack model quirk. Unfortunately this means that capture is not functional out- of-the-box despite ensuring that capture settings are unmuted and raised fully. Test case: boot from Ubuntu 10.04 LTS live cd; capture does not work. Resolution: Correct the model quirk for Dell M1730 to rely on the BIOS configuration. This patch also trivially sorts the quirk into the correct section based on the comments. Reported-and-Tested-By: <picdragon99@msn.com> Tested-By: Daren Hayward Tested-By: Tobias Krais Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add hp-dv4 model for IDT 92HD71bxTakashi Iwai2010-05-121-3/+9
| | | | | | | | | | | | | | | | It turned out that HP dv series have inconsistent the mute-LED GPIO mapping among various models. dv4/7 seem to use GPIO 0 while dv 5/6 seem to use GPIO 3. The previous commit 26ebe0a28986f4845b2c5bea43ac5cc0b9f27f0a ALSA: hda - Fix mute-LED GPIO pin for HP dv series breaks dv5/6. This patch adds the new quirk model, hp-dv4, to handle HP dv4/7 separately from HP dv5/6. Tested-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com> (for dv6-1110ax) Acked-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix mute-LED GPIO pin for HP dv seriesTakashi Iwai2010-05-111-0/+5
| | | | | | | | | Old HP dv series seem to use the GPIO pin 0 for controlling the mute LED although the pin is a large package, where the newer models use GPIO 3 in such a case. For fixing the regression from the previous kernels, set spec->gpio_led statically for these model quirks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - fix DG45ID SPDIF outputWu Fengguang2010-05-071-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts part of commit 52dc438606d1e, in order to fix a regression: broken SPDIF output on Intel DG45FC motherboard (IDT 92HD73E1X5 codec). --- DG45FC-IDT-codec-2.6.32 (SPDIF OK) +++ DG45FC-IDT-codec-2.6.33 (SPDIF broken) Node 0x22 [Pin Complex] wcaps 0x400301: Stereo Digital Pincap 0x00000010: OUT - Pin Default 0x40f000f0: [N/A] Other at Ext N/A - Conn = Unknown, Color = Unknown - DefAssociation = 0xf, Sequence = 0x0 - Pin-ctls: 0x00: + Pin Default 0x014510a0: [Jack] SPDIF Out at Ext Rear + Conn = Optical, Color = Black + DefAssociation = 0xa, Sequence = 0x0 + Pin-ctls: 0x40: OUT Connection: 3 0x25* 0x20 0x21 Node 0x23 [Pin Complex] wcaps 0x400301: Stereo Digital Pincap 0x00000010: OUT - Pin Default 0x01451140: [Jack] SPDIF Out at Ext Rear + Pin Default 0x074510b0: [Jack] SPDIF Out at Ext Rear Panel Conn = Optical, Color = Black - DefAssociation = 0x4, Sequence = 0x0 - Misc = NO_PRESENCE - Pin-ctls: 0x40: OUT + DefAssociation = 0xb, Sequence = 0x0 + Pin-ctls: 0x00: Connection: 3 0x26* 0x20 0x21 Cc: <stable@kernel.org> Cc: Alexey Fisher <bug-track@fisher-privat.net> Tested-by: David Härdeman <david@hardeman.nu> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda: Use STAC_DELL_M6_BOTH quirk for Dell Studio 1558Daniel T Chen2010-04-231-0/+2
| | | | | | | | | | | | | | | BugLink: https://launchpad.net/bugs/568600 The OR has verified that the dell-m6 model quirk is necessary for audio to be audible by default on the Dell Studio XPS 1645. This change is necessary for 2.6.32.11 and 2.6.33.2 alike. Reported-by: Andy Ross <andy@plausible.org> Tested-by: Andy Ross <andy@plausible.org> Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda: Use STAC_DELL_M6_BOTH quirk for Dell Studio XPS 1645Daniel T Chen2010-04-221-0/+2
| | | | | | | | | | | | | | | BugLink: https://launchpad.net/bugs/553002 The OR has verified that the dell-m6 model quirk is necessary for audio to be audible by default on the Dell Studio XPS 1645. This change is necessary for 2.6.32.11 and 2.6.33.2 alike. Reported-by: Robert Chambers Tested-by: Robert Chambers Cc: <stable@kernel.org> Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add PCI quirk for HP dv6-1110ax.Kunal Gangakhedkar2010-03-211-0/+2
| | | | | | | | | Adding this PCI quirk fixes the board config detection. This also fixes jack sensing by using "hp_detect=1" via properly detected board config. Signed-off-by: Kunal Gangakhedkar <kunal.gangakhedkar@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix default polarity of mute-LED GPIO on 92HD83x/88x codecsTakashi Iwai2010-02-091-4/+4
| | | | | | | | | | | The previous commit caused a regression on HP laptops with 92HD83x/88x codecs. The default polarity of mute-LED GPIO is inverted on these devices. Reference: Novell bnc#578190 https://bugzilla.novell.com/show_bug.cgi?id=578190 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Remove static gpio_led setup via modelTakashi Iwai2010-02-081-6/+0
| | | | | | | We have now a better mute-LED GPIO detection, and no need to assign the values statically per model option. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Merge HP mute-LED status callback on both IDT 92HD7x and 8x codecsTakashi Iwai2010-02-081-30/+27
| | | | | | | | Merge the mute-LED status callback function for both IDT 92HD7x and 8x codecs to one function. Also it's changed to check all DACs, and called in the initialization to sync with the current status. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Detect HP mute-LED GPIO setup from GPIO countsTakashi Iwai2010-02-081-13/+8
| | | | | | | | | | | The GPIO pin number for the mute LED control on HP laptops can be determined more easily by checking the number of available GPIO pins of the codec chip. On a small package with up to 3 GPIOs, GPIO 0 is used while GPIO 3 is used for others. This fixes the missing mute GPIO for some HP laptops with new codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix docking output for IDT 92HD8xx codecsCharles Chin2010-02-041-17/+13
| | | | | | | | | | This patch fixes docking output support for IDT 92HD81/83/88 family codecs. Typically one of ports 0xE or 0xF is used for docking output, while only port 0xF is common on all the three codec families. We don't want the pin to select the analog mixer here. Signed-off-by: Charles Chin <Charles.Chin@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Adding support for another IDT 92HD83XXX codecVitaliy Kulikov2010-02-041-0/+2
| | | | | Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add support for IDT 92HD88 family codecsCharles Chin2010-01-291-0/+26
| | | | | Signed-off-by: Charles Chin <Charles.Chin@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Add mute LED check for HP laptops with IDT 92HD83xxx codecVitaliy Kulikov2010-01-281-0/+5
| | | | | | | This patch adds HP mute LED support for IDT 92HD81/3 family of the codecs. Signed-off-by: Vitaliy Kulikov <Vitaliy.Kulikov@idt.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'fix/hda' into topic/hdaTakashi Iwai2010-01-191-24/+55
|\ | | | | | | | | Conflicts: sound/pci/hda/patch_realtek.c
| * ALSA: hda - Fix mute led GPIO on HP dv-series notebooksKunal Gangakhedkar2010-01-151-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>
| * ALSA: hda - use snd_hda_jack_detect() again in patch_sigmatel.cTakashi Iwai2009-12-251-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>
* | ALSA: hda - Use strict_strtoul()Takashi Iwai2009-12-271-22/+26
| | | | | | | | | | | | Rewrite the codes to use strict_strtoul() instead of simple_strtoul(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add snd_hda_shutup_pins() helper functionTakashi Iwai2009-12-271-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>
* | ALSA: hda - Add more hints for GPIO setup of IDT/STAC codecsTakashi Iwai2009-12-261-0/+14
| | | | | | | | | | | | gpio_led, gpio_led_polarity and gpio_mute are added now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-12-251-0/+3
|\|
| * ALSA: hda - Add STAC9205 PCI_QUIRK for Dell Vostro 1700Anisse Astier2009-12-231-0/+3
| | | | | | | | | | Signed-off-by: Anisse Astier <anisse@astier.eu> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-12-231-9/+10
|\|
| * ALSA: hda - Fix NULL dereference with enable_beep=0 optionTakashi Iwai2009-12-221-9/+10
| | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add Bass Speaker switch for HP dv7Takashi Iwai2009-12-221-0/+57
| | | | | | | | | | | | | | The bass speaker is controlled via GPIO5. Tested-by: Wael Nasreddine <mla@nasreddine.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - simplify usage of HDA_SUBDEV_AMP_FLAGJaroslav Kysela2009-12-151-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>
* | ALSA: hda - introduce HDA_SUBDEV_AMP_FLAG (ControlAmp in proc)Jaroslav Kysela2009-12-151-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>
* ALSA: hda - Overwrite pin config on intel DG45ID board.Alexey Fisher2009-12-121-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>
* ALSA: hda - Fix LED GPIO setup for HP laptops with IDT codecsVitaliy Kulikov2009-12-111-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>
* ALSA: hda - Don't trigger pin-sense for STAC/IDT codecsTakashi Iwai2009-11-271-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>
* ALSA: hda - Fix mute-LED sync on HP laptops with IDT92HD83xxx codecsTakashi Iwai2009-11-181-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>
* ALSA: hda - Fix detection of dual headphonesTakashi Iwai2009-11-181-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>
* ALSA: hda - Replace the rest of jack-detections with snd_hda_jack_detect()Takashi Iwai2009-11-181-5/+2
| | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Get rid of magic digits for subdev hackTakashi Iwai2009-11-161-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>
* ALSA: hda - proc - add support for dynamic controls to mixer<->NID mappingJaroslav Kysela2009-11-161-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>
* ALSA: hda - proc - introduce Control: lines to show mixer<->NID assignmentJaroslav Kysela2009-11-161-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>
* ALSA: hda_intel: Digital PC Beep - change behaviour for input layerJaroslav Kysela2009-11-161-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>
* Merge branch 'topic/beep-rename' into topic/hdaTakashi Iwai2009-11-161-3/+3
|\
| * ALSA: rename "PC Speaker" and "PC Beep" controls to "Beep"Jaroslav Kysela2009-11-051-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>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-11-161-0/+2
|\ \
| * | ALSA: hda - Dell Studio 1557 hd-audio quirkDaniel J Blueman2009-11-151-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>
* | | ALSA: hda - Add reboot notifier to each codecTakashi Iwai2009-11-101-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>
* | | ALSA: hda - Reset pins of IDT/STAC codecs at freeTakashi Iwai2009-11-061-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>
* | ALSA: hda, move hp_bseries_systemRandy Dunlap2009-11-051-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>
* | ALSA: hda - Enable GPIO control for mute LED on HP systemsVitaliy Kulikov2009-11-041-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>
* ALSA: hda - Fix volume-knob setup for Dell laptops with STAC9228Takashi Iwai2009-10-131-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>
* ALSA: hda - Fix mute sound with STAC9227/9228 codecsTakashi Iwai2009-10-131-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>
* ALSA: hda - Fix digita/analog mic auto-switching with IDT codecsTakashi Iwai2009-10-011-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>
* ALSA: hda - Fix Dell S14 pin setupTakashi Iwai2009-09-151-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>