aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAge
* ASoC: Enhance default WM8958 microphone detectionMark Brown2011-11-29
| | | | | | | | Actively manage the detection rate for microphones with WM8958, providing improved power consumption and maximising the benefit from the hardware debounce. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Put WM8958 and WM1811 MICBIAS into bypass mode when no audioMark Brown2011-11-29
| | | | | | | When we don't have any active audio we can put the microphone biases into bypass mode to save power at the expense of performance. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix __iomem annotation for IDMA registersMark Brown2011-11-29
| | | | | | | We always store the register address as __iomem but pass it around as a plain void * which upsets sparse. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Ensure SYSCLK is enabled for WM8958 accessory detectionMark Brown2011-11-29
| | | | | | | | Ensure SYSCLK is enabled while running accessory detection on WM8958. It is always required so there is no sense in requiring machine drivers to individually do this. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: SigmaDSP: Add regmap supportLars-Peter Clausen2011-11-29
| | | | | | | | | | | | | Add support for loading the SigmaDSP firmware using regmap. This allows us to transparently use SPI or I2C as the transport protocol on devices which support them. For now we keep the old I2C support since we have one user of this which is not straight forward to convert to regmap, due to variable length registers. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: SigmaDSP: Move private structs and functions to C fileLars-Peter Clausen2011-11-29
| | | | | | | | | Move the structs and functions only used by SigmaDSP firmware loader itself from the header to the C file. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: SigmaDSP: Provide diagnostic error messagesLars-Peter Clausen2011-11-29
| | | | | | | | | Provide some error messages when loading the firmware fails, so it is possible to diagnose the reason for the failure. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Move SigmaDSP firmware loader to ASoCLars-Peter Clausen2011-11-29
| | | | | | | | | | | | | It has been pointed out previously, that the firmware subsystem is not the right place for the SigmaDSP firmware loader. Furthermore the SigmaDSP is currently only used in audio products and we are aiming for better integration into the ASoC framework in the future, with support for ALSA controls for firmware parameters and support dynamic power management as well. So the natural choice for the SigmaDSP firmware loader is the ASoC subsystem. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge branch 'for-3.2' into for-3.3Mark Brown2011-11-29
|\
| * firmware: Sigma: Fix endianess issuesLars-Peter Clausen2011-11-29
| | | | | | | | | | | | | | | | | | | | Currently the SigmaDSP firmware loader only works correctly on little-endian systems. Fix this by using the proper endianess conversion functions. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * firmware: Sigma: Skip header during CRC generationLars-Peter Clausen2011-11-29
| | | | | | | | | | | | | | | | | | | | The firmware header is not part of the CRC, so skip it. Otherwise the firmware will be rejected due to non-matching CRCs. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * firmware: Sigma: Prevent out of bounds memory accessLars-Peter Clausen2011-11-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The SigmaDSP firmware loader currently does not perform enough boundary size checks when processing the firmware. As a result it is possible that a malformed firmware can cause an out of bounds memory access. This patch adds checks which ensure that both the action header and the payload are completely inside the firmware data boundaries before processing them. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* | ASoC: cs42l73: Fix clear wrong bits in cs42l73_set_dai_fmtAxel Lin2011-11-29
| | | | | | | | | | | | | | | | | | What we want is to clear BIT[5:4](PCM_MODE_MASK) and BIT[3](PCM_BIT_ORDER) bits, but current code clears BIT[2:0]. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert smdk_wm8994pcm to use module_platform_driver()Axel Lin2011-11-29
| | | | | | | | | | | | | | | | Use the module_platform_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-3.2' into for-3.3Mark Brown2011-11-28
|\|
| * ASoC: Supply dcs_codes for newer WM1811 revisionsMark Brown2011-11-28
| | | | | | | | | | | | Based on initial data. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-3.2' into for-3.3Mark Brown2011-11-28
|\|
| * ASoC: Error out if we can't generate a LRCLK at all for WM8994Mark Brown2011-11-28
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert CS42L73 to devm_kzalloc()Brian Austin2011-11-28
| | | | | | | | | | Signed-off-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert tegra_spdif to use module_platform_driver()Axel Lin2011-11-28
| | | | | | | | | | | | | | | | | | Use the module_platform_driver() macro which makes the code smaller and a bit simpler. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Add basic 1277-EV1 Littlemill audio driverMark Brown2011-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | The Littlemill audio card supports a number of pluggable miniboards, normally for the WM8994 family of devices. As all these devices look mostly the same from an external configuration point of view and are runtime enumerable we can write a standard machine driver which will work out of the box with any of them. Start doing that with the bare bones of a driver, only supporting AIF1. Future patches will flesh this out to be more fully featured. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Convert to direct regmap API usageLars-Peter Clausen2011-11-28
| | | | | | | | | | Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Use snd_soc_update_bits where appropriateLars-Peter Clausen2011-11-28
| | | | | | | | | | | | | | | | | | | | We can reduce the code size here a bit by using snd_soc_update_bits instead of open-coding the read-modify-write cycle. The conversion done in this patch is not completely straightforward and some minor code restructuring has been incorporated to further reduce the code size. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Add sysclk DAPM supplyLars-Peter Clausen2011-11-28
| | | | | | | | | | | | | | | | Add a DAPM supply widget for the internal sysclk, so it can be disabled automatically when not needed. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Remove non-functional DAPM route controlsLars-Peter Clausen2011-11-28
| | | | | | | | | | | | | | | | DAPM route controls only take effect on paths where the sink is a mixer or a mux, furthermore the control must be a control assigned to the mixer or mux. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Make enum items const char * constLars-Peter Clausen2011-11-28
| | | | | | | | | | Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Provide dB ranges for the volume controlsLars-Peter Clausen2011-11-28
| | | | | | | | | | Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: ad193x: Use table based DAPM and controls setupLars-Peter Clausen2011-11-28
| | | | | | | | | | Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert fsl directory to module_platform_driverAxel Lin2011-11-28
| | | | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: sdp4430: Add support for digital microphonesPeter Ujfalusi2011-11-28
| | | | | | | | | | | | | | OMAP4 SDP/Blaze boards have digital microphones. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: OMAP4: omap-dmic: Initial support for OMAP DMICPeter Ujfalusi2011-11-28
| | | | | | | | | | | | | | Add support for OMAP4 Digital Microphone interface. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert WM8903 MICBIAS to a supply widgetMark Brown2011-11-28
| | | | | | | | | | | | | | | | Also rename it to MICBIAS to reflect the pin name and help any out of tree users notice the change. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Stephen Warren <swarren@nvidia.com>
* | ASoC: Convert CODEC drivers to module_platform_driverMark Brown2011-11-28
| | | | | | | | | | | | Factors out a bit of boilerplate. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert WM8962 to devm_kzalloc()Mark Brown2011-11-27
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Log automatic pin disconnection per CODEC rather than per cardMark Brown2011-11-27
| | | | | | | | | | | | | | This makes the output a bit less confusing on multi-CODEC systems as the same pin may appear in multiple CODECs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Fix CODEC enumeration for auto_nc_codec_pinsMark Brown2011-11-27
| | | | | | | | | | | | | | | | We need to enumerate all the CODECs that are part of the card we're instantiating, not all the CODECs that are in the system as the system may have multiple cards. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-3.2' into for-3.3Mark Brown2011-11-27
|\|
| * ASoC: Correct name of Speyside Main Speaker widgetMark Brown2011-11-27
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert wm8996 to use devm_kzalloc()Mark Brown2011-11-27
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert wm9081 driver to use devm_kzalloc()Mark Brown2011-11-27
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert wm1250-ev1 driver to use devm_kzalloc()Mark Brown2011-11-27
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove unneeded platform_device.h inclusions from CODECsMark Brown2011-11-27
| | | | | | | | | | | | They've not been needed for a long time if they were ever required. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove driver versioning from ak4642Mark Brown2011-11-27
| | | | | | | | | | | | | | It's never been updated so it can't be that useful and it makes the driver needlessly chatty. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert omap directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com> Acked-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert davinci directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert txx9 directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert sh directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert pxa directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Marek Vasut <marek.vasut@gmail.com> Acked-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert au1x directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert atmel directory to module_platform_driverAxel Lin2011-11-25
| | | | | | | | | | | | | | | | Factor out some boilerplate code. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>