aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'linux-stable/linux-3.0.y' into ↵Ziyan2015-10-251-0/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | p-android-omap-3.0-dev-espresso Conflicts: Makefile arch/arm/include/asm/hardware/cache-l2x0.h arch/arm/kernel/smp.c arch/arm/mach-omap2/board-4430sdp.c arch/arm/mach-omap2/board-omap4panda.c arch/arm/mach-omap2/opp.c arch/ia64/include/asm/futex.h drivers/bluetooth/ath3k.c drivers/bluetooth/btusb.c drivers/firmware/efivars.c drivers/gpu/drm/i915/intel_lvds.c drivers/gpu/drm/radeon/radeon_atombios.c drivers/gpu/drm/radeon/radeon_irq_kms.c drivers/hwmon/fam15h_power.c drivers/mfd/twl6030-irq.c drivers/mmc/core/sdio.c drivers/net/tun.c drivers/net/usb/ipheth.c drivers/net/usb/usbnet.c drivers/usb/core/hub.c drivers/usb/host/xhci-mem.c drivers/usb/host/xhci.h drivers/usb/musb/omap2430.c drivers/usb/serial/ftdi_sio.c drivers/usb/serial/ftdi_sio_ids.h drivers/usb/serial/option.c drivers/usb/serial/qcserial.c drivers/usb/serial/ti_usb_3410_5052.c drivers/usb/serial/ti_usb_3410_5052.h drivers/video/omap2/dss/hdmi.c fs/splice.c include/asm-generic/pgtable.h include/net/sch_generic.h kernel/cgroup.c kernel/futex.c kernel/time/timekeeping.c net/ipv4/route.c net/ipv4/syncookies.c net/ipv4/tcp_ipv4.c net/wireless/util.c security/commoncap.c sound/soc/soc-dapm.c
| * ALSA: Add a reference counter to card instanceTakashi Iwai2012-11-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | commit a0830dbd4e42b38aefdf3fb61ba5019a1a99ea85 upstream. For more strict protection for wild disconnections, a refcount is introduced to the card instance, and let it up/down when an object is referred via snd_lookup_*() in the open ops. The free-after-last-close check is also changed to check this refcount instead of the empty list, too. Reported-by: Matthieu CASTET <matthieu.castet@parrot.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* | ALSA: pcm: export 'snd_interval_step' symbolMisael Lopez Cruz2012-05-111-0/+2
| | | | | | | | | | | | | | | | Export 'snd_interval_step' symbol so that ALSA drivers can use it to add hw rules. Change-Id: Ic7d38683a46d281db9b1a36a5d5eabdb92876153 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | Merge branch 'android-omap-3.0' into p-android-omap-3.0Dan Murphy2012-02-161-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: arch/arm/mach-omap2/Kconfig arch/arm/mach-omap2/clock44xx_data.c arch/arm/mach-omap2/omap_twl.c drivers/gpu/pvr/ion.c drivers/gpu/pvr/ion.h drivers/gpu/pvr/mm.c drivers/gpu/pvr/omap4/syslocal.h drivers/gpu/pvr/sgxfeaturedefs.h drivers/mmc/host/omap_hsmmc.c drivers/usb/gadget/android.c drivers/video/hdmi_ti_4xxx_ip.c drivers/video/omap2/dss/dispc.c drivers/video/omap2/dss/hdmi.c fs/proc/base.c include/video/hdmi_ti_4xxx_ip.h sound/soc/codecs/twl6040.c sound/soc/omap/sdp4430.c Change-Id: Ia1edb1885eff7554aead12780898502df08b7c83 Signed-off-by: Dan Murphy <dmurphy@ti.com>
* | ASoC: core: Search CODEC in a SoC cardMisael Lopez Cruz2011-09-131-0/+2
| | | | | | | | | | | | | | | | | | | | Search a CODEC by its name in a SoC card. This is mostly useful for machine drivers when trying to access a specific CODEC of the sound card. Change-Id: I62422f380782f4aa35d3ff0d3b0a88c5ca4da969 Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | ASoC: DAPM: Allow reading DAPM widget power stateMisael Lopez Cruz2011-09-131-0/+2
| | | | | | | | | | | | | | | | | | Allow reading the power state of DAPM widgets which can be useful for machine-level operations/adaptations done post-DAPM stream event notification. Change-Id: I08bacdd54190a5230e928e1c9c6fbdd9729603a9 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | ASoC: DAPM: Add card stream event notificationMisael Lopez Cruz2011-09-131-0/+1
| | | | | | | | | | | | | | | | Add stream event notification for sound card. Change-Id: Ib009bc1889e55bde4b434309090ba1c44f948e4d Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | ASoC: ABE DSP: Use new API for context lossMisael Lopez Cruz2011-09-071-2/+1
| | | | | | | | | | | | | | | | Use new API provided by PM framework to query if ABE context was lost or not. Change-Id: Ic4c4654f898b132dff06ae2f1544d4a4783a39ef Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | ASoC: DSP: Add state and hw_params info to debugfsMisael Lopez Cruz2011-09-061-0/+1
| | | | | | | | | | | | | | | | | | Add information about state and hw_params for FE and its BE clients. Change-Id: Ia0e88a3318ee176fcb89e36e5183e3938d0b5019 Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | ASoC: DSP: Disambiguate hardware params namesMisael Lopez Cruz2011-09-062-2/+2
| | | | | | | | | | | | | | | | | | Rename hardware configuration parameters to "hw_params" in order to disambiguate the previous variable name "params". Change-Id: I22a7dbab916883889626571deffc5f03ceb9bb28 Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | Merge branch 'linux-omap-audio-3.0' into linux-omap-3.0Simon Wilson2011-08-303-5/+24
|\ \ | | | | | | | | | Signed-off-by: Simon Wilson <simonwilson@google.com>
| * | ASoC: DSP: Use per FE/BE stateMisael Lopez Cruz2011-08-302-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Handle states of FEs and BEs in their DSP runtime data, as opposite to handling it in DSP link. This allows to have a single reference of FEs/BEs state which is key when doing state transitions. New states are defined for FEs/BEs which are a one-to-one map with PCM states. The DSP link states will represent only if a particular link is active or ready for pruning. Change-Id: Icdd5ea33efb1277ad341693d1b3b0d99d2d1fa3d Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
| * | ASoC: dapm: Add codec/platform DAPM stream eventMisael Lopez Cruz2011-08-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Allow CODEC and platform drivers to send stream events to DAPM core. Change-Id: Ie6d0f3055f62afc3ec748071ae0bdab97b165654 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
| * | ASoC: core: Introduce pre/post DAI link operationsMisael Lopez Cruz2011-08-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DAI links may require to setup machine-dependent external conditions (like clocks, power supplies) for their CPU -> CODEC link to be ready for audio activity, so pre and post operations are introduced for that purpose. Change-Id: Ie8346815c50d8b163c0d6b96f407faa60d3f67b2 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | | Merge branch 'linux-omap-audio-3.0' into linux-omap-3.0Simon Wilson2011-08-171-0/+1
|\ \ \ | |/ / | | | | | | | | | Change-Id: Ife85b7eabd8311bde9d599bb9d111fb2835549a1 Signed-off-by: Simon Wilson <simonwilson@google.com>
| * | ASoC: dapm: Fix race condition for widgets power list creationMisael Lopez Cruz2011-08-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Multiple calls to dapm_power_widgets() can create a race condition causing widget power list to be corrupted. Those scenarios can occur in multistream usecases, stream start/stop along with update power calls (mixer, mux, dapm_sync, stream_event) simultaneously. Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com> Change-Id: I5aad827292b7521a621e5b734f807c08f7a5536f
* | | Merge branch 'linux-omap-audio-3.0' into linux-omap-3.0Simon Wilson2011-08-171-12/+19
|\ \ \ | |/ / | | | | | | | | | Change-Id: Ifaabd15114a7624bdbdb477d8c4a7eea6c193b68 Signed-off-by: Simon Wilson <simonwilson@google.com>
| * | ASoC: DSP: Identify runtime update typeMisael Lopez Cruz2011-08-171-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce more granularity on the type of runtime update to perform on frontends and backends. Action on frontends can come only from frontend PCM operations. However, backends actions can come from frontends PCM operations or from route changes triggered by muxes/mixeres. Backend actions triggered from audio route changes are managed through frontend handlers, so frontends need to have a mechanism to identify where the action was originated. Change-Id: If550584ce49c9ae754a3e99a8bf6a4c84f6199a4 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Pankaj Jindal <pankajjindal@ti.com>
* | | Merge branch 'linux-omap-audio-3.0' into linux-omap-3.0Simon Wilson2011-08-031-0/+3
|\ \ \ | |/ / | | | | | | | | | Change-Id: Ib89e9737ac6a2af7c03440015f21da0b5ff9d311 Signed-off-by: Simon Wilson <simonwilson@google.com>
| * | ASoC: ABE DSP: Add OPP scalingMisael Lopez Cruz2011-08-031-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ABE OPP is selected based on audio routes enabled at a given time. ABE DSP driver doesn't make use of OPP APIs explicitly anymore, instead it's done through platform_data. Change-Id: I784bdeff1ebf4d8a16b3e419f711e7bd81ccf23a Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: PankajJindal <pankajjindal@ti.com>
* | | Merge branch 'linux-omap-audio-3.0' into linux-omap-3.0Simon Wilson2011-07-291-4/+2
|\ \ \ | |/ / | | | | | | Signed-off-by: Simon Wilson <simonwilson@google.com>
| * | ASoC: DSP: Add suspend/resume for FEsMisael Lopez Cruz2011-07-291-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | Currently, FEs were suspending/resuming their BE clients but were not suspending/resuming themselves. Change-Id: Ic23b23755ebace644604f37d73c6849166428862 Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
* | | Merge commit 'v3.0-rc6' into linux-omap-3.0Colin Cross2011-07-111-1/+8
|\ \ \ | | |/ | |/|
| * | ALSA: sb16 - Fix build errors on MIPS and others with 13bit ioctl sizeTakashi Iwai2011-06-301-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One of ioctl definition in sound/sb16_csp.h contains the data size over 8kB, and this causes build errors on architectures like MIPS, which define _IOC_SIZEBITS=13. For avoiding this build errors but keeping the compatibility, manually expand with _IOC() instead of using _IOW() for the problematic ioctl. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | Merge commit 'v3.0-rc5' into linux-omap-3.0Colin Cross2011-06-291-2/+1
|\ \ \ | |/ / | | / | |/ |/|
| * ASoC: Remove unused and about to be broken SND_SOC_CUSTOM I/O busMark Brown2011-06-131-2/+1
| | | | | | | | | | | | | | This will be removed in -next so let's drop it from mainline as soon as we can in order to minimise surprises. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: core - improve probe/remove orderingLiam Girdwood2011-06-172-6/+15
| | | | | | | | | | | | Improve probe/remove order by defining ordering levels. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dsp - cleanup struct dsp_linkLiam Girdwood2011-06-171-7/+2
| | | | | | | | | | | | Refactor out some member resulting in code reduction. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: OMAP4 ABE DSP - Add support for the OMAP4 ABE DSPLiam Girdwood2011-06-141-0/+19
| | | | | | | | | | | | | | This patch adds the OMAP4 ABE platform driver. This driver defines and exports control for the DSP Frontend and Backend routing. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - add hostless DAI supportLiam Girdwood2011-06-142-0/+4
| | | | | | | | | | | | | | | | | | Allow some PCM devices to be hostless, i.e. there is no PCM data transferred to or from the host CPU. This can be used to minimise power on systems since the CPU can idle/sleep during the PCM device operation (e.g. a phone call where the DAI is between a MODEM and DSP) Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
* | ASoC: core - add dynamic kcontrolsLiam Girdwood2011-06-141-0/+9
| | | | | | | | | | | | Add initial implementation of dynamic kcontrols. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dsp - Add ASoC DSP coreLiam Girdwood2011-06-143-0/+273
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds ASoC core support for internal and external DSPs and represents them to the audio user as a CODEC like device with mixers, muxes and runtime audio route changing. The DSP core allows DSP DAIs to be dynamically re-routed at runtime between the PCM device end (or Frontend - FE) and the physical DAI (Backend - BE) using regular kcontrols (just like a hardware CODEC). The DSP core also deal with DSP FE+BE suspend and resume PM ops. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dapm - allow custom widgets to update power events.Liam Girdwood2011-06-141-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. Allow for the operation of custom mixer and mux DAPM widgets that can call snd_soc_dapm_mixer_update_power() and snd_soc_dapm_mux_update_power() directly after updating their status. This adds two previously static calls to the public DAPM API. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dapm - Add locking to the DAPM power_widgets()Liam Girdwood2011-06-141-0/+1
| | | | | | | | | | | | Add locking to the DAPM power_widgets function. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dapm - Add API call to query valid DAPM pathsLiam Girdwood2011-06-141-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. Add a DAPM API call to determine whether a DAPM audio path is valid between source and sink widgets. This also takes into account all kcontrol mux and mixer settings in between the source and sink widgets to validate the audio path. This will be used by the DSP core to determine the runtime DAI mappings between FE and BE DAIs in order to run PCM operations. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - Add platform driver DAPM widgets/kcontrolsLiam Girdwood2011-06-142-0/+11
| | | | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. Allow platform drivers to export widgets and kcontrols. This is required to support DSP dynamic DAI routing and power management where platform DSP drivers have kcontrols, DAPM widgets etc. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - pcm mutex per rtdLiam Girdwood2011-06-141-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. The new DSP core allows DSP DAIs to be dynamically re-routed at runtime between the PCM device end (or Frontend - FE) and the physical DAI (Backend - BE) using regular kcontrols (just like a hardware CODEC). The DSP core therefore must be able to call PCM operations for both the Frontend and Backend(s) DAIs at the same time. Currently we have a global pcm_mutex that is used to serialise the ASoC PCM operations. This patch removes the global mutex and adds a mutex per RTD allowing the PCM operations to be reentrant and allow control of more than one DAI at at time. e.g. a frontend DSP hw_params() could configure multiple backend hw_params() with similar or different hw parameters at the same time. Also fix the naming of soc_pcm_close. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dapm - Add DAPM stream completion eventLiam Girdwood2011-06-142-0/+7
| | | | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. This adds a callback function to be called at the completion of a DAPM stream event. This can be used by DSP components to perform calculations based on DAPM graphs. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - refactor pcm_new() to pass only rtdLiam Girdwood2011-06-141-2/+1
| | | | | | | | | | | | | | | | | | | | In preparation for ASoC DSP support. Currently pcm_new() passes in card, pcm and DAI. Refactor this to only pass in rtd since rtd contains card, pcm and DAI. Struct rtd also contain other members too that are useful to DSPs. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - Allow some components to probe/remove later or earlierLiam Girdwood2011-06-142-0/+12
| | | | | | | | | | | | | | | | | | | | Some ASoC components depend on other ASoC components to provide clocks and power resources in order to probe(). Provide a method to allow some components to be probed() later and be also removed() earlier. Signed-off-by: Liam Girdwood <lrg@ti.com>
* | ASoC: dapm - add method to get AIF widget from streamLiam Girdwood2011-06-141-0/+2
|/ | | | | | | | In preparation for ASoC DSP support. Provide a method to get the AIF widget name from the stream name. Signed-off-by: Liam Girdwood <lrg@ti.com>
* Merge branch 'topic/asoc' into for-linusTakashi Iwai2011-05-228-43/+230
|\
| * Merge branch 'for-2.6.40' of ↵Takashi Iwai2011-05-202-2/+2
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
| | * ASoC: tpa6130a2: Update e-mail addressPeter Ujfalusi2011-05-111-1/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@ti.com>
| | * ASoC: tlv320dac33: Update e-mail addressPeter Ujfalusi2011-05-111-1/+1
| | | | | | | | | | | | | | | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@ti.com>
| * | ASoC: Asahi Kasei AK4641 codec driverDmitry Artamonow2011-05-191-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A driver for the AK4641 codec used in iPAQ hx4700 and Glofiish M800 among others. Signed-off-by: Harald Welte <laforge@gnumonks.org> Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: core - allow ASoC more flexible machine nameLiam Girdwood2011-05-121-0/+2
| |/ | | | | | | | | | | | | | | | | Allow ASoC machine drivers to register a driver name and a longname. This allows user space to determine the flavour of machine driver. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * Merge branch 'topic/asoc' of ↵Mark Brown2011-05-031-1/+1
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.40
| | * ASoC: Declare const properly for enum textsTakashi Iwai2011-05-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The enum texts are supposed to be const char * const []. Without the second const, it gets compile warnings like sound/soc/codecs/max98095.c:607:2: warning: initialization discards qualifiers from pointer target type Signed-off-by: Takashi Iwai <tiwai@suse.de>
| * | ASoC: Store a list of widgets in a DAPM mux/mixer kcontrolStephen Warren2011-05-031-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A future change will allow multiple widgets to be affected by the same control. For example, a single register bit that controls separate muxes in both the L and R audio paths. This change updates the code that handles relevant controls to be able to iterate over a list of affected widgets. Note that only the put functions need significant modification to implement the iteration; the get functions do not need to iterate, nor unify the results, since all affected widgets reference the same kcontrol. When creating the list of widgets, always create a 1-sized list, since the control sharing is not implemented in this change. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>