aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda
Commit message (Collapse)AuthorAge
...
* | | ALSA: hda - Replace the rest of jack-detections with snd_hda_jack_detect()Takashi Iwai2009-11-18
| | | | | | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - show EPSS capability in procWu Fengguang2009-11-18
| | | | | | | | | | | | | | | Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - sticky channel countWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | Don't change channel count if not necessary. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - sticky stream id and formatWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We tracked down the first-0.5s-hdmi-audio-samples-lost problem to the AC_VERB_SET_CHANNEL_STREAMID command. It is suspected that many HDMI sinks need some time to adapt to the new state. The workaround is to avoid changing stream id/format whenever possible. Proposed by David. Signed-off-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: intelhdmi - sticky infoframeWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remember the active infoframe, so as to avoid stop/restart infoframe transmission when switching between audio clips of the same format. Proposed by Shang and David. CC: Shane W <shane-alsa@csy.ca> CC: David Härdeman <david@hardeman.nu> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - separate out infoframe checksum routineWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | And make it right when called for more than one times. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - probe for monitor/eld presence at module init timeWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids lost of presence info on module reloading. The presence info used to be only updated at the (rare) hotplug events. Proposed by David, thanks! CC: 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 - introduce snd_hda_jack_detect() and snd_hda_pin_sense()Wu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | This helps merge duplicate code. v2: add snd_hda_jack_detect() and comments recommended by Takashi. Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - export monitor-presence and ELD-valid statusWu Fengguang2009-11-18
| | | | | | | | | | | | | | | Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - fix channel mapping slot maskWu Fengguang2009-11-18
| | | | | | | | | | | | | | | Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: intelhdmi - fix audio infoframe fill sizeWu Fengguang2009-11-18
| | | | | | | | | | | | | | | | | | Reported-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 - Disable default quirk for Sony VAIO with ALC262 codecTakashi Iwai2009-11-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | The ALC262 has a quirk entry matching with all Sony Vaio laptops to use model=sony-assamd as default. But, model=auto works much better for new models in the recent driver versions, thus it's safer to disable that default quirk entry. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-11-17
|\| |
| * | ALSA: hda - Fix quirk for VAIO type GTakashi Iwai2009-11-17
| | | | | | | | | | | | | | | | | | | | | | | | Vaio type G laptop doesn't work with the current quirk setup. After some tests, it turned out that it should be model=auto as default. Reported-by: Mattia Dongili <malattia@linux.it> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Fix build errors with CONFIG_SND_HDA_INPUT_BEEP=nTakashi Iwai2009-11-16
| | | | | | | | | | | | | | | | | | Disable beep-related codes when CONFIG_SND_HDA_INPUT_BEEP isn't set. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Fix beep_mode option valueTakashi Iwai2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The beep_mode option value was wrongly defined: it must be 0 = off and 1 = on. Also, evaluate the beep_mode value at snd_hda_attach_beep_device() properly so that no device is created when beep_mode=0 is given. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Update / add kerneldoc comments to exported functionsTakashi Iwai2009-11-16
| | | | | | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - move snd_hda_pcm_type_name from hda_codec.h to hda_local.hJaroslav Kysela2009-11-16
| | | | | | | | | | | | | | | | | | | | | The snd_hda_pcm_type_name array is local only. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda - Get rid of magic digits for subdev hackTakashi Iwai2009-11-16
| | | | | | | | | | | | | | | | | | | | | 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-16
| | | | | | | | | | | | | | | | | | | | | | | | 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-16
| | | | | | | | | | | | | | | | | | | | | | | | 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 - add beep_mode module parameterJaroslav Kysela2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The beep_mode parameter for snd-hda-intel module allows to choose among different digital beep device registation to the input layer. 0 = do not register to the input layer 1 = register to the input layer all time 2 = use "Beep Switch" control exported to user space mixer applications Also, introduce CONFIG_SND_HDA_INPUT_BEEP_MODE for default value. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda: beep - add missing cancel_delayed_workJaroslav Kysela2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | The unregister work should be also canceled in snd_hda_detach_beep_device() function. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: hda_intel: Digital PC Beep - delay input device unregistrationJaroslav Kysela2009-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The massive register/unregister calls for input device layer might be overkill. Delay unregister call by one HZ as workaround. Also, as benefit, beep->enabled variable is changed immediately now (not from workqueue). 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-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-16
|\ \ \
| * | | ALSA: rename "PC Speaker" and "PC Beep" controls to "Beep"Jaroslav Kysela2009-11-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-16
|\ \ \ \ | | |/ / | |/| |
| * | | ALSA: hda - Dell Studio 1557 hd-audio quirkDaniel J Blueman2009-11-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 another Nvidia HDMI codec id (10de:0005)Takashi Iwai2009-11-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Found on Nvidia 9800M GTS. Reported-by: Chris Balcum <sherl0k@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda: Use model=mb5 for MacBookPro 5,2Daniel T Chen2009-11-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BugLink: https://bugs.launchpad.net/bugs/462098 Until we can look closer at the verbs, let's use ALC885_MB5 for codec SSID 0x106b4600 to enable playback and capture for MacBookPro 5,2s. Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - possible read past array alc88[02]_parse_auto_config()Roel Kluin2009-11-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test of index `i' is after the read - too late - and unsafe: if snd_hda_get_connections() fails in the last iteration a read beyond the array is possible. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Avoid quirk for HP dc5750Takashi Iwai2009-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The present quirk for HP dc5750 seems broken and maps the pins wrongly. Since the auto-parser works well for this device, set the default entry to use model=auto. Reference: Novell bnc#552154 https://bugzilla.novell.com/show_bug.cgi?id=552154 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Tweak OLPC XO-1.5 microphone biasDaniel Drake2009-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Our contacts at Conexant suggested that we reduce the external microphone bias to 50% in order to center the input signal with the DC input range of the codec. This is because the microphone port is DC coupled for potential use with sensors. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda: Use model=auto quirk for Sony VAIO VGN-FW170J using ALC262Daniel T Chen2009-11-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BugLink: https://bugs.launchpad.net/bugs/478309 The internal microphone on this VAIO model does not work unless the "auto" quirk is used. Signed-off-by: Daniel T Chen <crimsun@ubuntu.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Don't initialize CORB/RIRB for single_cmd modeTakashi Iwai2009-11-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | So far, CORB/RIRB still remains even if the driver is switched to the single_cmd mode. The specification says that this should be disabled, but I hoped this isn't the case; indeed most devices worked together with CORB/RIRB. However, Poulsbo (US15W) seems problematic with this setup, and it requires to disable CORB/RIRB when single_cmd is used. Now this patch disables CORB/RIRB initialization when the single_cmd mode is used. Also the unsolicited event is disabled because it can't work without RIRB. Reported-and-tested-by: Troy Kisky <troy.kisky@boundarydevices.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | sound/pci/hda/patch_via.c: work around gcc-4.0.2 ICEakpm@linux-foundation.org2009-11-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sound/pci/hda/patch_via.c: In function 'via_hp_bind_automute': sound/pci/hda/patch_via.c:2074: internal compiler error: in do_SUBST, at combine.c:462 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. [added a comment by tiwai] Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Fix build error without CONFIG_SND_HDA_HWDEP=yTakashi Iwai2009-11-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_SND_HDA_POWER_SAVE is independent from CONFIG_SND_HDA_HWDEP. Thus snd_hda_hwdep_add_power_sysfs() needs the check of both kconfigs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Don't access invalid substream in proc fileTakashi Iwai2009-11-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit e3303235209c0496b490e10ab131e72a9568c153 "ALSA: hda - proc - show which I/O NID is associated to PCM device" introduces the access to substream pointer. But, PCMs may have no substreams in one or both directions, and this results in NULL dereference. Also, print the first substream number doesn't make sense. This patch removes the access to the substream pointer, and reformat to fit to the standard coding style. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Add power on/off counterTakashi Iwai2009-11-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added the power on/off counter and expose via sysfs files. The sysfs files, power_on_acct and power_off_acct, are created under each codec hwdep sysfs directory (e.g. /sys/class/sound/hwC0D0). The files show the msec length of the codec power-on and power-off, respectively. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Add missing export for snd_hda_bus_reboot_notifyTakashi Iwai2009-11-10
| | | | | | | | | | | | | | | | | | | | | | | | ... forgot to add for modules. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - proc - show which I/O NID is associated to PCM deviceJaroslav Kysela2009-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Output something like: Node 0x02 [Audio Output] wcaps 0x11: Stereo Device: name="ALC888 Analog", type="Audio", device=0, substream=0 Converter: stream=0, channel=0 ... Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | ALSA: hda - Add reboot notifier to each codecTakashi Iwai2009-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-11-06
|\| | |
| * | | ALSA: hda, move hp_bseries_systemRandy Dunlap2009-11-05
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-11-05
|\| | |
| * | | ALSA: hda - Add OLPC XO-1.5 PCI IDDaniel Drake2009-11-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The XO-1.5 laptop now has a unique subvendor/subproduct ID, which can be used to automatically select the correct CXT5066 configuration. Signed-off-by: Daniel Drake <dsd@laptop.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Enable GPIO control for mute LED on HP systemsVitaliy Kulikov2009-11-04
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 - Don't check invalid HP pinTakashi Iwai2009-11-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | alc_automute_pin() might be called even if any HP pin is defined, and it will result in verbs with NID=0. This patch adds a check for the validity of HP widget before issuing any verbs. Signed-off-by: Takashi Iwai <tiwai@suse.de>