summaryrefslogtreecommitdiffstats
path: root/sound/core
Commit message (Collapse)AuthorAgeFilesLines
...
| * Merge branch 'topic/tlv-chmap' into for-nextTakashi Iwai2012-09-152-0/+218
| |\ | | | | | | | | | | | | This is a merge of a topic branch containing the support for the new channel map API using control elements.
| | * ALSA: Fix leftover chmap UNKNOWN -> MONO conversionsTakashi Iwai2012-09-131-2/+2
| | | | | | | | | | | | | | | | | | | | | A few files have been slipped from the previous commit to add MONO channel type. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: pcm - Use UNKNOWN chmap for mono streamsTakashi Iwai2012-09-111-2/+2
| | | | | | | | | | | | | | | | | | | | | In general, mono streams have no dedicated speaker assignment, thus they should be rather marked as UNKNOWN position. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: Remove VOLATILE flag from chmap ctlsTakashi Iwai2012-09-061-1/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The VOLATILE flag was added to control elements by snd_pcm_add_chmap_ctls() just because I didn't want to have a side-effect of "alsactl restore". But now the set operation doesn't allow to change the value unless the PCM stream is in PREAPRED state, there is no reason to keep this flag. Let's rip it off. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| | * ALSA: PCM: channel mapping API implementationTakashi Iwai2012-09-062-0/+219
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements the basic data types for the standard channel mapping API handling. - The definitions of the channel positions and the new TLV types are added in sound/asound.h and sound/tlv.h, so that they can be referred from user-space. - Introduced a new helper function snd_pcm_add_chmap_ctls() to create control elements representing the channel maps for each PCM (sub)stream. - Some standard pre-defined channel maps are provided for convenience. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ALSA: compress_core: integer overflow in snd_compr_allocate_buffer()Dan Carpenter2012-09-141-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | These are 32 bit values that come from the user, we need to check for integer overflows or we could end up allocating a smaller buffer than expected. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge branch 'for-linus' into for-nextTakashi Iwai2012-09-111-5/+3Star
| |\ \ | | |/ | |/| | | | To merge HD-audio fixes back to 3.7 development line
| * | ALSA: control: Fix missing VOLATILE flag at creating controlsTakashi Iwai2012-09-061-0/+1
| | | | | | | | | | | | | | | | | | | | | The SNDRV_CTL_ELEM_ACCESS_VOLATILE bit flag wasn't properly inherited at creating control elements via snd_ctl_new1(). Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge branch 'fixes' of git://git.alsa-project.org/alsa-kernel into for-nextTakashi Iwai2012-09-053-8/+5Star
| |\ \
| | * | ALSA: remove the main version informationJaroslav Kysela2012-09-043-8/+5Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove the main ALSA version number from the kernel ALSA driver. The ALSA driver package release diverges from the upstream. This may confuse users to see the same ALSA version for many kernel releases and this version lost it's original purpose and connection. The "ioctl" APIs have own version numbers, so the user space may check for specific API changes only. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
| | * | Merge tag 'sound-3.6' of ↵Linus Torvalds2012-08-081-1/+1
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound Pull sound fixes from Takashi Iwai: "Containing only a few really small/trivial fixes. The only urgent fix is a regression fix of HDMI codec probing, introduced in 3.6-rc1. The rest are HD-audio specific fixes and a copule of minor bug fixes in PCM core and the old emu10k1." * tag 'sound-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: hda - Fix double quirk for Quanta FL1 / Lenovo Ideapad ALSA: hda - Fix ugly debug prints with CONFIG_SND_VERBOSE_PRINTK=y ALSA: hda - remove redundant auto quirks for conexant 506x ALSA: hda - remove quirk for Dell Vostro 1015 ALSA: hda - add dock support for Thinkpad X230 ALSA: hda - Fix regression of HDMI codec probing ALSA: hda - add dock support for Thinkpad T430s ALSA: emu10k1: Avoid access to invalid pages when period=1 ALSA: PCM: Fix possible memory leaks in the error path
| * | | | ALSA: fix possible memory leak in snd_mixer_oss_build_input()Wei Yongjun2012-09-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | uinfo has been allocated in this function and should be freed before leaving from the error handling cases. spatch with a semantic match is used to found this problem. (http://coccinelle.lip6.fr/) Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | | ALSA: lto, sound: Fix export symbols for !CONFIG_MODULESAndi Kleen2012-08-201-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new LTO EXPORT_SYMBOL references symbols even without CONFIG_MODULES. Since these functions are macros in this case this doesn't work. Add a ifdef to fix the build. Signed-off-by: Andi Kleen <ak@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | | Merge branch 'topic/next' into for-nextTakashi Iwai2012-08-031-4/+9
| |\| | | | | |/ / | |/| |
* | | | switch SNDRV_PCM_IOCTL_LINK to fget_light()Al Viro2012-09-271-6/+7
| |_|/ |/| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
* | | ALSA: compress_core: fix open flags test in snd_compr_open()Dan Carpenter2012-09-111-5/+3Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | O_RDONLY is zero so the original test (f->f_flags & O_RDONLY) is always false and it will never do compress capture. The test for O_WRONLY is also slightly off. The original test would consider "->flags = (O_WRONLY | O_RDWR)" as write only instead of rejecting it as invalid. I've also removed the pr_err() because that could flood dmesg. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge tag 'asoc-3.6' of ↵Takashi Iwai2012-08-201-4/+9
|\ \ \ | |/ / |/| / | |/ | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus ASoC: Additional updates for 3.6 A batch more bugfixes, all driver-specific and fairly small and unremarkable in a global context. The biggest batch are for the newly added Arizona drivers.
| * sound: use printk_get_level and printk_skip_levelJoe Perches2012-07-311-4/+9
| | | | | | | | | | | | | | | | | | | | Make the output logging routine independent of the KERN_<LEVEL> style. Signed-off-by: Joe Perches <joe@perches.com> Cc: Kay Sievers <kay.sievers@vrfy.org> Cc: Takashi Iwai <tiwai@suse.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | ALSA: PCM: Fix possible memory leaks in the error pathTakashi Iwai2012-08-031-1/+1
|/ | | | | | | When the first page allocation failed for sgbuf, it leaks the records that have been formerly allocated. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/misc' into for-nextTakashi Iwai2012-07-182-2/+20
|\ | | | | | | Generic updates for sound 3.6
| * ALSA: pcm: Make constraints lists constMark Brown2012-07-051-2/+2
| | | | | | | | | | | | | | They aren't modified by the core so the drivers can declare them const. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: pcm: Add snd_pcm_rate_bit_to_rate()Dimitris Papastamos2012-06-181-0/+18
| | | | | | | | | | | | | | | | | | | | | | This is essentially the reverse of snd_pcm_rate_to_rate_bit(). This is generally useful as the Compress API uses the rate bit directly and it helps to be able to map back to the actual sample rate. Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: compress_core: cleanup pointers on stopVinod Koul2012-06-121-0/+4
| | | | | | | | | | | | | | | | as the start can be called after stop again, we need to reset state Signed-off-by: Namarta Kohli <namartax.kohli@intel.com> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: compress_core: don't wake up on pauseVinod Koul2012-06-121-3/+1Star
|/ | | | | | | | | during pause the core should maintain the status-quo on the device and pointers and not wake up. If app needs it should call DROP explcitly. Signed-off-by: Namarta Kohli <namartax.kohli@intel.com> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: core: group read of pointer, tstamp and jiffiesPierre-Louis Bossart2012-05-231-5/+18
| | | | | | | | | | Group read of hw_ptr, tstamp and jiffies in a sequence for better correlation. Previous code took timestamp at the end, which could introduce delays between audio time and system time. Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Merge branch 'topic/misc' into for-linusTakashi Iwai2012-05-214-13/+28
|\
| * ALSA: pcm - Add proper state checks to snd_pcm_drain()Takashi Iwai2012-05-211-1/+11
| | | | | | | | | | | | | | | | The handling for some PCM states is missing for snd_pcm_drain(). At least, XRUN streams should be simply dropped to SETUP, and a few initial invalid states should be rejected. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: pcm - Optimize the call of snd_pcm_update_hw_ptr() in read/write loopTakashi Iwai2012-05-111-8/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the PCM read/write loop, the driver calls snd_pcm_update_hw_ptr() at each time at the beginning of the loop. Russell King reported that this hogs CPU significantly. The current code assumes that the pointer callback is very fast and cheap, also not too much fine grained. It's not true in all cases. When the pointer advances short samples while the read/write copy has been performed, the driver updates the hw_ptr and gets avail > 0 again. Then it tries to read/write these small chunks. This repeats until the avail really gets to zero. For avoiding this situation, a simple workaround is to call snd_pcm_update_hw_ptr() only once at starting the loop, assuming that the read/write copy is performed fast enough. If the available count becomes short, it goes to snd_pcm_wait_avail() anyway, and this processes right. Tested-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: Fix the card number limit of OSS-emulationTakashi Iwai2012-05-081-3/+3
| | | | | | | | | | | | | | There are left-over codes from the ancient days with the static device number limitation of 8. Actaully OSS can support up to 16 cards. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * ALSA: jack: Update documention to reflect other userspace interfacesMark Brown2012-05-071-1/+4
| | | | | | | | | | | | | | | | | | Since this is a generic API which should support any userspace interface for reporting jacks update the documentation a little to make that a bit clearer. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ALSA: fix core/vmaster.c kernel-doc warningRandy Dunlap2012-04-181-0/+1
|/ | | | | | | | | Fix kernel-doc warning in sound/core/vmaster.c: Warning(sound/core/vmaster.c:429): No description found for parameter 'private_data' Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* Documentation: remove references to /etc/modprobe.confLucas De Marchi2012-03-311-1/+1
| | | | | | | | | | | | | | | | Usage of /etc/modprobe.conf file was deprecated by module-init-tools and is no longer parsed by new kmod tool. References to this file are replaced in Documentation, comments and Kconfig according to the context. There are also some references to the old /etc/modules.conf from 2.4 kernels that are being removed. Signed-off-by: Lucas De Marchi <lucas.demarchi@profusion.mobi> Acked-by: Takashi Iwai <tiwai@suse.de> Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* Merge tag 'device-for-3.4' of ↵Linus Torvalds2012-03-244-0/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux Pull <linux/device.h> avoidance patches from Paul Gortmaker: "Nearly every subsystem has some kind of header with a proto like: void foo(struct device *dev); and yet there is no reason for most of these guys to care about the sub fields within the device struct. This allows us to significantly reduce the scope of headers including headers. For this instance, a reduction of about 40% is achieved by replacing the include with the simple fact that the device is some kind of a struct. Unlike the much larger module.h cleanup, this one is simply two commits. One to fix the implicit <linux/device.h> users, and then one to delete the device.h includes from the linux/include/ dir wherever possible." * tag 'device-for-3.4' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: device.h: audit and cleanup users in main include dir device.h: cleanup users outside of linux/include (C files)
| * device.h: cleanup users outside of linux/include (C files)Paul Gortmaker2012-03-114-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For files that are actively using linux/device.h, make sure that they call it out. This will allow us to clean up some of the implicit uses of linux/device.h within include/* without introducing build regressions. Yes, this was created by "cheating" -- i.e. the headers were cleaned up, and then the fallout was found and fixed, and then the two commits were reordered. This ensures we don't introduce build regressions into the git history. Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
* | Merge branch 'topic/jack' into for-linusTakashi Iwai2012-03-181-2/+2
|\ \
| * | ALSA: Use a define for the number of jack switch typesMark Brown2012-02-271-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This is intended to facilitate the merge of the two jack detection mechanisms. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'topic/asoc' into for-linusTakashi Iwai2012-03-181-30/+69
|\ \ \
| * | | ALSA: PCM - Add PCM creation API for internal PCMs.Liam Girdwood2012-02-091-30/+69
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new ASoC dynamic PCM core needs to create PCMs and substreams that are for use by internal ASoC drivers only and not visible to userspace for direct IO. These new PCMs are similar to regular PCMs expect they have no device nodes or procfs entries. The ASoC component drivers use them in exactly the same way as regular PCMs for PCM and DAI operations. The intention is that a dynamic PCM based driver will register both regular PCMs and internal PCMs. The regular PCMs will be used for all IO with userspace however the internal PCMs will be used by the driver to route digital audio through numerous back end DAI links (with potentially a DSP providing different hw_params, DAI formats based on the regular front end PCM params) to devices like CODECs, MODEMs, Bluetooth, FM, DMICs, etc This patch adds a new snd_pcm_new_internal() API call to create the internal PCM without device nodes or procfs. It also adds adds a new internal flag to snd_pcm. [fixed minor coding-style issues by tiwai] Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | Merge branch 'for-linus' of ↵Linus Torvalds2012-01-271-5/+8
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: hda - Fix silent output on Haier W18 laptop ALSA: hda: set mute led polarity for laptops with buggy BIOS based on SSID ALSA: hda - Fix silent output on ASUS A6Rp ALSA: Fix memory leak on error in snd_compr_set_params() ALSA: ymfpci - Don't create invalid PCM & mixers when AC97 doesn't support
* | | Merge branch 'topic/misc' into for-linusTakashi Iwai2012-03-185-77/+114
|\ \ \
| * | | ALSA: pcm - Avoid GFP_ATOMIC in snd_pcm_link()Takashi Iwai2012-03-151-5/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | GFP_ATOMIC is used in snd_pcm_link() just because the kmalloc is called inside a lock. Since this function isn't too critical for speed and is rarely called in practice, better to allocate the chunk at first before spinlock and free it in error paths, so that GFP_KERNEL can be used. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: pcm: Constify the list in snd_pcm_hw_constraint_listMark Brown2012-03-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows the constraint lists to be declared const by drivers which seems reasonable; there's plenty of other constification we could do if we were being complete but this was easy and quick. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: control - Fixe a trailing white space errorJeffrin Jose2012-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed a trailing white space error detected in sound/core/control.c by checkpatch.pl script. Signed-off-by: Jeffrin Jose <ahiliation@yahoo.co.in> Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: core - Refactor card id string creation codeTakashi Iwai2012-03-091-69/+100
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The code to handle the card id string is fairly messy, so here is a tidy up. Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | | ALSA: Fixed a trailing white space errorJeffrin Jose2012-02-201-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | This is a patch to the sound/core/misc.c file that fixes up a trailing white space issue found by the checkpatch.pl tool. Signed-off-by: Jeffrin Jose <ahiliation@yahoo.co.in> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | ALSA: Add a hook capability to vmaster controlsTakashi Iwai2012-03-121-1/+45
| | | | | | | | | | | | | | | | | | | | | | | | This patch adds a hook to vmaster control to be called at each time when the master value is changed. It'd be handy for an additional mute LED control following the Master switch, for example. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge branch 'fix/asoc' into for-linusTakashi Iwai2012-01-311-1/+0Star
|\| | | |/ |/|
| * Merge branch 'for-linus' of ↵Linus Torvalds2012-01-171-10/+3Star
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ALSA: virtuoso: Xonar DS: fix polarity of front output ALSA: Au88x0 - Reduce the number of playback subdevices of au8830 from 32 to 16 ALSA: Au88x0 - Support 4 channels playback when AC97 codecs has SDAC bit ALSA: HDA: Fix internal microphone on Dell Studio 16 XPS 1645 ALSA: Don't prompt for CONFIG_SND_COMPRESS_OFFLOAD ALSA: HDA: Use LPIB position fix for Macbook Pro 7,1
| * \ Merge branch 'for-linus' of ↵Linus Torvalds2012-01-127-2/+842
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (526 commits) ASoC: twl6040 - Add method to query optimum PDM_DL1 gain ALSA: hda - Fix the lost power-setup of seconary pins after PM resume ALSA: usb-audio: add Yamaha MOX6/MOX8 support ALSA: virtuoso: add S/PDIF input support for all Xonars ALSA: ice1724 - Support for ooAoo SQ210a ALSA: ice1724 - Allow card info based on model only ALSA: ice1724 - Create capture pcm only for ADC-enabled configurations ALSA: hdspm - Provide unique driver id based on card serial ASoC: Dynamically allocate the rtd device for a non-empty release() ASoC: Fix recursive dependency due to select ATMEL_SSC in SND_ATMEL_SOC_SSC ALSA: hda - Fix the detection of "Loopback Mixing" control for VIA codecs ALSA: hda - Return the error from get_wcaps_type() for invalid NIDs ALSA: hda - Use auto-parser for HP laptops with cx20459 codec ALSA: asihpi - Fix potential Oops in snd_asihpi_cmode_info() ALSA: hdsp - Fix potential Oops in snd_hdsp_info_pref_sync_ref() ALSA: hda/cirrus - support for iMac12,2 model ASoC: cx20442: add bias control over a platform provided regulator ALSA: usb-audio - Avoid flood of frame-active debug messages ALSA: snd-usb-us122l: Delete calls to preempt_disable mfd: Put WM8994 into cache only mode when suspending ... Fix up trivial conflicts in: - arch/arm/mach-s3c64xx/mach-crag6410.c: renamed speyside_wm8962 to tobermory, added littlemill right next to it - drivers/base/regmap/{regcache.c,regmap.c}: duplicate diff that had already come in with other changes in the regmap tree
| * | | drop "select GCD" from three Kconfig filesPaul Bolle2011-11-131-1/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is no Kconfig symbol named GCD. The three select statements for that symbol are nops. Drop these. Signed-off-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Jiri Kosina <jkosina@suse.cz>