summaryrefslogtreecommitdiffstats
path: root/sound/pci (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: hda - Fix leftover codec->power_transitionTakashi Iwai2012-08-201-0/+2
| | | | | | | | | When the codec turn-on operation is canceled by the immediate power-on, the driver left the power_transition flag as is. This caused the persistent avoidance of power-save behavior. Cc: <stable@vger.kernel.org> [v3.5+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/ca0132-fix' into for-linusTakashi Iwai2012-08-203-145/+99
|\ | | | | | | | | This is a series of fixes for CA0132, especially the missing SPDIF I/O and the mixer build errors.
| * ALSA: hda - don't create dysfunctional mixer controls for ca0132David Henningsson2012-08-201-0/+8
| | | | | | | | | | | | | | | | | | | | | | It's possible that these amps are settable somehow, e g through secret codec verbs, but for now, don't create the controls (as they won't be working anyway, and cause errors in amixer). Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/1038651 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add missing SPDIF I/O setup for CA0132Takashi Iwai2012-08-081-6/+14
| | | | | | | | | | | | | | | | | | | | CA0132 driver had some codes to handle the S/PDIF I/O, but the actual setups of pins and converters were missing. Now the pins are added. Also, fixed a few points triggering invalid codec verbs and mixer elements since the digital I/O audio widgets on CA0132 have no amp. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Use the standard PCM ops for CA0132Takashi Iwai2012-08-081-113/+29
| | | | | | | | | | | | | | Now with the workaround using codec->pcm_format_first flag, we can clean up the home-baked codes in patch_ca0132.c. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix superfluous "-in" suffix from CA0132 capture itemsTakashi Iwai2012-08-081-2/+2
| | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add codec->pcm_format_first flagTakashi Iwai2012-08-082-24/+46
| | | | | | | | | | | | | | | | Introduced a new flag to set up the PCM stream format at first before the stream_id and channel tag. Some codecs (e.g. CA0132) seem preferring this over stream_id -> format order. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: sound/pci/rme9652/hdspm.c: fix error return codeJulia Lawall2012-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert a nonnegative error return code to a negative one, as returned elsewhere in the function. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> ( if@p1 (\(ret < 0\|ret != 0\)) { ... return ret; } | ret@p1 = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: sound/pci/sis7019.c: fix error return codeJulia Lawall2012-08-201-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize rc before returning on failure, as done elsewhere in the function. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> ( if@p1 (\(ret < 0\|ret != 0\)) { ... return ret; } | ret@p1 = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: sound/pci/ctxfi/ctatc.c: fix error return codeJulia Lawall2012-08-201-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize err before returning on failure, as done elsewhere in the function. A simplified version of the semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> ( if@p1 (\(ret < 0\|ret != 0\)) { ... return ret; } | ret@p1 = 0 ) ... when != ret = e1 when != &ret *if(...) { ... when != ret = e2 when forall return ret; } // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Don't send invalid volume knob command on IDT 92hd75bxxDavid Henningsson2012-08-161-4/+5
| | | | | | | | | | | | | | | | Instead of blindly initializing a volume knob widget, first check that there actually is a volume knob widget. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: lx6464es: Add a missing error checkTakashi Iwai2012-08-141-0/+2
| | | | | | | | | | | | Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=44541 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix 'Beep Playback Switch' with no underlying mute switchDavid Henningsson2012-08-141-2/+11
| | | | | | | | | | | | | | | | | | Some Conexant devices (e g CX20590) have no mute capability on their Beep widgets. This patch makes sure we don't try setting mutes on those widgets. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - fix Copyright debug messageWang Xingchao2012-08-131-1/+1
| | | | | | | | | | | | | | | | As spec said, 1 indicates no copyright is asserted. Signed-off-by: Wang Xingchao <xingchao.wang@intel.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA : hda - bug fix on checking the supported power states of a codecMengdong Lin2012-08-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The return value of snd_hda_param_read() is -1 for an error, otherwise it's the supported power states of a codec. The supported power states is a 32-bit value. Bit 31 will be set to 1 if the codec supports EPSS, thus making "sup" negative. And the bit 28:5 is reserved as "0". So a negative value other than -1 shall be further checked. Please refer to High-Definition spec 7.3.4.12 "Supported Power States", thanks! Signed-off-by: Mengdong Lin <mengdong.lin@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix panned "Beep Playback Switch"David Henningsson2012-08-101-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | When "Beep Playback Switch" had a different value on left and right channels (such as muting left but not right, or vice versa), this could result in the right channel being ignored. This patch enables beep to be sounding from right channel only, and also give correct result back to userspace (e g amixer). Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: cs46xx - signedness bug in snd_cs46xx_codec_read()Dan Carpenter2012-08-101-1/+1
| | | | | | | | | | | | | | | | This function returns its own error codes instead of normal negative error codes. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda_intel: Add Device IDs for Intel Lynx Point-LP PCHJames Ralston2012-08-091-0/+9
| | | | | | | | | | | | | | This patch adds the Intel HD Audio Device IDs for the Intel Lynx Point-LP PCH Signed-off-by: James Ralston <james.d.ralston@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Fix pop noise in headphones on S3 for Asus X55A, X55VDavid Henningsson2012-08-091-0/+8
|/ | | | | | | | | | To turn off pin control for the pin was tested, and helped against this issue. BugLink: https://bugs.launchpad.net/bugs/1034779 Tested-by: Chih-Hsyuan Ho <chih.ho@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix double quirk for Quanta FL1 / Lenovo IdeapadDavid Henningsson2012-08-081-2/+3
| | | | | | | | The same ID is twice in the quirk table, so the second one is not used. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Cc: <stable@vger.kernel.org> [v3.2+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix ugly debug prints with CONFIG_SND_VERBOSE_PRINTK=yTakashi Iwai2012-08-071-3/+2
| | | | | | | | | | | | | | | | When CONFIG_SND_VERBOSE_PRINTK=y is set, the debug print in hda_auto_parser.c looks really ugly like: ALSA sound/pci/hda/hda_auto_parser.c:331 mono: mono_out=0x0 ALSA sound/pci/hda/hda_auto_parser.c:334 dig-out=0x12/0x0 ALSA sound/pci/hda/hda_auto_parser.c:335 inputs: ALSA sound/pci/hda/hda_auto_parser.c:339 Mic=0x11ALSA sound/pci/hda/hda_auto_parser.c:339 Line=0x10 ALSA sound/pci/hda/hda_auto_parser.c:341 ALSA sound/pci/hda/hda_auto_parser.c:343 dig-in=0x13 Better to put one item at each line. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - remove redundant auto quirks for conexant 506xDavid Henningsson2012-08-071-5/+0
| | | | | | | | Now that the auto model is the default, these quirks are redundant and can be removed. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - remove quirk for Dell Vostro 1015David Henningsson2012-08-071-1/+0
| | | | | | | | | This computer is confirmed working with model=auto on kernel 3.2. Also, parsing fails with hda-emu with the current model. Cc: stable@kernel.org (3.2+) Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - add dock support for Thinkpad X230Felix Kaechele2012-08-071-0/+1
| | | | | | | | | As with the ThinkPad Models X230 Tablet and T530 the X230 needs a qurik to correctly set up the pins for the dock port. Signed-off-by: Felix Kaechele <felix@fetzig.org> Cc: <stable@vger.kernel.org> [v3.2+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix regression of HDMI codec probingTakashi Iwai2012-08-061-3/+9
| | | | | | | | | | The commit c4bfe94a causes a regression on some codecs at probing. Since this was just a workaround to shut up a kernel warning, it'd be better to revert and fix properly. So we ended up with re-adding the cleanup callback. Tested-and-reported-by: Matt Horan <matt@matthoran.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - add dock support for Thinkpad T430sPhilipp A. Mohrenweiser2012-08-061-0/+1
| | | | | | | | | | | Add a model/fixup string "lenovo-dock", for Thinkpad T430s, to allow sound in docking station. Tested on Lenovo T430s with ThinkPad Mini Dock Plus Series 3 Cc: stable@kernel.org Signed-off-by: Philipp A. Mohrenweiser <phiamo@googlemail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: emu10k1: Avoid access to invalid pages when period=1Takashi Iwai2012-08-031-1/+4
| | | | | | | | | | | When period=1, the driver tries to allocate a bit bigger buffer than requested by the user due to the irq latency tolerance. This may lead to accesses over the actually allocated pages. This patch adds a check of the page index and assigns the silent page when it's over the given buffer size. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Support dock on Lenovo Thinkpad T530 with ALC269VCTakashi Iwai2012-08-021-0/+1
| | | | | | | | | | Lenovo Thinkpad T530 with ALC269VC codec has a dock port but BIOS doesn't set up the pins properly. Enable the pins as well as on Thinkpad X230 Tablet. Reported-and-tested-by: Mario <anyc@hadiko.de> Cc: <stable@vger.kernel.org> [v3.2+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix mute-LED GPIO initialization for IDT codecsTakashi Iwai2012-07-311-1/+6
| | | | | | | | | | | | | | The IDT codecs initializes the GPIO setup for mute LEDs via snd_hda_sync_vmaster_hook(). This works in most cases except for the very first call, which is called before PCM and control creations. Thus before Master switch is set manually via alsactl, the mute LED may show the wrong state, depending on the polarity. Now it's fixed by calling the LED-status update function manually when no vmaster is set yet. Cc: <stable@vger.kernel.org> [v3.4+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix polarity of mute LED on HP Mini 210Takashi Iwai2012-07-311-0/+5
| | | | | | | | | | | The commit a3e199732b made the LED working again on HP Mini 210 but with a wrong polarity. This patch fixes the polarity for this machine, and also introduce a new model string "hp-inv-led". Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=772923 Cc: <stable@vger.kernel.org> [v3.3+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Workaround for silent output on VAIO Z with ALC889Takashi Iwai2012-07-291-1/+21
| | | | | | | | | | | | | | | | | On recent kernels, Realtek codec parser tries to optimize the routing aggressively and take the headphone output as primary at first. This caused a regression on VAIO Z with ALC889, the silent output from the speaker. The problem seems that the speaker pin must be connected to the first DAC (0x02) on this machine by some reason although the codec itself advertises the flexible routing with any DACs. This patch adds a fix-up for choosing the speaker pin as the primary so that the right DAC is assigned on this device. Reported-and-tested-by: Adam Williamson <awilliam@redhat.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix WARNING from HDMI/DP parserTakashi Iwai2012-07-271-0/+3
| | | | | | | | The recent fix to converter detaching timing in patch_hdmi.c leads to a kernel WARNING due to a sanity check when the debug option is set. Add a workaround by setting a dummy hinfo->nid. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Detach from converter at closing in patch_hdmi.cTakashi Iwai2012-07-261-7/+4
| | | | | | | | The generic HDMI code detaches the converter from the stream when unused, but it must be done rather in the close callback instead of the cleanup callback. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix mute-LED GPIO setup for HP Mini 210Takashi Iwai2012-07-261-1/+9
| | | | | | | | | | | | | | | BIOS on HP Mini 210 doesn't provide the proper "HP_Mute_LED" DMI string, thus the driver doesn't initialize the GPIO, too. In the earlier kernel, the driver falls back to GPIO1, but since 3.3 we've stopped this due to other wrongly advertised machines. For fixing this particular case, add a new model type to specify the default polarity explicitly so that the fallback to GPIO1 is handled. Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=772923 Cc: <stable@vger.kernel.org> [v3.3+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Fix invalid D3 of headphone DAC on VT202x codecsTakashi Iwai2012-07-251-2/+5
| | | | | | | | | | | | | | We've got a bug report about the silent output from the headphone on a mobo with VT2021, and spotted out that this was because of the wrong D3 state on the DAC for the headphone output. The bug is triggered by the incomplete check for this DAC in set_widgets_power_state_vt1718S(). It checks only the connectivity of the primary output (0x27) but doesn't consider the path from the headphone pin (0x28). Now this patch fixes the problem by checking both pins for DAC 0x0b. Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - add dock support for Thinkpad X230 TabletDavid Henningsson2012-07-201-0/+27
| | | | | | | | | | | | Also add a model/fixup string "lenovo-dock", so that other Thinkpad users will be able to test this fixup easily, to see if it enables dock I/O for them as well. Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/1026953 Tested-by: John McCarron <john.mccarron@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: hda - Turn on PIN_OUT from hdmi playback prepare.Dylan Reid2012-07-201-6/+6
| | | | | | | | | | | | Turn on the pin widget's PIN_OUT bit from playback prepare. The pin is enabled in open, but is disabled in hdmi_init_pin which is called during system resume. This causes a system suspend/resume during playback to mute HDMI/DP. Enabling the pin in prepare instead of open allows calling snd_pcm_prepare after a system resume to restore audio. Signed-off-by: Dylan Reid <dgreid@chromium.org> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/pm-convert' into for-nextTakashi Iwai2012-07-1962-325/+4775
|\ | | | | | | | | | | | | This merges the changes for converting to new PM ops for platform and some other drivers. Also move some header files to local places from the public include/sound.
| * ALSA: Move some headers to local directories from include/soundTakashi Iwai2012-07-0315-9/+4285
| | | | | | | | | | | | | | | | This is a bit clean up of public sound header directory. Some header files in include/sound aren't really necessary to be located there but can be moved to their local directories gracefully. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: Convert to new pm_ops for PCI driversTakashi Iwai2012-07-0353-316/+490
| | | | | | | | | | | | | | | | | | | | Straightforward conversion to the new pm_ops from the legacy suspend/resume ops. Since we change vx222, vx_core and vxpocket have to be converted, too. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - make sure alc268 does not OOPS on codec parseDavid Henningsson2012-07-181-2/+2
| | | | | | | | | | | | | | | | A recent commit made patch_alc268 call snd_hda_pick_fixup with NULL quirk pointer. Make sure we do not reference that NULL pointer. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'topic/misc' into for-nextTakashi Iwai2012-07-189-92/+119
|\ \ | | | | | | | | | Generic updates for sound 3.6
| * | ALSA: es1938: replace TLV_DB_RANGE_HEAD with DECLARE_TLV_DB_RANGEClemens Ladisch2012-07-161-15/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of the hard-to-mantain TLV_DB_RANGE_HEAD macro, use DECLARE_TLV_DB_RANGE, which computes its size automatically. (Also make this data const on the way.) Signed-off-by: Clemens Ladisch <clemens@ladisch.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: pcxhr: Add LTC supportMarkus Bollinger2012-06-206-1/+83
| | | | | | | | | | | | | | | | | | | | | add LTC (linear timecode) read function via proc interface to the pcxhr driver Signed-off-by: Markus Bollinger <bollinger@digigram.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: pcxhr: Fix a counter wrapMarkus Bollinger2012-06-201-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | fix a counter wrap to avoid resynchronization of stream positions every several minutes. The resynchronization may create stream position jitter Signed-off-by: Markus Bollinger <bollinger@digigram.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: maestro3: Remove unused AC97 register definitionsEzequiel Garcia2012-06-181-68/+0
| | | | | | | | | | | | | | | Signed-off-by: Ezequiel Garcia <elezegarcia@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: au88x0 - Remove unused "Master Mono" Playback Volume and Playback ↵Raymond Yau2012-06-051-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch of ac97 codec Remove "Master Mono Playback Volume" and "Master Mono Playback Switch" of ac97 mixer since au88x0 does no use "Master Mono Pin" of AC97 codec even au88x0 support mono playback Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'topic/hda' into for-nextTakashi Iwai2012-07-1814-311/+590
|\ \ \ | | | | | | | | | | | | This is a large chunk merge for 3.6 HD-audio things
| * | | ALSA: hda - Add support for Realtek ALC282David Henningsson2012-07-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This codec has a separate dmic path (separate dmic only ADC), and thus it looks mostly like ALC275. Cc: stable@kernel.org BugLink: https://bugs.launchpad.net/bugs/1025377 Tested-by: Ray Chen <ray.chen@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: hda - Fix index number conflicts of phantom jacksTakashi Iwai2012-07-171-15/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since some jack controls may be renamed as phantom jacks, the existing check for index conflicts doesn't work because it simply compares the name with the last used name, assuming that the controls with the same name continue. Thus, it would result in the duplicated controls when two or more phantom jacks with the very same type exist, and the driver gives up with an error. This patch fixes the problem by checking the index number conflicts more intensively (but dumbly). Signed-off-by: Takashi Iwai <tiwai@suse.de>