summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: adau1701: signedness bug in adau1701_write()Dan Carpenter2011-06-201-1/+2
| | | | | | | | | | | "ret" is supposed to be signed here. The current code will only return -EIO on error, instead of a more appropriate error code such as -EAGAIN etc. Signed-off-by: Dan Carpenter <error27@gmail.com> Acked-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix DAPM sequence run for per-widget I/O methodsMark Brown2011-06-201-0/+6
| | | | | | | | | | | | | Previously we were using the DAPM context rather than a widget as the argument for update_bits() so we didn't need to care that our list walk of widgets left us one beyond the end of the list. Now we're using them for the register update we need to make sure we're pointing at an actual widget not the list_head. Fix originally suggested by Liam on IM. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* ASoC: Remove adau1701 from SND_SOC_ALL_CODECS due to Sigma dependencyMark Brown2011-06-181-1/+0
| | | | | | | | | The Sigma code is in drivers/firmware which is only included on a very small subset of architectures and so ends up breaking the build on others. There's a pending patch to make the directory build as standard but it's not merged yet. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add adau* drivers to the Analog Devices file patternsMark Brown2011-06-181-0/+1
| | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Acked-by: Mike Frysinger <vapier@gentoo.org>
* ASoC: Blackfin: allow SPI for SSM2602 partsMike Frysinger2011-06-171-2/+1
| | | | | | | | | This board has hardware switches for selecting SPI or I2C, so don't require I2C for this driver. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1836: rename suspend/resume funcsBarry Song2011-06-161-22/+21
| | | | | | | | | | | Use less specific names for suspend/resume to match the probe/remove funcs where these are now used. Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Scott Jiang <scott.jiang@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1836: fix codec nameMike Frysinger2011-06-161-1/+1
| | | | | | | | | The codec name should not have a "-codec" suffix since this is not part of a MFD. This was incorrectly changed during the multi-component updated. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1836: fix intermixed tab/space indentationMike Frysinger2011-06-162-4/+4
| | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1836: drop unnecessary spi register checkMike Frysinger2011-06-161-9/+1
| | | | | | | | | | The only thing the init func does is register a spi driver, so if that fails, we return the value back up to the caller who will display an error message for us. So drop the redundant checking/message. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1836: clean up comment headersMike Frysinger2011-06-162-27/+9
| | | | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: Add bf5xx-adau1701 machine driverLars-Peter Clausen2011-06-163-0/+152
| | | | | | | | | Add a machine driver to support the ADAU1701 SigmaDSP processors on Analog Devices BF5XX evaluation boards. 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>
* ASoC: Add ADAU1701 codec driverLars-Peter Clausen2011-06-164-1/+573
| | | | | | | | This patch adds support for the Analog Devices ADAU1701 SigmaDSP. 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>
* ASoC: Clean up some coding style nits in the bf5xx-i2s-pcm driverMark Brown2011-06-161-3/+3
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* ASoC: dapm - Refactor widget IO functions in preparation for platform widgets.Liam Girdwood2011-06-141-6/+43
| | | | | | | | | | | | | | This time with soc_widget_update_bits reflecting recent soc_update_bits changes. Currently widget IO is tightly coupled to the CODEC drivers. Future platform DSP devices have mixer components that can alter power usage and hence require full DAPM support. This provides a generic widget IO operation wrapper in preparation for future patches that implement platform driver DAPM. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix mismerge with release branchMark Brown2011-06-141-0/+1
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-132-5/+1
|\ | | | | | | | | | | | | Trival fixup for move of I/O code into separate file. Conflicts: sound/soc/soc-cache.c
| * ASoC: Remove unused and about to be broken SND_SOC_CUSTOM I/O busMark Brown2011-06-132-5/+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: Don't use codec->control_data in bulk writeMark Brown2011-06-131-2/+2
| | | | | | | | | | | | | | | | | | In order to facilitate merging with the register map I/O replace the use of control_data for the bulk writes with direct lookup of the client data from the device. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Add weak routes for sidetone style pathsMark Brown2011-06-132-0/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Normally DAPM will power up any connected audio path. This is not ideal for sidetone paths as with sidetone paths the audio path is not wanted in itself, it is only desired if the two paths it provides a sidetone between are both active. If the sidetone path causes a power up then it can be hard to minimise pops as we first power up either the sidetone or the main output path and then power the other, with the second power up potentially introducing a DC offset. Address this by introducing the concept of a weak path. If a path is marked as weak then DAPM will ignore that path when walking the graph, though all the relevant controls are still available to the application layer to allow these paths to be configured. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Move register I/O code into a separate fileMark Brown2011-06-133-381/+401
| | | | | | | | | | | | | | | | | | For clarity and to help ongoing refactoring in this area create a new file to contain the physical I/O functions, separating them out from the cache operations. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Factor out redundant read() functionsMark Brown2011-06-131-44/+8
| | | | | | | | | | | | | | | | | | We've got a whole bunch of functions which just call straight through to do_hw_read(). Simplify this situation by removing them and using hw_read() directly. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: SMDKV310: Enable SPDIF deviceNaveen Krishna Chatradhi2011-06-101-1/+1
| | | | | | | | | | | | | | Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-101-2/+2
|\|
| * ASoC: SAMSUNG: Fix the incorrect referencing of I2SCON registerSangbeom Kim2011-06-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | If DMA active status should be checked, I2SCON register should be referenced. In this patch, Fix the incorrect referencing of I2SCON register. Reported-by : Lakkyung Jung <lakkyung.jung@samsung.com> Signed-off-by: Sangbeom Kim <sbkim73@samsung.com> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* | sound/atmel_ssc_dai: add a missing space to an error messageUwe Kleine-König2011-06-101-1/+1
| | | | | | | | | | | | | | Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: pcm - rename snd_codec_close() to snd_pcm_close().Liam Girdwood2011-06-091-2/+2
| | | | | | | | | | | | | | Make sure we follow naming convention for all PCM ops. Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: core - PCM mutex per rtdLiam Girdwood2011-06-093-14/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-091-9/+8
|\|
| * ASoC: snd_soc_new_{mixer,mux,pga} make sure to use right DAPM contextLars-Peter Clausen2011-06-091-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | Currently it is possible that snd_soc_new_{mixer,mux,pga} is called with a DAPM context not matching the widgets context. This can lead to a wrong prefix_len calculation, which will result in undefined behaviour. To avoid this always use the DAPM context from the widget itself. 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> Cc: stable@kernel.org
* | ASoC: core - Separate out PCM operations into new file.Liam Girdwood2011-06-093-612/+641
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-092-6/+12
|\|
| * ASoC: fsl: fix initialization of DMA buffersTimur Tabi2011-06-091-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The DMA (PCM) driver used by some Freescale PowerPC supports separate DAIs for playback and capture, so DMA buffers should be allocated only for the initialized streams. Instead of checking for the number of active channels, which apparently is not reliable, check to see if the actual stream object exists. Also provide a better name for the DMA interrupt. Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: WM8804 does not support sample rates below 32kHzMark Brown2011-06-091-2/+7
| | | | | | | | | | | | | | Reported-by: Kieran O'Leary <Kieran.O'Leary@wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
* | ASoC: p1022ds: fix incorrect referencing of device tree propertiesTimur Tabi2011-06-094-13/+18
| | | | | | | | | | | | | | | | | | | | | | | | Device tree integer properties are encoded in big-endian format, but some of the Freescale ASoC drivers were assuming that the host is in big-endian format as well. Although this is true, it's better to use endian-safe accessors. Also add a check for a failed ioremap() call in the SSI driver. Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Fix mismerge of Speyside set_bias_level_post()Mark Brown2011-06-081-0/+1
| | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-081-2/+2
|\|
| * ASoC: Fix WM8962 headphone volume update for use of advanced cachesMark Brown2011-06-081-2/+2
| | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
* | ASoC: Support Speyside build variants with WM8962 fittedMark Brown2011-06-083-0/+268
| | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Defer all WM8962 clocking configuration until power upMark Brown2011-06-081-27/+33
| | | | | | | | | | | | | | Don't require an audio rate SYSCLK in hw_params() in order to better support microphone detection use cases. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Implement base 5 band EQ control for WM8962Mark Brown2011-06-081-0/+16
| | | | | | | | | | | | | | ReTune Mobile modes are not currently supported. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Report errors when we have a WM8962 IRQ and don't get FLL lockMark Brown2011-06-081-5/+32
| | | | | | | | | | | | | | | | | | We really should be getting the interrupt - if we don't get one it's very likely that the configuration is incorrect and audio will fail. Also increase the timeout substantially in this case for safety. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Factor out I2C usage in WM8962 driverMark Brown2011-06-081-9/+10
| | | | | | | | | | | | | | | | The chip can actually support SPI so we shouldn't assume we've got an I2C device even though that's the most common configuration. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Suppress restore of default register values for rbtree cache syncMark Brown2011-06-081-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the rbtree code will write out the entire register map when doing a cache sync which is wasteful and will slow things down. Check to see if the value we're about to write is the default and don't bother restoring it if it is, either the value will have been retained or the device will have been reset and holds the value already. We should really store the defaults in the nodes but this resolves the immediate issue. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: core - Allow components to probe/remove in sequence.Liam Girdwood2011-06-073-21/+61
| | | | | | | | | | | | | | | | | | | | | | 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>
* | ASoC: core - Optimise and refactor pcm_new() to pass only rtdLiam Girdwood2011-06-0727-61/+96
| | | | | | | | | | | | | | | | | | | | 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>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-071-2/+2
|\|
| * ASoC: Blackfin: bf5xx-ad1836: Fix codec device nameLars-Peter Clausen2011-06-071-2/+2
| | | | | | | | | | | | | | | | | | | | Fix the codec_name field of the dai_link to match the actual device name of the codec. Otherwise the card won't be instantiated. 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> Cc: stable@kernel.org
* | ASoC: AD1836: Fix build errorLars-Peter Clausen2011-06-071-1/+1
| | | | | | | | | | | | | | | | | | Commit f97d0c6d5f94 ("ASoC: AD1836: Add input gain control for ADC2") contained a typo in the register name, causing a build error. This patch fixes it. 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>
* | ASoC: wm8940: remove unnecessary if statementsGreg Dietsche2011-06-071-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | removing unnecessary if(ret) checks This updated patch corrects a minor spelling problem in the commit message and resolves two other (similar) issues found in wm8940.c by Jonathan Cameron. Signed-off-by: Greg Dietsche <Gregory.Dietsche@cuw.edu> Acked-by: Jonathan Cameron <jic23@cam.ac.uk> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-3.0' into for-3.1Mark Brown2011-06-062-7/+13
|\|