aboutsummaryrefslogtreecommitdiff
path: root/sound/pci/hda
AgeCommit message (Collapse)Author
2009-04-23ALSA: hda - Fix init verbs of AD1884A mobile modelTakashi Iwai
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>
2009-04-21ALSA: hda - Add quirk for Packard Bell RS65Takashi Iwai
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>
2009-04-21ALSA: hda - Add quirks for Realtek codecsKailang Yang
- Support ASUS F81Se F5Q P80 U20A U80 U50 UX50 for ALC269 - Support ASUS F70SL UX20 X58LE F50Z N80Vc N81Te N505Tp Vx3V N5051A for ALC663 - Support DELL ZM1 for ALC272 Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-21ALSA: hda - Fix alc662_init_verbsKailang Yang
Don't unmute unneeded amps for input mixers of ALC662 & co. It caused possible recording noises. Signed-off-by: Kailang Yang <kailang@realtek.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-17ALSA: hda - Set function_id only on FG nodesTakashi Iwai
(Re)set function_id only from the value on FG nodes. The current code overrides the value with the last widget. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-16ALSA: hda - Add upper-limit of mixer amp for AD1884A-laptop model, tooTakashi Iwai
Add the upper-limit of mixer amp for AD1884A-laptop model just like the mobile model for some HP laptops. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-16ALSA: hda - Fix headphone-detection on some machines with STAC/IDT codecsTakashi Iwai
When the headphone can have no unique DAC, the current code doesn't check the HP-detection although it should. Put the hp-detection check before the DAC check to fix this bug. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-16ALSA: hda_intel.c - Consolidate bitfieldsJoe Perches
Commit fa00e046b41663cbda9b1affc0594669e5f14219 added a new bitfield not adjacent to other bitfields in the same struct. Moved the new one. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-15Merge branch 'topic/hda' into for-linusTakashi Iwai
* topic/hda: ALSA: hda - Fix the cmd cache keys for amp verbs ALSA: add missing definitions(letters) to HD-Audio.txt
2009-04-15ALSA: hda - Fix the cmd cache keys for amp verbsTakashi Iwai
Fix the key value generation for get/set amp verbs. The upper bits of the parameter have to be combined with the verb value to be unique for each direction/index of amp access. This fixes the resume problem on some hardwares like Macbook after the channel mode is changed. Tested-by: Johannes Berg <johannes@sipsolutions.net> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-15Merge branch 'topic/hda' into for-linusTakashi Iwai
* topic/hda: ALSA: hda - Add quirk mask for Fujitsu Amilo laptops with ALC883 ALSA: hda - Avoid call of snd_jack_report at release ALSA: add private_data to struct snd_jack
2009-04-15Merge branch 'topic/jack-free-fix' into topic/hdaTakashi Iwai
* topic/jack-free-fix: ALSA: hda - Avoid call of snd_jack_report at release ALSA: add private_data to struct snd_jack
2009-04-15Merge branch 'master' of git://git.alsa-project.org/alsa-kernel into for-linusTakashi Iwai
* 'master' of git://git.alsa-project.org/alsa-kernel: [ALSA] intel8x0: add one retry to the ac97_clock measurement routine [ALSA] intel8x0: fix wrong conditions in ac97_clock measure routine [ALSA] intel8x0: do not use zero value from PICB register [ALSA] intel8x0: an attempt to make ac97_clock measurement more reliable [ALSA] pcm-midlevel: Add more strict buffer position checks based on jiffies [ALSA] hda_intel: fix unexpected ring buffer positions
2009-04-15ALSA: hda - Add quirk mask for Fujitsu Amilo laptops with ALC883Takashi Iwai
Added the models for quirk bitmask 1734:110x and 1734:113x of Fujitsu laptops. This will fix the model detection for Amilo Xa3540. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-14ALSA: hda - Avoid call of snd_jack_report at releaseTakashi Iwai
Don't call snd_jack_report at release of sigmatel and conexnat codecs which results in Oops at unloading the module. The Oops is triggered by the power-up sequence during the free due to the pincfg restoration. Since the power-up sequence is involved with the unsol handling, the jack reporting may be issued during that. The Oops occurs with this jack reporting because the jack instances have been already released but the codec doesn't do the proper book-keeping. This patch adds the book-keeping of jack instances to avoid the access to bogus pointers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-13Replace all DMA_nBIT_MASK macro with DMA_BIT_MASK(n)Yang Hongyang
This is the second go through of the old DMA_nBIT_MASK macro,and there're not so many of them left,so I put them into one patch.I hope this is the last round. After this the definition of the old DMA_nBIT_MASK macro could be removed. Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com> Cc: Russell King <rmk@arm.linux.org.uk> Cc: Tony Lindgren <tony@atomide.com> Cc: "David S. Miller" <davem@davemloft.net> Cc: James Bottomley <James.Bottomley@HansenPartnership.com> Cc: Greg KH <greg@kroah.com> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-10[ALSA] hda_intel: fix unexpected ring buffer positionsJaroslav Kysela
I found two issues with ICH7-M (it should be related to other HDA chipsets as well): - the ring buffer position is not reset when stream restarts (after xrun) - solved by moving azx_stream_reset() call from open() to prepare() callback and reset posbuf to zero (it might be filled with hw later than position() callback is called) - irq_ignore flag should be set also when ring buffer memory area is not changed in prepare() callback - this patch replaces irq_ignore with more universal check based on jiffies clock Signed-off-by: Jaroslav Kysela <perex@perex.cz>
2009-04-07Merge branch 'topic/hda' into for-linusTakashi Iwai
2009-04-07ALSA: hda - Add VREF powerdown sequence for another boardMatthew Ranostay
Add powerdown sequence for VREF using a shared jack when the headphone is present and the microphone isn't on. Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-07ALSA: hda - add missing comma in ad1884_slave_volsAkinobu Mita
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-06Merge branch 'topic/hda' into for-linusTakashi Iwai
2009-04-06ALSA: hda - enable SPDIF output for Intel DX58SO boardWu Fengguang
ALC889 has two SPDIF outputs: 0x06, 0x10. Board vendors can use either or both. DX58SO uses 0x10, but the driver assumes 0x06. The safe solution is to add 0x10 as slave output to the existing 0x06. Reported-by: Jeroen Van Breedam <jeroen.vanbreedam@sgr5.be> Tested-by: Jeroen Van Breedam <jeroen.vanbreedam@sgr5.be> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-04-06ALSA: Add 92HD81B1C device idMatthew Ranostay
Added device id in struct for codec 92HD81B1C (0x111d76d5). Signed-off-by: Matthew Ranostay <mranostay@embeddedalley.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-24Merge branch 'topic/hda' into for-linusTakashi Iwai
2009-03-24Merge branch 'topic/snd_card_new-err' into for-linusTakashi Iwai
2009-03-23ALSA: hda - Add quirk for Acer Ferrari 5000Takashi Iwai
Add a quirk model=acer-aspire for Acer Ferrari 5000 with ALC883 codec. Note that model=auto doesn't work for this laptop because of broken BIOS (that doesn't set the subsystem id properly). Tested-by: Russ Dill <russ.dill@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Use cached calls to get widget caps and pin capsTakashi Iwai
Replace with the standard function calls to use caches for reading the widget caps and pin caps. hda_proc.c is still using the direct verbs to get raw values as much as possible. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Don't create empty/single-item input sourceTakashi Iwai
In patch_realtek.c, don't create empty or single-item "Input Source" control elements that are simply superfluous. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Fix the wrong pin-cap check in patch_realtek.cTakashi Iwai
The check for the amp-output must be done for widget-caps rather than pin-caps as implemented in the recent change... Simply a thinko. Also, add the similar checks to all places that put output-amp mutes in the initialization. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Cache pin-cap valuesTakashi Iwai
Added snd_hda_query_pin_caps() to read and cache pin-cap values to avoid too frequently issuing the same verbs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Avoid output amp manipulation to digital mic pinsTakashi Iwai
Don't set amp-out values to pins without PINCAP_OUT capability, which are usually assigned for digital mics on ALC663/ALC272. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-23ALSA: hda - Add function id to proc outputPascal de Bruijn
This patch does two things: Output Intel HDA Function Id in /proc/asound/cardX/codec#X Align Vendor/Subsystem/Revision Ids to 8 characters, front-padded with zeros Before: Vendor Id: 0x11d41884 Subsystem Id: 0x103c281a Revision Id: 0x100100 After: Function Id: 0x1 Vendor Id: 0x11d41884 Subsystem Id: 0x103c281a Revision Id: 0x0100100 As report on the Kernel Bugzilla #12888 Signed-off-by: Pascal de Bruijn <pascal@unilogicnetworks.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-20Merge branch 'topic/hda-optimize' into topic/hdaTakashi Iwai
2009-03-20ALSA: hda - Detect digital-mic inputs on ALC663 / ALC272Takashi Iwai
Fix the detection of digital-mic inputs on ALC663 / ALC272 codecs in the auto-detection mode. The automatic mic switch via plugging isn't implemented yet, though. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-19ALSA: hda - Don't show the current connection for power widgetsTakashi Iwai
The power-widgets have no connection selection, so skip the check in proc output, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-19ALSA: hda - Don't reset stream at each prepare callbackTakashi Iwai
Don't reset the stream at each prepare callback but do it only once after the open. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-19ALSA: hda - Don't reset BDL unnecessarilyTakashi Iwai
So far, the prepare callback is called multiple times, BDL entries are reset and re-programmed at each time. This patch adds the check to avoid the reset of BDL entries when the same parameters are used. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-18Merge branch 'fix/hda' into topic/hdaTakashi Iwai
2009-03-18ALSA: snd-hda-intel - add checks for invalid values to *query_supported_pcm()Jaroslav Kysela
If ratesp or formatsp values are zero, wrong values are passed to ALSA's the PCM midlevel code. The bug is showed more later than expected. Also, clean a bit the code. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-18ALSA: hda - Workaround for buggy DMA position on ATI controllersTakashi Iwai
The position-buffer on ATI controllers are unreliable as well as on VIA chips, thus the same workaround for DMA position reading as VIA is useful for ATI. Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-18ALSA: hda - Fix DMA mask for ATI controllersTakashi Iwai
ATI controllers (at least some SB0600 models) appear buggy to handle 64bit DMA. As a workaround, reset GCAP bit0 and let the driver to use only 32bit DMA on these controllers. Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-16ALSA: hda - Fix ALC662 beep againTakashi Iwai
The previous commit breaks the (digital-) beep on ALC662. ALC662 has the connection index 0x05 while ALC662 and ALC272 have the index 0x04 for the beep widget. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-16ALSA: snd-hda-intel: Fix ALC662/ALC663 Beep Amplifier IndexJaroslav Kysela
ALC662/663 codecs have Beep Amplifier Index 0x04 not 0x05 in 0x0b NID. Confirmed by testing on real hardware. Signed-off-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-13ALSA: hda - Add another HP model with IDT92HD71bx codecTakashi Iwai
HP laptops require GPIO0 on as EAPD. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-13ALSA: hda - power up before codec initializationTakashi Iwai
Change the power state of each widget before starting the initialization work so that all verbs are executed properly. Also, keep power-up during hwdep reconfiguration. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-12ALSA: hda - Add model=vaio for STAC9872Takashi Iwai
Add the default pin config for model=vaio (in case of broken BIOS). Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-12ALSA: hda - Print multiple out-amp values of pin widgets on Conext codecsTakashi Iwai
Add a flag to work around the non-standard amp-value handling on Conexant codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-12ALSA: hda - Add comments for the previous fix for conexant codecsTakashi Iwai
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-12ALSA: hda - fix headphone settings and master volume (Conexant CX20551)Gregorio Guidi
Update the places where the 0x1d widget is used for Conexant 5047, fixing mismatch introduced after changing the connection. Signed-off-by: Gregorio Guidi <gregorio.guidi@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-03-10ALSA: hda - Clean up Cxt5047 parserTakashi Iwai
Clean up Conexant 5047 pareser code: - Split mixer elements to separate arrays to reduce the duplicated entires - Fix mixer element names to the standard ones - Remove unneeded cxt5047_hp2_unsol_event; the normal unsol_event handler works fine. Signed-off-by: Takashi Iwai <tiwai@suse.de>