summaryrefslogtreecommitdiffstats
path: root/sound
Commit message (Collapse)AuthorAgeFilesLines
* ALSA: control: Use standard printk helpersTakashi Iwai2014-02-142-9/+8
| | | | | | | Use dev_err() & co as much as possible. If not available (no device assigned at the calling point), use pr_xxx() helpers instead. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: seq_oss: Drop debug printsTakashi Iwai2014-02-147-68/+0
| | | | | | | The debug prints in snd-seq-oss module are rather useless. Let's clean up before further modifications. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: Use standard device refcount for card accountingTakashi Iwai2014-02-143-40/+17
| | | | | | | | | Drop the own refcount but use the standard device refcounting via get_device() and put_device(). Introduce a new completion to snd_card instead of the wait queue for syncing the last release, which is used in snd_card_free(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: Use static groups for id and number card sysfs attr filesTakashi Iwai2014-02-141-13/+19
| | | | | | | ... instead of calling device_create_file() manually. No functional change. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: Embed card device into struct snd_cardTakashi Iwai2014-02-141-19/+35
| | | | | | | | | | | | | | | | As prepared in the previous patch, we are ready to create a device struct for the card object in snd_card_create() now. This patch changes the scheme from the old style to: - embed a device struct for the card object into snd_card struct, - initialize the card device in snd_card_create() (but not register), - registration is done in snd_card_register() via device_add() The actual card device is stored in card->card_dev. The card->dev pointer is kept unchanged and pointing to the parent device as before for compatibility reason. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ASoC: core: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-141-2/+1
| | | | | | | Also remove superfluous card->dev assignment. Reviewed-by: Mark Brown <broonie@linaro.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: spi: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-141-4/+2
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: sparc: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-143-9/+10
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: sh: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-142-4/+3
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ppc: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-143-8/+5
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: pcmcia: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-142-5/+4
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: parisc: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-141-3/+1
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: mips: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-143-6/+4
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: au1x00: convert to platform deviceManuel Lauss2014-02-141-98/+141
| | | | | | | | | | Make sound/mips/au1x00.c a proper platform_driver. [minor coding style fixes, cleanup and forward-ported by tiwai] Cc: Charles Eidsness <charles@cooper-street.com> Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: atmel: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-142-16/+7
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: arm: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-142-8/+4
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: firewire: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-144-8/+8
| | | | | | | Also remove superfluous snd_card_set_dev() calls. Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: usb: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-127-29/+31
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: pci: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-1256-156/+98
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: isa: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-1226-136/+96
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: drivers: Convert to snd_card_new() with a device pointerTakashi Iwai2014-02-1210-33/+23
| | | | | | Also remove superfluous snd_card_set_dev() calls. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: Mandate to pass a device pointer at card creation timeTakashi Iwai2014-02-121-3/+5
| | | | | | | | | | | | | | | | | | | | This is a part of preliminary works for modernizing the ALSA device structure. So far, we set card->dev at later point after the object creation. Because of this, the core layer doesn't always know which device is being handled before it's actually registered, and it makes impossible to show the device in error messages, for example. The first goal is to achieve a proper struct device initialization at the very beginning of probing. As a first step, this patch introduces snd_card_new() function (yes there was the same named function in the very past), in order to receive the parent device pointer from the very beginning. snd_card_create() is marked as deprecated. At this point, there is no functional change other than that. The actual change of the device creation scheme will follow later. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: Drop unused name argument in snd_register_oss_device()Takashi Iwai2014-02-128-22/+11
| | | | | | | The last argument, name, of snd_oss_register_device() is nowhere referred in the function in the current code. Let's drop it. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'for-linus' into for-nextTakashi Iwai2014-02-129-37/+89
|\
| * ALSA: hda - Fix undefined symbol due to builtin/module mixupTakashi Iwai2014-02-101-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even after the fix for leftover kconfig handling (commit f8f1becf), the current code still doesn't handle properly the builtin/module mixup case between the core snd-hda-codec and other codec drivers. For example, when CONFIG_SND_HDA_INTEL=y and CONFIG_SND_HDA_CODEC_HDMI=m, it'll end up with an unresolved symbol snd_hda_parse_hdmi_codec. This patch fixes the issue. Now codec->parser points to the parser object *only* when a module (either generic or HDMI parser) is loaded and bound. When a builtin symbol is used, codec->parser still points to NULL. This is the difference from the previous versions. Fixes: f8f1becfa4ac ('ALSA: hda - Fix leftover ifdef checks after modularization') Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix mic capture on Sony VAIO Pro 11Takashi Iwai2014-02-071-0/+1
| | | | | | | | | | | | | | | | | | The very same fixup is needed to make the mic on Sony VAIO Pro 11 working as well as VAIO Pro 13 model. Reported-and-tested-by: Hendrik-Jan Heins <hjheins@gmail.com> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add a headset quirk for Dell XPS 13David Henningsson2014-02-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | This quirk is needed for the headset microphone to work. Alsa-info at http://www.alsa-project.org/db/?f=8c7dfe857ceff462ca2de133e67023c0f68de9cb Cc: stable@vger.kernel.org (3.10+) Reported-by: Po-Hsu Lin <po-hsu.lin@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix inconsistent Mic mute LEDTakashi Iwai2014-02-076-18/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The current code for controlling mic mute LED in patch_sigmatel.c blindly assumes that there is a single capture switch. But, there can be multiple multiple ones, and each of them flips the state, ended up in an inconsistent state. For fixing this problem, this patch adds kcontrol to be passed to the hook function so that the callee can check which switch is being accessed. In stac_capture_led_hook(), the state is checked as a bitmask, and turns on the LED when all capture switches are off. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix leftover ifdef checks after modularizationTakashi Iwai2014-02-072-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Since the commit [595fe1b702c3: ALSA: hda - Make CONFIG_SND_HDA_CODEC_* tristate], the kconfig variables for the generic parser and codec drivers can be "m" instead of boolean, but some codes are left unchanged to check only #ifdef CONFIG_SND_HDA_CODEC_XXX, which is no longer true for modules. This patch fixes them by replacing with IS_ENABLED() macros. Fixes: 595fe1b702c3 ('ALSA: hda - Make CONFIG_SND_HDA_CODEC_* tristate') Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70161 Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Improve loopback path lookups for AD1983Takashi Iwai2014-02-051-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | AD1983 has flexible loopback routes and the generic parser would take wrong path confusingly instead of taking individual paths via NID 0x0c and 0x0d. For avoiding it, limit the connections at these widgets so that the parser can think more straightforwardly. This fixes the regression of the missing line-in loopback on Dell machine. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70011 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix missing VREF setup for Mac Pro 1,1Takashi Iwai2014-02-051-1/+8
| | | | | | | | | | | | | | | | | | | | Mac Pro 1,1 with ALC889A codec needs the VREF setup on NID 0x18 to VREF50, in order to make the speaker working. The same fixup was already needed for MacBook Air 1,1, so we can reuse it. Reported-by: Nicolai Beuermann <mail@nico-beuermann.de> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Add missing mixer widget for AD1983Takashi Iwai2014-02-051-0/+1
| | | | | | | | | | | | | | | | | | The mixer widget on AD1983 at NID 0x0e was missing in the commit [f2f8be43c5c9: ALSA: hda - Add aamix NID to AD codecs]. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=70011 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda/realtek - Avoid invalid COEFs for ALC271XTakashi Iwai2014-02-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We've seen often problems after suspend/resume on Acer Aspire One AO725 with ALC271X codec as reported in kernel bugzilla, and it turned out that some COEFs doesn't work and triggers the codec communication stall. Since these magic COEF setups are specific to ALC269VB for some PLL configurations, the machine works even without these manual adjustment. So, let's simply avoid applying them for ALC271X. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=52181 Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda - Fix silent output on Toshiba Satellite L40Takashi Iwai2014-02-041-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | Toshiba Satellite L40 with AD1986A codec requires the EAPD of NID 0x1b to be constantly on, otherwise the output doesn't work. Unlike most of other AD1986A machines, EAPD is correctly implemented in HD-audio manner (that is, bit set = amp on), so we need to clear the inv_eapd flag in the fixup, too. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=67481 Cc: <stable@vger.kernel.org> [v3.11+] Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Make snd_hda_gen_spec_free() staticTakashi Iwai2014-02-103-10/+2
| | | | | | | | | | | | | | | | The last user of snd_hda_gen_spec_free() is patch_via.c, and we can rewrite it safely with snd_hda_gen_free(), so that snd_hda_gen_spec_free() can be a local function in hda_generic.c. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Disable static quirks for C-Media codecsTakashi Iwai2014-02-101-10/+21
| | | | | | | | | | | | | | | | | | According to alsa-info.sh outputs, all three entries with static quirks have the correct pin configs, so it's safe to remove static quirks. For now, turn the static quirks off via ifdef. The dead codes will be removed in later release. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Move HDA_FIXUP_ACT_FREE call in snd_hda_gen_free()Takashi Iwai2014-02-103-10/+3
| | | | | | | | | | | | Now Realtek and Conexant codec parsers just call snd_hda_gen_free(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: Replace with IS_ENABLED()Takashi Iwai2014-02-1010-20/+20
| | | | | | | | | | | | | | | | | | | | | | | | Replace the lengthy #if defined(XXX) || defined(XXX_MODULE) with the new IS_ENABLED() macro. The patch still doesn't cover all ifdefs. For example, the dependency on CONFIG_GAMEPORT is still open-coded because this also has an extra dependency on MODULE. Similarly, an open-coded ifdef in pcm_oss.c and some sequencer-related stuff are left untouched. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: Fix typos in alsa-driver-api.xmlMasanari Iida2014-02-102-2/+2
| | | | | | | | | | | | | | | | | | This patch fixed 2 typos in DocBook/alsa-driver-api.xml. It is because this file is generated by make xmldocs, I have to fix typos within source files. Signed-off-by: Masanari Iida <standby24x7@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | sound: Move prototype declaration to header file oss/pas2.h from oss/pas2_card.cRashika Kheria2014-02-072-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | Move prototype declaration of function to header file oss/pas2.h from oss/pas2_card.c because it is used by more than one file. This eliminates the following warnings in oss/pas2_mixer.c: sound/oss/pas2_mixer.c:62:1: warning: no previous prototype for ‘mix_write’ [-Wmissing-prototypes] Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: lx6464es: Remove unused function in pci/lx6464es/lx_core.cRashika Kheria2014-02-071-84/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove unused function in pci/lx6464es/lx_core.c. This eliminates the following warning in pci/lx6464es/lx_core.c: sound/pci/lx6464es/lx_core.c:144:5: warning: no previous prototype for ‘lx_plx_mbox_read’ [-Wmissing-prototypes] sound/pci/lx6464es/lx_core.c:172:5: warning: no previous prototype for ‘lx_plx_mbox_write’ [-Wmissing-prototypes] sound/pci/lx6464es/lx_core.c:494:5: warning: no previous prototype for ‘lx_dsp_es_check_pipeline’ [-Wmissing-prototypes] Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: pcsp: Include appropriate header file in pcsp/pcsp_input.cRashika Kheria2014-02-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Include appropriate header file in drivers/pcsp/pcsp_input.c because it defines function whose prototype definitions are present in drivers/pcsp/pcsp_input.h. This eliminates the following warning in drivers/pcsp/pcsp_input.c: sound/drivers/pcsp/pcsp_input.c:42:6: warning: no previous prototype for ‘pcspkr_stop_sound’ [-Wmissing-prototypes] sound/drivers/pcsp/pcsp_input.c:80:5: warning: no previous prototype for ‘pcspkr_input_init’ [-Wmissing-prototypes] sound/drivers/pcsp/pcsp_input.c:110:5: warning: no previous prototype for ‘pcspkr_input_remove’ [-Wmissing-prototypes] Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add subwoofer quirks for Asus UX51VZH and N55SFDavid Henningsson2014-02-071-0/+12
| | | | | | | | | | | | | | | | | | | | Bug reporter report that the -mode4 makes the subwoofer work. I have simplified the quirk a bit to avoid possible regressions with the microphones. BugLink: https://bugs.launchpad.net/bugs/871808 Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Rename ASUS subwoofer quirksDavid Henningsson2014-02-071-9/+9
| | | | | | | | | | | | | | Just a small refactoring to make the next patch slightly simpler. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: hda - Add mute LED support to Lenovo IdeapadTakashi Iwai2014-02-031-1/+41
| | | | | | | | | | | | | | | | Lenovo Ideapad with ALC272 has a mute LED that is controlled via GPIO1. Add a simple vmaster hook for it. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=16373 Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: usb-audio: Resume mixer values properlyTakashi Iwai2014-02-033-25/+99
| | | | | | | | | | | | | | | | Implement reset_resume callback so that the mixer values are properly restored. Still no boot quirks are called, so it might not work well on some devices. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | Merge branch 'topic/hda' into for-nextTakashi Iwai2014-02-033-434/+395
|\ \ | |/ |/| | | The updates of HD-audio drivers for 3.15
| * ALSA: hda - Do not accept responses from non-existing codecsDavid Henningsson2014-01-301-14/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | While looking into some spurious responses, I found that the addr value was treated a bit inconsistent: values 8..0xf will be treated as codec 0 and values 0..7 will be treated as no error regardless of whether there is a codec there, or not. With this patch, all non-existing codecs will be treated equally. In addition, printing rp and wp could help figuring out if the wp value is reported wrongly from the controller or if something else is wrong. Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda/conexant - Disable static quirksTakashi Iwai2014-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | Now all weird setups have been converted to fixups for the generic parser, and we can disable the static quirks. This commit just turns the build off. The bulky static quirk code still remains for a while, in case we get an overlooked regression. It'll be removed at the next kernel version. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: hda/conexant - Enable stereo mix input for CX20549 and CX20551Takashi Iwai2014-01-301-0/+2
| | | | | | | | | | | | | | | | Both CX20549 and CX20551 codecs have a mixer widget and it can be connected as the ADC source. Like AD and VIA codecs, enable the add_stereo_mix_input flag for these codecs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
OpenPOWER on IntegriCloud