pandora-kernel.git
13 years agoASoC: soc-cache: Add error checking in the *_cache_sync functions
Dimitris Papastamos [Mon, 29 Nov 2010 10:24:54 +0000 (10:24 +0000)]
ASoC: soc-cache: Add error checking in the *_cache_sync functions

Ensure that we report any errors encountered during reads/writes
in the cache syncing functions.

Remove redundant newline in the source code.

Signed-off-by: Dimitris Papastamos <dp@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in smdk_spdif.c
Axel Lin [Fri, 26 Nov 2010 06:54:42 +0000 (14:54 +0800)]
ASoC: Fix resource leak in smdk_spdif.c

Properly free allocated resources in smdk_init() error path.
Add missing platform_device_unregister() in smdk_exit().

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Add missing gpio_free(S3C64XX_GPK(12)) in smartq_exit()
Axel Lin [Fri, 26 Nov 2010 06:53:38 +0000 (14:53 +0800)]
ASoC: Add missing gpio_free(S3C64XX_GPK(12)) in smartq_exit()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in neo1973_gta02_init() error path
Axel Lin [Fri, 26 Nov 2010 06:52:47 +0000 (14:52 +0800)]
ASoC: Fix resource leak in neo1973_gta02_init() error path

Properly free allocated resources in neo1973_gta02_init() error path.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix resource leak in goni_wm8994.c
Axel Lin [Fri, 26 Nov 2010 06:51:56 +0000 (14:51 +0800)]
ASoC: Fix resource leak in goni_wm8994.c

Properly free allocated resources in goni_init() error path.
Add missing snd_soc_unregister_dai() in goni_exit().

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Implement runtime PM for WM8994/58
Mark Brown [Fri, 26 Nov 2010 17:23:43 +0000 (17:23 +0000)]
ASoC: Implement runtime PM for WM8994/58

This allows us to communicate our power management state back to the
parent device, allowing it to do a full power down when the device is
idle.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Enable rbtree compression for WM8994/58 register cache
Mark Brown [Fri, 26 Nov 2010 17:23:42 +0000 (17:23 +0000)]
ASoC: Enable rbtree compression for WM8994/58 register cache

The WM8994 and WM8958 register map is relatively sparse so benefits
from compression. The rbtree compression gives better results than
LZO for both memory and CPU consumption on a map as sparse as this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Convert WM8994 to use soc-cache.c cache functions
Mark Brown [Fri, 26 Nov 2010 17:23:41 +0000 (17:23 +0000)]
ASoC: Convert WM8994 to use soc-cache.c cache functions

In the process we convert the driver to read registers one at a time
when initialising the cache. This has the effect of working around
limitations in the sizes of I2C transactions which can be done by some
CPUs. Due to the sparseness of the register map the overhead from this
should be minimual unless I2C transactions are very expensive to start.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Add WM8958 microphone detection support
Mark Brown [Fri, 26 Nov 2010 15:21:09 +0000 (15:21 +0000)]
ASoC: Add WM8958 microphone detection support

The WM8958 contains an advanced accessory detection feature which allows
detection of up to seven different impedence levels on the microphone
bias output, including detection of video outputs. Since some of the
more involved accessory interfaces may involve noticable interactions
with external components a simple detection scheme is provided by
default with the option to provide custom handling of accessory detect.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Add WM8958 Multi-band compressor support
Mark Brown [Fri, 26 Nov 2010 15:21:08 +0000 (15:21 +0000)]
ASoC: Add WM8958 Multi-band compressor support

The WM8958 features a multi-band compressor which can be enabled on
any of the AIF inputs. The MBC allows different gains to be applied to
differnt audio bands, providing an improvement in perceived loudness
of the signal by avoiding overdriving the output transducers. This
patch enables support for the MBC.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Implement support for enhanced AIF3 on WM8958
Mark Brown [Fri, 26 Nov 2010 15:21:07 +0000 (15:21 +0000)]
ASoC: Implement support for enhanced AIF3 on WM8958

Additional audio routing options are available on the WM8958 audio
interface 3. Add support for these.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Initial WM8958 audio configuration
Mark Brown [Fri, 26 Nov 2010 15:21:06 +0000 (15:21 +0000)]
ASoC: Initial WM8958 audio configuration

The WM8958 is a WM8994 derivative. This patch merely ensures that some
revision specific configuration for WM8994 is not enabled on WM8994,
additional patches will add support for the new features introduced on
the WM8958.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Use DC servo startup mode when not doing DCS correction
Mark Brown [Fri, 26 Nov 2010 17:23:44 +0000 (17:23 +0000)]
ASoC: Use DC servo startup mode when not doing DCS correction

Devices which do not have a DCS correction applied can use the explicit
DC servo startup mode for optimal startup performance. This most
immediately affects the WM8958.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agogpiolib: Add WM8958 support to the WM8994 driver
Mark Brown [Wed, 1 Sep 2010 09:47:16 +0000 (10:47 +0100)]
gpiolib: Add WM8958 support to the WM8994 driver

Several of the GPIOs on the WM8994 are fixed function on the WM8958 so
error out if the user tries to request them with gpiolib.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agomfd: Add initial WM8958 support
Mark Brown [Tue, 31 Aug 2010 18:25:12 +0000 (19:25 +0100)]
mfd: Add initial WM8958 support

The WM8958 is a derivative of the WM8994 which is register compatible
with the addition of some extra features, mostly in the CODEC side.
The major change visible at the MFD level is that rather than a single
DBVDD supply we now have three separate DBVDDs so we must request and
enable a different set of supplies.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Remove redundant hw_write initialisation in WM8737
Mark Brown [Fri, 26 Nov 2010 11:50:03 +0000 (11:50 +0000)]
ASoC: Remove redundant hw_write initialisation in WM8737

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Thu, 25 Nov 2010 21:16:52 +0000 (21:16 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Fix resource reclaim for osk5912
Axel Lin [Wed, 24 Nov 2010 14:24:01 +0000 (22:24 +0800)]
ASoC: Fix resource reclaim for osk5912

In current implementation, there are resources leak in the error path.
This patch properly reclaims the allocated resources in the error path.

Also adds a missing clk_put in osk_soc_exit.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: tlv320aic3x - fix variable may be used uninitialized warning
Axel Lin [Wed, 24 Nov 2010 14:40:59 +0000 (22:40 +0800)]
ASoC: tlv320aic3x - fix variable may be used uninitialized warning

If aic3x_read failed , val is used uninitialized.
Fix it by initializing val to 0.

This patch fixes below compile warning:
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_get_gpio':
sound/soc/codecs/tlv320aic3x.c:1183: warning: 'val' may be used uninitialized in this function
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_headset_detected':
sound/soc/codecs/tlv320aic3x.c:1211: warning: 'val' may be used uninitialized in this function
sound/soc/codecs/tlv320aic3x.c: In function 'aic3x_button_pressed':
sound/soc/codecs/tlv320aic3x.c:1219: warning: 'val' may be used uninitialized in this function

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoARM: Samsung: Make sure ASoC DMA device is prototyped
Mark Brown [Wed, 24 Nov 2010 15:48:01 +0000 (15:48 +0000)]
ARM: Samsung: Make sure ASoC DMA device is prototyped

Ensure that the prototype agrees with the definition and stop sparse
complaining when building the file.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Add WM8737 ALC support
Mark Brown [Wed, 24 Nov 2010 16:27:08 +0000 (16:27 +0000)]
ASoC: Add WM8737 ALC support

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Update MAINTAINERS for Samsung driver move
Mark Brown [Wed, 24 Nov 2010 17:20:27 +0000 (17:20 +0000)]
ASoC: Update MAINTAINERS for Samsung driver move

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Make SMDK WM8580 driver unloadable
Mark Brown [Wed, 24 Nov 2010 17:18:45 +0000 (17:18 +0000)]
ASoC: Make SMDK WM8580 driver unloadable

Supply a module exit function so that the driver can be unloaded.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Thu, 25 Nov 2010 11:17:24 +0000 (11:17 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: smdk_wm9713: fix resource leak in smdk_init error path
Axel Lin [Thu, 25 Nov 2010 07:11:45 +0000 (15:11 +0800)]
ASoC: smdk_wm9713: fix resource leak in smdk_init error path

Fix the error path to properly free allocated resources.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix compile error for smartq_wm8987.c
Axel Lin [Thu, 25 Nov 2010 05:43:49 +0000 (13:43 +0800)]
ASoC: Fix compile error for smartq_wm8987.c

Fix below compile error:

  CC      sound/soc/samsung/smartq_wm8987.o
sound/soc/samsung/smartq_wm8987.c: In function 'smartq_hifi_hw_params':
sound/soc/samsung/smartq_wm8987.c:42: error: 'struct snd_soc_pcm_runtime' has no member named 'dai'
sound/soc/samsung/smartq_wm8987.c:43: error: 'struct snd_soc_pcm_runtime' has no member named 'dai'
sound/soc/samsung/smartq_wm8987.c: In function 'smartq_wm8987_init':
sound/soc/samsung/smartq_wm8987.c:192: warning: passing argument 1 of 'snd_soc_jack_new' from incompatible pointer type
sound/soc/samsung/smartq_wm8987.c: At top level:
sound/soc/samsung/smartq_wm8987.c:216: warning: initialization from incompatible pointer type
make[3]: *** [sound/soc/samsung/smartq_wm8987.o] Error 1
make[2]: *** [sound/soc/samsung] Error 2
make[1]: *** [sound/soc] Error 2
make: *** [sound] Error 2

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: neo1973_gta02_wm8753: fix wrong parameter for snd_soc_register_dai and snd_soc_...
Axel Lin [Thu, 25 Nov 2010 08:50:56 +0000 (16:50 +0800)]
ASoC: neo1973_gta02_wm8753: fix wrong parameter for snd_soc_register_dai and snd_soc_unregister_dai

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: davinci-vcif - fix a memory leak
Axel Lin [Thu, 25 Nov 2010 03:33:14 +0000 (11:33 +0800)]
ASoC: davinci-vcif - fix a memory leak

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: phycore-ac97: fix resource leak
Axel Lin [Thu, 25 Nov 2010 07:14:03 +0000 (15:14 +0800)]
ASoC: phycore-ac97: fix resource leak

Fix imx_phycore_init() error path and imx_phycore_exit() to properly free
allocated resources.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: imx-ssi: fix resource leak
Axel Lin [Thu, 25 Nov 2010 07:13:09 +0000 (15:13 +0800)]
ASoC: imx-ssi: fix resource leak

Fix imx_ssi_probe() error path and imx_ssi_remove() to properly free
allocated resources.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: simone: fix resource leak in simone_init error path
Axel Lin [Thu, 25 Nov 2010 07:12:30 +0000 (15:12 +0800)]
ASoC: simone: fix resource leak in simone_init error path

Fix the error path to properly free allocated resources.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Mika Westerberg <mika.westerberg@iki.fi>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: sam9g20_wm8731: fix resource leak in at91sam9g20ek_init error path
Axel Lin [Thu, 25 Nov 2010 07:11:03 +0000 (15:11 +0800)]
ASoC: sam9g20_wm8731: fix resource leak in at91sam9g20ek_init error path

Fix the error path to properly free allocated resources.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: snd-soc-afeb9260: remove unneeded platform_device_del in error path
Axel Lin [Thu, 25 Nov 2010 02:44:59 +0000 (10:44 +0800)]
ASoC: snd-soc-afeb9260: remove unneeded platform_device_del in error path

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: pcm030-audio-fabric: fix resource leak in pcm030_fabric_init error path
Axel Lin [Thu, 25 Nov 2010 07:08:31 +0000 (15:08 +0800)]
ASoC: pcm030-audio-fabric: fix resource leak in pcm030_fabric_init error path

Add missing platform_device_put() if platform_device_add() failed.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: efika-audio-fabric: fix resource leak in efika_fabric_init error path
Axel Lin [Thu, 25 Nov 2010 07:07:25 +0000 (15:07 +0800)]
ASoC: efika-audio-fabric: fix resource leak in efika_fabric_init error path

Add missing platform_device_put() if platform_device_add() failed.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Call snd_soc_unregister_dais instead of snd_soc_unregister_dai in sh4_soc_dai_r...
Axel Lin [Thu, 25 Nov 2010 09:23:55 +0000 (17:23 +0800)]
ASoC: Call snd_soc_unregister_dais instead of snd_soc_unregister_dai in sh4_soc_dai_remove

We call snd_soc_register_dais() in sh4_soc_dai_probe(),
thus we should call snd_soc_unregister_dais() in sh4_soc_dai_remove().

Otherwise, we got "too many arguments to function 'snd_soc_unregister_dai'"
error message.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: fix SND_PXA2XX_LIB Kconfig warning
Dmitry Artamonow [Wed, 24 Nov 2010 21:46:15 +0000 (00:46 +0300)]
ASoC: fix SND_PXA2XX_LIB Kconfig warning

Fix following warning observed when SND_PXA2XX_SOC is set and SND_ARM isn't:

warning: (SND_PXA2XX_AC97 && SOUND && !M68K && SND && SND_ARM && ARCH_PXA ||
SND_PXA2XX_SOC && SOUND && !M68K && SND && SND_SOC && ARCH_PXA) selects
SND_PXA2XX_LIB which has unmet direct dependencies (SOUND && !M68K && SND &&
SND_ARM)

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Wed, 24 Nov 2010 11:57:43 +0000 (11:57 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Add initial WM8737 driver
Mark Brown [Tue, 23 Nov 2010 19:31:18 +0000 (19:31 +0000)]
ASoC: Add initial WM8737 driver

The WM8737 is a low power, flexible stereo ADC designed for portable
applications. This driver supports most of the functionality of the
WM8737, though some features such as the ALC are not yet implemented.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: nuc900-ac97: fix a memory leak
Axel Lin [Wed, 24 Nov 2010 08:44:23 +0000 (16:44 +0800)]
ASoC: nuc900-ac97: fix a memory leak

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Acked-by: Wan ZongShun <mcuos.com@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'topic/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai...
Mark Brown [Wed, 24 Nov 2010 11:26:39 +0000 (11:26 +0000)]
Merge branch 'topic/asoc' of git://git./linux/kernel/git/tiwai/sound-2.6 into for-2.6.38

13 years agoMerge branch 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound...
Mark Brown [Wed, 24 Nov 2010 11:22:55 +0000 (11:22 +0000)]
Merge branch 'fix/asoc' of git://git./linux/kernel/git/tiwai/sound-2.6 into for-2.6.37

13 years agoASoC: Return proper error for omap3pandora_soc_init
Axel Lin [Wed, 24 Nov 2010 07:20:48 +0000 (15:20 +0800)]
ASoC: Return proper error for omap3pandora_soc_init

Return PTR_ERR(omap3pandora_dac_reg) instead of 0 if regulator_get failed.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: wm8961 - clear WM8961_MCLKDIV bit for freq <= 16500000
Axel Lin [Wed, 24 Nov 2010 02:21:54 +0000 (10:21 +0800)]
ASoC: wm8961 - clear WM8961_MCLKDIV bit for freq <= 16500000

MCLKDIV bit of Register 04h Clocking1:
0 : Divide by 1
1 : Divide by 2

Thus in the case of freq <= 16500000, we should clear MCLKDIV bit.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
13 years agoASoC: wm8961 - clear WM8961_DACSLOPE bit for normal mode
Axel Lin [Wed, 24 Nov 2010 02:20:33 +0000 (10:20 +0800)]
ASoC: wm8961 - clear WM8961_DACSLOPE bit for normal mode

DACSLOPE bit of Register 06h ADC and DAC Control 2:
        0: Normal mode
        1: Sloping stop-band mode

Thus in the case of normal mode, we should clear DACSLOPE bit.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@kernel.org
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Tue, 23 Nov 2010 14:30:41 +0000 (14:30 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: wm8994 - fix memory leaks
Axel Lin [Tue, 23 Nov 2010 07:58:39 +0000 (15:58 +0800)]
ASoC: wm8994 - fix memory leaks

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: wm8904 - fix memory leaks
Axel Lin [Tue, 23 Nov 2010 07:57:49 +0000 (15:57 +0800)]
ASoC: wm8904 - fix memory leaks

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: max98088 - fix a memory leak
Axel Lin [Tue, 23 Nov 2010 07:56:21 +0000 (15:56 +0800)]
ASoC: max98088 - fix a memory leak

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Do not update the cache if write to hardware failed
Axel Lin [Tue, 23 Nov 2010 06:14:07 +0000 (14:14 +0800)]
ASoC: Do not update the cache if write to hardware failed

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@nokia.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: MPC5200: Eliminate duplicate include of of_device.h
Jesper Juhl [Mon, 22 Nov 2010 21:54:03 +0000 (22:54 +0100)]
ASoC: MPC5200: Eliminate duplicate include of of_device.h

Eliminate duplicate  #include <linux/of_device.h>  from
sound/soc/fsl/mpc5200_dma.c

Signed-off-by: Jesper Juhl <jj@chaosbits.net>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename from s3c24xx to samsung
Jassi Brar [Mon, 22 Nov 2010 06:37:25 +0000 (15:37 +0900)]
ASoC: Samsung: Rename from s3c24xx to samsung

Finally, move the 's3c24xx' directory to 'samsung'

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Generalize Kconfig symbols
Jassi Brar [Mon, 22 Nov 2010 06:37:22 +0000 (15:37 +0900)]
ASoC: Samsung: Generalize Kconfig symbols

Move prefixes to repesent the nature of Samsung ASoC suitably.
        SND_S3C24XX_SOC -> ASOC_SAMSUNG
        SND_S3C_SOC_PCM -> SND_SAMSUNG_PCM
        SND_S3C_SOC_AC97 -> SND_SAMSUNG_AC97
        SND_S5P_SOC_SPDIF -> SND_SAMSUNG_SPDIF
        SND_S3C24XX_SOC_I2S -> SND_S3C24XX_I2S
        SND_S3C64XX_SOC_SMARTQ -> ASOC_SMARTQ
        SND_SOC_SMDK_SPDIF -> ASOC_SAMSUNG_SMDK_SPDIF
        SND_SOC_SMDK_WM8580 -> ASOC_SAMSUNG_SMDK_WM8580
        SND_SOC_SMDK_WM9713 -> ASOC_SAMSUNG_SMDK_WM9713
        SND_SOC_GONI_AQUILA_WM8994 -> ASOC_GONI_AQUILA_WM8994

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: SMDK_WM8580: Enable for SMDKC100
Jassi Brar [Mon, 22 Nov 2010 06:37:19 +0000 (15:37 +0900)]
ASoC: SMDK_WM8580: Enable for SMDKC100

Enable the ASoC Machine driver to run on SMDKC100 as well.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: SMDK64XX: Rename for other platforms
Jassi Brar [Mon, 22 Nov 2010 06:37:16 +0000 (15:37 +0900)]
ASoC: SMDK64XX: Rename for other platforms

We plan to use the same ASoC Machine driver for most of
latest SMDK platforms. So rename the 64XX specific driver
to generic named.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: S3C64XX: Remove obsoleted I2S drivers
Jassi Brar [Mon, 22 Nov 2010 06:37:13 +0000 (15:37 +0900)]
ASoC: S3C64XX: Remove obsoleted I2S drivers

Now that we have better I2S CPU drivers and no need for the old
ones, discard them.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: SMDK64XX: Move to use new I2S driver
Jassi Brar [Mon, 22 Nov 2010 06:37:07 +0000 (15:37 +0900)]
ASoC: SMDK64XX: Move to use new I2S driver

Modify the smdk64xx_wm8580.c to use new i2s controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: GONI: Move to use new I2S driver
Jassi Brar [Mon, 22 Nov 2010 06:37:04 +0000 (15:37 +0900)]
ASoC: GONI: Move to use new I2S driver

Modify the goni_wm8994.c to use new i2s controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: SMARTQ: Move to use new I2S driver
Jassi Brar [Mon, 22 Nov 2010 06:37:02 +0000 (15:37 +0900)]
ASoC: SMARTQ: Move to use new I2S driver

Modify the smartq_wm8987.c to use new i2s controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Add common I2S driver
Jassi Brar [Mon, 22 Nov 2010 06:36:59 +0000 (15:36 +0900)]
ASoC: Samsung: Add common I2S driver

The I2S controllers since S3C64XX are incremental revisions, with
a new feature added to the last one. The programming i/f doesn't
conflict between these revisions, so it is possible to have one
common driver that could manage various versions of I2S (v3, 4 & 5)

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename s3c64xx I2S device
Jassi Brar [Mon, 22 Nov 2010 06:36:54 +0000 (15:36 +0900)]
ASoC: Samsung: Rename s3c64xx I2S device

Since the I2S of S3C64XX and newer SoCs are incremental
versions of each other with changes managable in a single
driver, rename the 's3c64xx-iis' -> 'samsung-i2s'

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Generalize DMA driver namespace
Jassi Brar [Mon, 22 Nov 2010 06:36:50 +0000 (15:36 +0900)]
ASoC: Samsung: Generalize DMA driver namespace

Remove S3C,s3c from static defines.
s3c_dma_ -> dma_
s3c24xx_runtime_ -> runtime_
s3c24xx_audio_ -> audio_
s3c_preallocate_ -> preallocate_
s3c24xx_soc_platform -> samsung_asoc_platform
s3c24xx_pcm_driver -> asoc_dma_driver
snd_s3c24xx_pcm_ -> samsung_asoc_

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename PCM driver
Jassi Brar [Mon, 22 Nov 2010 06:36:44 +0000 (15:36 +0900)]
ASoC: Samsung: Rename PCM driver

Rename Samsung PCM Controller driver
s3c-pcm.[c/h] -> pcm.[c/h]

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename AC97 driver
Jassi Brar [Mon, 22 Nov 2010 06:36:03 +0000 (15:36 +0900)]
ASoC: Samsung: Rename AC97 driver

Rename Samsung AC97 driver
s3c-ac97.[c/h] -> ac97.[c/h]

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename AC97 platform device
Jassi Brar [Mon, 22 Nov 2010 06:36:00 +0000 (15:36 +0900)]
ASoC: Samsung: Rename AC97 platform device

Call the AC97 controller devices found in S3C, S5P and newer
SoCs as 'samsung-ac97' rather than 's3c-ac97'.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename ASoC DMA driver
Jassi Brar [Mon, 22 Nov 2010 06:35:57 +0000 (15:35 +0900)]
ASoC: Samsung: Rename ASoC DMA driver

Rename Samsung ASoC DMA driver
s3c-dma.[c/h] -> dma.[c/h]

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoARM: Samsung: Define common audio-dma device
Jassi Brar [Mon, 22 Nov 2010 06:35:53 +0000 (15:35 +0900)]
ARM: Samsung: Define common audio-dma device

The ASoC uses common DMA driver for Audio devices. So it makes
sense to a common audio-dma device shared across all platforms.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Rename DMA device
Jassi Brar [Mon, 22 Nov 2010 06:35:50 +0000 (15:35 +0900)]
ASoC: Samsung: Rename DMA device

Some Samsung SoCs have a PCM(DSP) controller. So the name
s3c24xx-pcm-audio for DMA driver is not very appropraite.
This patch moves :-
s3c24xx-pcm-audio -> samsung-audio

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Samsung: Remove redundant AQUILA driver
Jassi Brar [Mon, 22 Nov 2010 06:35:36 +0000 (15:35 +0900)]
ASoC: Samsung: Remove redundant AQUILA driver

AQUILA and GONI are essentially the same h/w w.r.t ASoC.
They only differ by the fact that GONI has stereo speaker-out
whereas AQUILA has mono.

The difference can easily be handled in the same MACHINE driver
by making machine-specific runtime changes.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'for-2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc...
Takashi Iwai [Tue, 23 Nov 2010 11:45:05 +0000 (12:45 +0100)]
Merge branch 'for-2.6.38' of git://git./linux/kernel/git/lrg/asoc-2.6 into topic/asoc

Conflicts:
sound/soc/codecs/tpa6130a2.c

13 years agoMerge branch 'for-2.6.37' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc...
Takashi Iwai [Tue, 23 Nov 2010 11:40:15 +0000 (12:40 +0100)]
Merge branch 'for-2.6.37' of git://git./linux/kernel/git/lrg/asoc-2.6 into fix/asoc

13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Mon, 22 Nov 2010 20:33:12 +0000 (20:33 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Fix a memory leak in alc5623_i2c_probe error path
Axel Lin [Mon, 22 Nov 2010 00:34:07 +0000 (08:34 +0800)]
ASoC: Fix a memory leak in alc5623_i2c_probe error path

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Restore WM8994 volatile and readable register operations
Mark Brown [Fri, 19 Nov 2010 16:09:15 +0000 (16:09 +0000)]
ASoC: Restore WM8994 volatile and readable register operations

They went AWOL during the multi-component merge.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: Fix multi-component mismerge in WM8523
Mark Brown [Mon, 22 Nov 2010 19:11:48 +0000 (19:11 +0000)]
ASoC: Fix multi-component mismerge in WM8523

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: atmel: test wrong variable
Vasiliy Kulikov [Mon, 22 Nov 2010 15:59:13 +0000 (18:59 +0300)]
ASoC: atmel: test wrong variable

After clk_get() mclk is checked second time instead of pllb check.
In patch v1 Jarkko Nikula noticed that PTR_ERR() is also has wrong argument.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Remove cyclic dependency between soc.h and soc-dapm.h/soc-dai.h
Jarkko Nikula [Sun, 21 Nov 2010 17:48:47 +0000 (19:48 +0200)]
ASoC: Remove cyclic dependency between soc.h and soc-dapm.h/soc-dai.h

There is no need anymore to include soc.h in soc-dapm.h and soc-dai.h as
drivers are converted to include only soc.h.

Thanks to Lars-Peter Clausen <lars@metafoo.de> for pointing out the issue.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Do not include soc-dai.h
Jarkko Nikula [Sun, 21 Nov 2010 17:48:46 +0000 (19:48 +0200)]
ASoC: Do not include soc-dai.h

There is no need to include soc-dai.h since soc.h includes it. Convert
drivers to include only soc.h.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Do not include soc-dapm.h
Jarkko Nikula [Sun, 21 Nov 2010 17:48:45 +0000 (19:48 +0200)]
ASoC: Do not include soc-dapm.h

There is no need to include soc-dapm.h since soc.h includes it.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Fix compile breakage in jz4740.c and smartq_wm8987.c
Jarkko Nikula [Sun, 21 Nov 2010 17:48:44 +0000 (19:48 +0200)]
ASoC: Fix compile breakage in jz4740.c and smartq_wm8987.c

Commit ce6120c require that soc-dapm.h cannot be included before soc.h but
these two drivers were not checked. Fix them by including only soc.h as it
includes soc-dapm.h.

Signed-off-by: Jarkko Nikula <jhnikula@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: stac9766 - set reg_cache_default to stac9766_reg
Axel Lin [Mon, 22 Nov 2010 00:20:54 +0000 (08:20 +0800)]
ASoC: stac9766 - set reg_cache_default to stac9766_reg

Looks like this is missing during multi-component conversion.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: s3c24xx: test wrong variable
Vasiliy Kulikov [Sun, 21 Nov 2010 17:40:21 +0000 (20:40 +0300)]
ASoC: s3c24xx: test wrong variable

After clk_get() mclk is checked three times instead of mout_epll
and sclk_spdif checks.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Move kfree(twl4030) to twl4030_soc_remove()
Axel Lin [Fri, 19 Nov 2010 09:31:08 +0000 (17:31 +0800)]
ASoC: Move kfree(twl4030) to twl4030_soc_remove()

As we allocate memory for twl4030 in twl4030_codec_probe(),
twl4030_codec_remove() is a better place to free the memory.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoMerge branch 'next-samsung-asoc' of git://git.kernel.org/pub/scm/linux/kernel/git...
Mark Brown [Fri, 19 Nov 2010 11:49:35 +0000 (11:49 +0000)]
Merge branch 'next-samsung-asoc' of git://git./linux/kernel/git/kgene/linux-samsung into for-2.6.38

13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Fri, 19 Nov 2010 11:45:05 +0000 (11:45 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: Move WM8994 read/write access data into separate file
Mark Brown [Tue, 16 Nov 2010 20:11:40 +0000 (20:11 +0000)]
ASoC: Move WM8994 read/write access data into separate file

Makes the WM8994 driver file itself substantially smaller.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoASoC: uda134x - set reg_cache_default to uda134x_reg
Axel Lin [Fri, 19 Nov 2010 07:48:06 +0000 (15:48 +0800)]
ASoC: uda134x - set reg_cache_default to uda134x_reg

After checking the code in 2.6.36,
I found this is missing during multi-component conversion.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoASoC: Provide ADC left/right channel source selection on WM8994
Mark Brown [Thu, 18 Nov 2010 15:49:38 +0000 (15:49 +0000)]
ASoC: Provide ADC left/right channel source selection on WM8994

Allow the application to choose if the ADC data presented on the left
and right channels is sourced from the internal left or right channel.
This allows a mono recording to be presented as stereo on the external
bus.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
13 years agoARM: S5PV310: Add audio platform devices
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S5PV310: Add audio platform devices

Define platform devices for all audio devices found on S5PV310

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S5PV210: Upgrade platform device for I2S
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S5PV210: Upgrade platform device for I2S

Add more information to I2S platform_devices in order
to prepare them for new controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S5PC100: Upgrade platform device for I2S
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S5PC100: Upgrade platform device for I2S

Add more information to I2S platform_devices in order to
prepare them for new controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S5P6442: Upgrade platform device for I2S
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S5P6442: Upgrade platform device for I2S

Add more information to I2S platform_devices in order
to prepare them for new controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S5P64X0: Upgrade platform device for I2S
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S5P64X0: Upgrade platform device for I2S

Add more information to I2S platform_devices in order
to prepare them for new controller driver.
Also, discard duplicated gpio-cfg.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S3C64XX: Upgrade platform device for I2S
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: S3C64XX: Upgrade platform device for I2S

Add more information to I2S platform_devices in order to
prepare them for new controller driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: SAMSUNG: Prepare audio header for new I2S driver
Jassi Brar [Thu, 18 Nov 2010 23:49:44 +0000 (08:49 +0900)]
ARM: SAMSUNG: Prepare audio header for new I2S driver

Add new defined and data structures in order to prepare for
new I2S driver.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: SAMSUNG: Rename s3c64xx I2S platform device
Jassi Brar [Thu, 18 Nov 2010 23:49:43 +0000 (08:49 +0900)]
ARM: SAMSUNG: Rename s3c64xx I2S platform device

Since the I2S of S3C64XX and newer SoCs are incremental
versions of each other with changes managable in a single
driver, rename the 's3c64xx-iis' -> 'samsung-i2s'

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoARM: S5PV310: Add platform devices for PL330 DMACs
Jassi Brar [Thu, 18 Nov 2010 23:49:43 +0000 (08:49 +0900)]
ARM: S5PV310: Add platform devices for PL330 DMACs

Samsung's Soc S5PV310 has three PL330 DMACs. First is dedicated for
Memory->Memory data transfer while the other two meant for data
transfer with peripherals.
Define and add latter two PL330 DMACs as platform devices on the
S5PV310 platform.

Signed-off-by: Jassi Brar <jassi.brar@samsung.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
13 years agoASoC: Add support for MAX98089 CODEC
Jesse Marroquin [Wed, 17 Nov 2010 20:26:40 +0000 (14:26 -0600)]
ASoC: Add support for MAX98089 CODEC

This patch adds initial support for the MAX98089 CODEC.

Signed-off-by: Jesse Marroquin <jesse.marroquin@maxim-ic.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
13 years agoMerge branch 'for-2.6.37' into for-2.6.38
Mark Brown [Wed, 17 Nov 2010 18:59:19 +0000 (18:59 +0000)]
Merge branch 'for-2.6.37' into for-2.6.38

13 years agoASoC: davinci: fixes for multi-component
Chris Paulson-Ellis [Tue, 16 Nov 2010 12:27:09 +0000 (12:27 +0000)]
ASoC: davinci: fixes for multi-component

Multi-component commit f0fba2ad broke a few things which this patch should
fix. Tested on the DM355 EVM. I've been as careful as I can, but it would be
good if those with access to other Davinci boards could test.

--

The multi-component commit put the initialisation of
snd_soc_dai.[capture|playback]_dma_data into snd_soc_dai_ops.hw_params of the
McBSP, McASP & VCIF drivers (davinci-i2s.c, davinci-mcasp.c & davinci-vcif.c).
The initialisation had to be moved from the probe function in these drivers
because davinci_*_dai changed from snd_soc_dai to snd_soc_dai_driver.

Unfortunately, the DMA params pointer is needed by davinci_pcm_open (in
davinci-pcm.c) before hw_params is called. I have moved the initialisation to
a new snd_soc_dai_ops.startup function in each of these drivers. This fix
indicates that all platforms that use davinci-pcm must have been broken and
need to test with this fix.

--

The multi-component commit also changed the McBSP driver name from
"davinci-asp" to "davinci-i2s" in davinci-i2s.c without updating the board
level references to the driver name. This change is understandable, as there
is a similarly named "davinci-mcasp" driver in davinci-mcasp.c.

There is probably no 'correct' name for this driver. The DM6446 datasheet
calls it the "ASP" and describes it as a "specialised McBSP". The DM355
datasheet calls it the "ASP" and describes it as a "specialised ASP". The
DM365 datasheet calls it the "McBSP". Rather than fix this problem by
reverting to "davinci-asp", I've elected to avoid future confusion with the
"davinci-mcasp" driver by changing it to "davinci-mcbsp", which is also
consistent with the names of the functions in the driver. There are other
fixes required, so it was never going to be as simple as a revert anyway.

--

The DM365 only has one McBSP port (of the McBSP platforms, only the DM355 has
2 ports), so I've changed the the id of the platform_device from 0 to -1.

--

In davinci-evm.c, the DM6446 EVM can no longer share a snd_soc_dai_link
structure with the DM355 EVM as they use different cpu DAI names (the DM355
has 2 ports and the EVM uses the second port, but the DM6446 only has 1 port).
This also means that the 2 boards need different snd_soc_card structures.

--

The codec_name entries in davinci-evm.c didn't match the i2c ids in the board
files. I have only checked and fixed the details of the names used for the
McBSP based platforms. Someone with a McASP based platform (eg DA8xx) should
check the others.

Signed-off-by: Chris Paulson-Ellis <chris@edesix.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>