aboutsummaryrefslogtreecommitdiffstats
path: root/sound
Commit message (Collapse)AuthorAge
* ALSA: hda - Acer Aspire 8930G supportHector Martin2009-06-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Short story: this laptop has 5.1 built-in speakers which you *really* want to use (the not-so-"sub" woofer is what makes the audio above average for a laptop), so 6-channel support is important (plus a decent asound.conf to upmix stereo). It also has the 3 typical jacks that ought to have a selectable mode. And it's based on ALC889, which sucks. Rationale/explanations: The const_channel_count stuff was added because, for a laptop like this, you always have 6 channels available (internal speakers) but still need to set the mode for the 3 external jacks. Therefore, the device always needs to be in 6-channel mode but there still needs to be a mixer control for the jack mode. You could use line/mic-in at the same time as the 6 internal speakers, for example. You might be tempted to make it even smarter by dynamically switching the max channel count when headphones are plugged in (therefore muting the internal speakers and reducing the physical channel count to the jack channel mode), but as a user I consider this to be harmful because I want the audio to blow up to 6 channels / upmixed as soon as I unplug the headphones, and having opened the device while in 2-channel mode would prevent this from working (and always making 6-channel mode available doesn't do any harm). The hardware needs EAPD turned on and the DACs routed to the internal speaker pins, so the patch adds those verbs. The ALC889 CLFE and subsequent (side/aux, here unused) DACs do NOT work by default, at least here. I wasted much time trying to talk to Realtek/pshou about this, but they just kept sending me useless updates to patch_realtek.c that did nothing relevant. In the end I gave up and brute forced the issue by trying to flip every bit in the proprietary coefficient registers, and eventually found the two magic registers that need to be cleared to enable all DACs. I have only heard Acer users complain, but that might be because ALC889 is pretty new and using 5.1 (and noticing the missing center/lfe channels) might not be that common. If this is a generalized issue with all ALC889 systems then those verbs should probably be moved to a common verb array. The internal mic is untested and probably doesn't work. These settings will probably work for other Acer Gemstone laptops with the same 5.1 speaker config. When identified, those should be added to the PCI subsystem ID list. Signed-off-by: Hector Martin <hector@marcansoft.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Reorder and clean-up ALC268 quirk tableTakashi Iwai2009-06-01
| | | | | | | Rearrange alc268_cfg_tbl[] in the order of vendor id, and group some entries using SND_PCI_QUIRK_MASK(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - fix audio on LG R510Ozan Çağlayan2009-06-01
| | | | | | | | | | | | Currently, LG R510 is only able to produce sound on headphones, the internal speakers are not working. The user tested and confirmed that with model=Dell headphones, internal speakers and the microphone are working flawlessly. Tested-by: Serdar Soytetir <tulliana@gmail.com> Signed-off-by: Ozan Çağlayan <ozan@pardus.org.tr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Macbook[Pro] 5 6ch supportKacper Szczesniak2009-06-01
| | | | | | | | this is a patch against current snapshot that adds: 6 channels support for the MB5 model Signed-off-by: Kacper Szczesniak <kacper@qwe.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda-intel: improve initialization for ALC262_HP_BPC modelJaroslav Kysela2009-06-01
| | | | | | | | | | | | Fix issues for 3 generations of HP workstations. The modest modifications do the following: 1. Change the second MIC from device 3 to device 1 2. Init the "boost" values to "0" by default From: John Brown <john.brown3@hp.com> Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Jack Mode changes for Sigmatel boardsNickolas Lloyd2009-06-01
| | | | | | | | | This patch changes Line In as Out Switch and Mic In as Out Switch to enums for consistency, and causes all mic and line in ports to be probed and controls to be added appropriately. Signed-off-by: Nickolas Lloyd <ultrageek.lloyd@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Support NVIDIA 8 channel HDMI audioWei Ni2009-06-01
| | | | | | | Support 8 channel HDMI audio for MCP78/7A Signed-off-by: Wei Ni <wni@nvidia.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix a typo in the previous patchTakashi Iwai2009-05-31
| | | | | | | | | ICH6_GCTL_RESET was wrongly set to another bit by the commit b21fadb9c1852c91622ca1dccfeb144bc535e36e. This caused a problem when the codec needs really a reset (e.g. recovering from the communication error at probe). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix reverted LED setup for HPTakashi Iwai2009-05-30
| | | | | | | The commit 86d190e77c44cb057742dcc871b12ebd4633c387 reverted the bit flip of LED GPIO for HP DX and DV4-1222nr. Fixed now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-05-28
|\
| * ALSA: hda - Compaq Presario CQ60 patching for ConexantTony Vroon2009-05-28
| | | | | | | | | | | | | | | | | | | | A docking mic control is shown by default. The Compaq Presario CQ60 laptop has no docking connector, so designate it as a CXT5051_HP model. This makes the phantom mixer slider disappear. Signed-off-by: Tony Vroon <tony@linx.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add more register bits definitionsTakashi Iwai2009-05-28
| | | | | | | | | | | | | | Added some missing register bits definitions to reduce magic numbers. Also renamed some to follow the names on the datasheet. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Always sync writes in single_cmd modeTakashi Iwai2009-05-28
| | | | | | | | | | | | | | | | | | In the single_cmd mode, the hardware cannot store the multiple replies like on RIRB, thus each verb has to sync and wait for the response no matter whether the return value is needed or not. Otherwise it may result in a wrong return value from the previous verb. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Support sync after writing a verbTakashi Iwai2009-05-26
| | | | | | | | | | | | | | | | | | This patch adds a debug mode to make the codec communication synchronous. Define SND_HDA_SUPPORT_SYNC_WRITE in hda_codec.c, and the call of snd_hda_codec_write*() will become synchronous, i.e. wait for the reply from the codec at each time issuing a verb. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Allow concurrent RIRB access in single_cmd modeTakashi Iwai2009-05-26
| | | | | | | | | | | | | | | | | | | | | | | | In the single_cmd mode, the current driver code doesn't do any update for RIRB just for any safety reason. But, actually the RIRB and single_cmd mode don't conflict. Unsolicited events can be delivered even while using the single_cmd mode. This patch allows the handling of unsolicited events with single_cmd mode, just always checking RIRB independent from single_cmd flag. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-05-26
|\|
| * ALSA: hda - Add missing check of pin vref 50 and others in Realtek codecsTakashi Iwai2009-05-25
| | | | | | | | | | | | | | | | Some Realtek codecs like ALC861 seem to support only VREF50 while the current driver assumes it's only VREF80. Check other VREF bits to set the correct value. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add 5stack-no-fp model for STAC927xTakashi Iwai2009-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The recent fix for the headphone volume control on IDT/STAC codecs resulted in the removal of invalid "Side" volume eventually. But, if the front panel doesn't exist, this setup could be regarded as a sort of regression, as reported in kernel bug #13250. Now as a workaround, a new model 5stack-no-fp is added so that the user without the front panel can choose this one explicitly. Reference: bko#13250 http://bugzilla.kernel.org/show_bug.cgi?id=13250 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add forced codec-slots for ASUS W5FmOzan Çağlayan2009-05-24
| | | | | | | | | | | | | | | | | | ASUS W5Fm needs the fixed codec-slots to probe to override the BIOS problem like W5F. Tested-by: Alp Kılıç <kilic.alp@gmail.com> Signed-off-by: Ozan Çağlayan <ozan@pardus.org.tr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - fix audio on HP TX25xx series notebooksAdam Williamson2009-05-22
| | | | | | | | | | | | | | | | | | Fixes https://bugtrack.alsa-project.org/alsa-bug/view.php?id=4121 Taken from https://bugzilla.redhat.com/show_bug.cgi?id=498060 Signed-off-by: Adam Williamson <awilliam@redhat.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Minor clean up of patch_sigmatel.cTakashi Iwai2009-05-26
| | | | | | | | | | | | | | - Remove unneeded semicolons - Introduce spec->gpio_led to specify the GPIO bit for LED control Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Reset CORB/RIRB at retrying the verb communicationTakashi Iwai2009-05-25
| | | | | | | | | | | | | | | | When a codec communication error occurs, the CORB/RIRB counters should be reset first before re-issuing the verb. Simply call azx_free_cmd_io() and azx_init_cmd_io() to achieve that. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix digital beep tone calculationTakashi Iwai2009-05-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The digital beep tone is calculated in two different ways depending on the codec chip. The standard one is using a divider, and another one is a linear tone for IDT/STAC codecs. Currently, only the latter type is used for all codecs, which resulted in a wrong tone pitch. This patch adds the calculation of the standard HD-audio type. Also clean-up the fields in hda_beep struct. Reference: bko#13162 http://bugzilla.kernel.org/show_bug.cgi?id=13162 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add prefix to kernel messagesTakashi Iwai2009-05-19
| | | | | | | | | | | | | | | | | | | | | | Add proper prefix to each kernel message in hda_intel.c. Also, avoid the unneeded prefix when CONFIG_SND_VERBOSE_PRINTK is used together with snd_print*(). Reference: bko#13207 http://bugzilla.kernel.org/show_bug.cgi?id=13207 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Improved MacBook 3,1 supportTorben Schulz2009-05-18
| | | | | | | | | | | | | | | | | | | | | | This patch adds support for MacBook 3,1 sound by adding a model new "mb31" with the appropriate init verbs, mixers and channel modes to the ALC883 configuration. patch_alc882() and patch_alc883() are modified to handle the MacBook 3,1 sound-chip (Realtek ALC889A) correctly. Signed-off-by: Torben Schulz <public@letorbi.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Avoid conflicts with snd-ctxfi driverTakashi Iwai2009-05-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The PCI entries of Creative with HD-audio class can be the devices with emu20k1/emu20k2 chips. These are supported better by snd-ctxfi driver. With that driver, the device will mutate from HD-audio to its native class. This patch adds a simple ifdef to avoid the conflict of device probe between snd-hda-intel and snd-ctxfi drivers. 1102:0009 seems still OK to be added as it has no emu20kx chip, and is a pure HD-audio device. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Show the actual chip name in 'unkown model' messagesTakashi Iwai2009-05-18
| | | | | | | | | | | | | | Show the actual chip name in 'unknown model..' info messages for Realtek codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Split codec->name to vendor and chip name stringsTakashi Iwai2009-05-16
| | | | | | | | | | | | | | | | | | Split the name string in hda_codec struct to vendor_name and chip_name strings to be stored directly from the preset name. Since mostly only the chip name is referred in many patch_*.c, this results in the reduction of many codes in the end. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - add controls to toggle DC bias on mic portsNickolas Lloyd2009-05-15
| | | | | | | | | | | | | | | | | | | | This patch adds a mixer control for the STAC92XX boards to control the DC bias of mic ports, allowing recording from both powered and non-powered sources. It replaces the "Mic Output Switch" with "Mic Jack Mode" to switch between Mic, Line In, and Line Out. Signed-off-by: Nickolas Lloyd <ultrageek.lloyd@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add a quirk entry for Macbook Pro 5,1Takashi Iwai2009-05-14
| | | | | | | | | | | | | | | | Added the codec SSID for MacBook Pro 5,1 as compatible as MP51. However, the headphone auto-muting function doesn't work. So, this is just a tentative solution. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Disable fallback to model=acer for Acer laptopsTakashi Iwai2009-05-13
| | | | | | | | | | | | | | | | The model=acer for ALC883/889 doesn't work well for the recent Acer Aspire laptops. Since model=auto works better nowadays, it's safer to use the default fallback instead of the Acer specific one. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add support of Samsung NC10 mini notebookChris Pockelé2009-05-12
| | | | | | | | | | | | | | | | | | | | Add specific configuration for Samsung NC10 mini notebook. Internal mic/speakers will be correctly muted when plugging in external ones. Mixer controls are added for speakers, headphones and PC beep. "Boost" is added for the microphones. Signed-off-by: Chris Pockelé <chris.pockele.f1@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'topic/hda-vt-spdif' into topic/hdaTakashi Iwai2009-05-11
|\ \
| * | ALSA: hda - Fix secondary SPDIF on VT1708S and VT1702 codecsTakashi Iwai2009-05-08
| |/ | | | | | | | | | | | | | | | | | | | | | | VIA VT1708S and VT1702 codecs can have two SPDIF outputs. One of them should have been handled as the extra digital out, but it's not properly accessed. This patch fixes the handling of the secondary SPDIF on these codecs with the slave dig-out as found in patch_sigmatel.c. This makes the use of such a device easier (for normal users). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add missing models for Realtek codecsTakashi Iwai2009-05-11
| | | | | | | | | | | | | | Added the missing descriptions and the model names for Realtek codecs to the documentation and the config table. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-05-08
|\|
| * ALSA: hda - Fix line-in on Mac Mini Core2 DuoTakashi Iwai2009-05-08
| | | | | | | | | | | | | | | | | | | | | | BIOS on Mac Mini Core2 Duo sets both INPUT and OUTPUT pinctl bits to the line-in jack, and it confuses the driver as if it's a valid input. This patch adds the check of OUTPUT bit so that the driver fixes the invalid pin setup. Tested-by: Tino Keitel <tino.keitel@gmx.de> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Clean up Realtek auto-mute unsol routinesTakashi Iwai2009-05-08
| | | | | | | | | | | | | | | | | | | | | | | | | | Most of unsol handlers defined in patch_realtek.c can be classified to two types, mute via amp of pins and mute via ctl bits of pins. Thus there are a big room to generalize each implementation. This patch creates two generic functions, alc_automute_amp() and alc_automute_pin(). The latter is actually changed from the previous alc_sku_automute(). Each caller needs to initialize hp_pins and speaker_pins properly at own init_hook. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Clean up for ALC262 HP model auto-mute functionsTakashi Iwai2009-05-08
| | | | | | | | | | | | Just clean up, no functional changes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix and clean up hippo-compat HP auto-mutingTakashi Iwai2009-05-08
| | | | | | | | | | | | | | | | | | | | | | The speaker auto-muting per HP plugging for ALC262 HIPPO and compatible devices is slightly buggy as the "Master" or "Front" mixer control can still toggle the speaker output even if the headphone is plugged. This patch fixes the issue, and clean up the hippo-related codes together with fixes of some inconsistent mixer names. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add support for MacBook 5.1 (Aluminium)Kacper Szczesniak2009-05-07
| | | | | | | | | | Signed-off-by: Kacper Szczesniak <kacper@qwe.pl> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Addition for HP dv4-1222nr laptop supportJames Gardiner2009-05-04
| | | | | | | | | | Signed-off-by: James Gardiner <renidragsemaj@yahoo.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix a typo in patch_realtek.c againTakashi Iwai2009-04-28
| | | | | | | | | | | | | | | | | | The commmit dfed0ef9b3ff9e37903920b6938ed33344ad0b3d was reverted accidentally by the merge of auto-detection fix patch. Fixed again now. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Don't enable auto-mute but for speakers in patch_realtek.cTakashi Iwai2009-04-28
| | | | | | | | | | | | | | | | | | Enable auto-muting in model=auto only for devices with HP and speakers. For devices with HP and line-outs, don't enable the auto-muting. Also, add a debug print to show the auto-mute feature. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'topic/hda-realtek-amp' into topic/hdaTakashi Iwai2009-04-28
|\ \
| * | ALSA: hda - Add amp initialization for realtek auto modeTakashi Iwai2009-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the realtek auto-probing mode, the initialization of amp with some magic COEF or EAPD verbs is applied only when the codec SSID has valid values to satisfy the realtek's definition. However, many devices don't provide in that way, thus the device doesn't work as is. This patch allows the same initialization code even if the SSID doesn't pass the bit test. Also, alc_subsystem_id() is changed just to check and define the type, so that it's called in the parser, instead of the initializer. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-04-28
|\ \ \ | |/ / |/| / | |/
| * ALSA: hda - Fix init verbs of AD1884A mobile modelTakashi Iwai2009-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current ad1884a-mobile model has a problem that the speaker output doesn't work sometimes after boot or power-saving on some HP laptops. It seems that the verbs accessing to the non-functional widgets cause this problem. This patch simplifies the init verbs for mobile model not to touch unnecessary setups so that it avoids the speaker-mute problem. Reference: Novell bnc#495668 https://bugzilla.novell.com/show_bug.cgi?id=495668 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'fix/hda' into topic/hdaTakashi Iwai2009-04-21
|\|
| * ALSA: hda - Add quirk for Packard Bell RS65Takashi Iwai2009-04-21
| | | | | | | | | | | | | | | | | | Added a quirk (model=m51va) for Packard Bell RS65 with ALC663. Reference: Novell bnc#496787 https://bugzilla.novell.com/show_bug.cgi?id=496787 Signed-off-by: Takashi Iwai <tiwai@suse.de>