An error occurred fetching the project authors.
- 21 Sep, 2011 1 commit
-
-
Mark Brown authored
Commit 873bd4cb (ASoC: Don't set invalid name string to snd_card->driver field) broke generation of a driver name for all ASoC cards relying on the automatic generation of one. Fix this by using the old default with spaces replaced by underscores. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Takashi Iwai <tiwai@suse.de>
-
- 31 Aug, 2011 1 commit
-
-
Lars-Peter Clausen authored
Change the default return value of snd_soc_codec_{readable,writable}_register to true when no codec specific callback for this function is given. Otherwise all registers of that codec will neither be readable nor writable, which is most certainly not what we want. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 22 Aug, 2011 1 commit
-
-
Axel Lin authored
GFP_ATOMIC is not needed here, use GFP_KERNEL instead. Signed-off-by:
Axel Lin <axel.lin@gmail.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 19 Jul, 2011 2 commits
-
-
Wolfram Sang authored
In one comment, cpu_dai was mentioned although codec_dai was used in the code. Also, fix the name for the card dai list which has no seperation into card_dai and codec_dai. Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Mark Brown authored
Since quite a few drivers are not managing to flag the cache as needing to be resynced after suspend and it's a reasonable thing to do flag the cache as needing sync automatically when suspending. The expectation is that systems will mainly only keep the CODEC powered when doing audio through the CODEC so we won't actually suspend the device anyway; drivers which want to can override this behaviour when they resume. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
-
- 05 Jul, 2011 5 commits
-
-
Liam Girdwood authored
Trace platform IO just like CODEC IO. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
Allow platform probe to register platform kcontrols and DAPM just like the CODEC probe(). Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
Allow platform driver widgets to perform any IO required for DAPM. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
In preparation for Dynamic PCM (AKA DSP) support. Allow platform drivers to register kcontrols. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Takashi Iwai authored
The snd_card->driver field contains a driver name string, and in general it shouldn't contain space or special letters. The commit 2b39535b changed the string copy from card->name, but the long name string may contain such letters, thus it may still lead to a segfault. A temporary fix is not to copy the long name string but just keep it empty as the earlier version did. Reported-by:
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- 04 Jul, 2011 1 commit
-
-
Liam Girdwood authored
In preparation for ASoC Dynamic PCM (AKA DSP) support. Allow platform driver to perform IO. Intended for platform DAPM. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 02 Jul, 2011 1 commit
-
-
Liam Girdwood authored
In preparation for ASoC dynamic PCM support (AKA ASoC DSP) Platform will also support DAPM so separate out the probe function to simplify the code (just like the codec probe). Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 09 Jun, 2011 2 commits
-
-
Liam Girdwood authored
In preparation for the new ASoC Dynamic PCM support (AKA DSP support). The new ASoC Dynamic PCM core allows 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 routes audio in the analog domain). The Dynamic PCM 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 PCM hw_params() could configure multiple backend DAI hw_params() with similar or different hw parameters at the same time. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
In preparation for Dynamic PCM support (AKA DSP support). There will be future patches that add support to allow PCMs to be dynamically routed to multiple DAIs at startup and also during stream runtime. This patch moves the ASoC core PCM operaitions into a new file called soc-pcm.c. This will in simplify the ASoC core features into distinct files. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 07 Jun, 2011 2 commits
-
-
Liam Girdwood authored
Some ASoC components depend on other ASoC components to provide clocks and power resources in order to probe() and vice versa for remove(). Allow components to be ordered so that components can be probed() and removed() in sequences that conform to their dependencies. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
Currently pcm_new() passes in 3 arguments :- card, pcm and DAI. Refactor this to only pass in 1 argument (i.e. the rtd) since struct rtd contains card, pcm and DAI along with other members too that are useful too. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 06 Jun, 2011 1 commit
-
-
Mark Brown authored
Avoids issues if someone does a read followed by restore and doesn't mask out only the bits being updated. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
- 26 May, 2011 1 commit
-
-
Stephen Warren authored
For cards that have two or more DAIs, snd_soc_resume's loop over all DAIs ends up calling schedule_work(deferred_resume_work) once per DAI. Since this is the same work item each time, the 2nd and subsequent calls return 0 (work item already queued), and trigger the dev_err message below stating that a work item may have been lost. Solve this by adjusting the loop to simply calculate whether to run the resume work immediately or defer it, and then call schedule work (or not) one time based on that. Note: This has not been tested in mainline, but only in chromeos-2.6.38; mainline doesn't support suspend/resume on Tegra, nor does the mainline Tegra ASoC driver contain multiple DAIs. It has been compile-checked in mainline. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 24 May, 2011 2 commits
-
-
Liam Girdwood authored
Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Liam Girdwood authored
Currently CODEC and platform drivers have their module reference count incremented soc_probe_dai_link() whilst CPU DAI drivers have their reference count incremented in soc_bind_dai_link(). CPU DAIs should have their reference count incremented in soc_probe_dai_link() just like the CODEC and platform drivers. Signed-off-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 22 May, 2011 1 commit
-
-
Jarkko Nikula authored
Commit 22de71ba ("ASoC: core - allow ASoC more flexible machine name") writes "(null)" to driver name string in struct snd_card if card->driver_name is NULL. This causes segmentation faults with some user space ALSA utilities like aplay and arecord. Fix this by using the card->name if no driver name is specified. Signed-off-by:
Jarkko Nikula <jhnikula@gmail.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 16 May, 2011 1 commit
-
-
Stephen Boyd authored
Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following warning: In file included from arch/x86/include/asm/uaccess.h:573, from include/linux/poll.h:14, from include/sound/pcm.h:29, from include/sound/ac97_codec.h:31, from sound/soc/soc-core.c:34: In function 'copy_from_user', inlined from 'codec_reg_write_file' at sound/soc/soc-core.c:252: arch/x86/include/asm/uaccess_64.h:65: warning: call to 'copy_from_user_overflow' declared with attribute warning: copy_from_user() buffer size is not provably correct presumably due to buf_size being signed causing GCC to fail to see that buf_size can't become negative. Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Stephen Boyd <sboyd@codeaurora.org> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 12 May, 2011 1 commit
-
-
Liam Girdwood authored
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>
-
- 08 May, 2011 1 commit
-
-
Lars-Peter Clausen authored
This allows to create DAPM routes depending on those widgets in the codecs probe function. This is helpful when supporting similar codecs with minor differences in the DAPM routing with the same driver. Something similar has already been done for cards in commit a841ebb9 (ASoC: Create card DAPM widgets early so they can be used in callbacks). Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 03 May, 2011 4 commits
-
-
Mark Brown authored
The move over to exposing snd_soc_register_card() let the initialisation of the driver data we use to find the card in PM operations go AWOL. Fix this by setting the driver data when we register the card. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
Lars-Peter Clausen authored
Currently debugfs entries for a DAPM widgets are only added in snd_soc_dapm_debugfs_init. If a widget is added later (for example in the dai_link's probe callback) it will not show up in debugfs. This patch moves the creation of the widget debugfs entry to snd_soc_dapm_new_widgets where it will be added after the widget has been properly instantiated. As a side-effect this will also reduce the number of times the DAPM widget list is iterated during a card's instantiation. Since it is possible that snd_soc_dapm_new_widgets is invoked form the codecs or cards probe callbacks, the creation of the debugfs dapm directory has to be moved before these are called. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lars-Peter Clausen authored
Move the creation of the DAPM debugfs directory to snd_soc_dapm_debugfs_init instead of having the same duplicated code in both codec and card DAPM setup. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lars-Peter Clausen authored
Free the card's DAPM context when the card is removed. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 28 Apr, 2011 1 commit
-
-
Mark Brown authored
Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
- 27 Apr, 2011 2 commits
-
-
Mark Brown authored
Since we can now support multiple platforms allow machines to not specify a platform in a DAI link. Since the rest of the code requires that we have a struct device for all objects we do this by substituting in a dummy device that we register automatically. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Jassi Brar <jassisinghbrar@gmail.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
Mark Brown authored
Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Jassi Brar <jassisinghbrar@gmail.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
- 20 Apr, 2011 1 commit
-
-
Lu Guanqun authored
Signed-off-by:
Lu Guanqun <guanqun.lu@intel.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 13 Apr, 2011 1 commit
-
-
Mark Brown authored
This helps with things like setting up the initial state. Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com>
-
- 11 Apr, 2011 1 commit
-
-
Kuninori Morimoto authored
card->num_rtd should be 0 after soc_romve_dai_link Signed-off-by:
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 08 Apr, 2011 1 commit
-
-
Mark Brown authored
Allow CODEC and card drivers to point to an array of controls from their driver structure rather than explicitly calling snd_soc_add_controls(). Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 06 Apr, 2011 3 commits
-
-
Lu Guanqun authored
initialize ret to invalid value so that when we reach the config error path in soc_pcm_open, it will return the correct error code. without this patch, though config error path is executed, soc_pcm_open will return 0 in snd_pcm_open_substream and then cause double release of substream. Signed-off-by:
Lu Guanqun <guanqun.lu@intel.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Lu Guanqun authored
Suppose we have: cpu_dai channels_min = 1 channels_max = 1 codec_dai channels_min = 2 channels_max = 2 This is a mismatch that should not happen, however according to the current code, the result of runtime->hw will be: channels_min = 2 channels_max = 1 We better spot it early. This patch checks this mismatch. Signed-off-by:
Lu Guanqun <guanqun.lu@intel.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
Stephen Warren authored
ASoC machine drivers that are their own platform_driver (as opposed to those using the soc-audio platform_driver) need to explicitly set up power-management operation callbacks. To avoid cut/paste, snd_soc_pm_ops also needs to be exported. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 03 Apr, 2011 1 commit
-
-
Stephen Warren authored
wordsize is used as the textual width of a register address. regsize is used as the textual width of a register value. The assignments to these values were swapped. In the case of WM8903, which has 8-bit register addresses and 16-bit register values, this caused the register values to be clipped to 2 digits instead of the full 4. Signed-off-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-
- 26 Mar, 2011 1 commit
-
-
Dimitris Papastamos authored
Provide the top level ASoC core functions for indicating whether a given register is readable or writable. Signed-off-by:
Dimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by:
Liam Girdwood <lrg@ti.com> Signed-off-by:
Mark Brown <broonie@opensource.wolfsonmicro.com>
-