GitHub/LineageOS/G12/android_kernel_amlogic_linux-4.9.git
12 years agoASoC: cx20442: add bias control over a platform provided regulator
Janusz Krzysztofik [Fri, 30 Dec 2011 03:04:54 +0000 (04:04 +0100)]
ASoC: cx20442: add bias control over a platform provided regulator

Now that a regulator device for controlling the codec chip reset state
over a platform agnostic regulator API is available on the only board
using this driver so far, extend the driver with a bias control function
which will request virtual power to the codec chip from that virtual
regulator, and will supersede the present implementation existing at the
sound card level.

Thanks to the regulator sharing mechanism, both the old (the sound card)
and the new (the codec) implementations should coexist smoothly until
the sound card file is updated. For this to work as expected, update the
sound card .set_bias_level callback to not touch codec->dapm.bias_level.

While extending the cx20442 structure, drop unused control_type member.

Created against linxu-3.2-rc6, tested on top of patch 1/4 "ARM: OMAP1:
ams-delta: set up a regulator over the modem reset GPIO pin".

Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@ti.com>
12 years agoASoC: omap: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 03:08:59 +0000 (11:08 +0800)]
ASoC: omap: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Liam Girdwood <lrg@ti.com>
12 years agoASoC: Add trivial pm_runtime usage to Samsung DAI drivers
Mark Brown [Thu, 8 Dec 2011 08:45:03 +0000 (16:45 +0800)]
ASoC: Add trivial pm_runtime usage to Samsung DAI drivers

Currently this won't actually do anything but using this will help the
core SoC code track when the system is idle.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: mid-x86: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:50:17 +0000 (14:50 +0800)]
ASoC: mid-x86: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: kirkwood: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:49:28 +0000 (14:49 +0800)]
ASoC: kirkwood: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: txx9: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:54:30 +0000 (14:54 +0800)]
ASoC: txx9: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: sh: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:53:32 +0000 (14:53 +0800)]
ASoC: sh: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: s6000: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:52:22 +0000 (14:52 +0800)]
ASoC: s6000: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Daniel Glöckner <dg@emlix.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: nuc900: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:51:17 +0000 (14:51 +0800)]
ASoC: nuc900: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: jz4740: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:48:19 +0000 (14:48 +0800)]
ASoC: jz4740: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: imx: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 06:47:08 +0000 (14:47 +0800)]
ASoC: imx: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: au1x: Add .owner to struct snd_soc_card
Axel Lin [Fri, 23 Dec 2011 01:53:55 +0000 (09:53 +0800)]
ASoC: au1x: Add .owner to struct snd_soc_card

Add missing .owner of struct snd_soc_card. This prevents the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: tegra: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:23:01 +0000 (21:23 +0800)]
ASoC: tegra: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: ep93xx: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:21:37 +0000 (21:21 +0800)]
ASoC: ep93xx: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: davinci: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:19:42 +0000 (21:19 +0800)]
ASoC: davinci: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: blackfin: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:17:22 +0000 (21:17 +0800)]
ASoC: blackfin: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: atmel: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:14:58 +0000 (21:14 +0800)]
ASoC: atmel: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: fsl: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 13:04:54 +0000 (21:04 +0800)]
ASoC: fsl: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Declare soc_new_pcm() properly
Mark Brown [Thu, 22 Dec 2011 12:16:39 +0000 (12:16 +0000)]
ASoC: Declare soc_new_pcm() properly

Ensure that everything is seeing the same declaration by moving it to
a header file rather than putting the declaration in soc-core.c

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@ti.com>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Thu, 22 Dec 2011 12:02:29 +0000 (12:02 +0000)]
Merge branch 'for-3.2' into for-3.3

12 years agoRevert "ASoC: mxs: correct 'direction' of device_prep_dma_cyclic"
Mark Brown [Thu, 22 Dec 2011 11:37:03 +0000 (11:37 +0000)]
Revert "ASoC: mxs: correct 'direction' of device_prep_dma_cyclic"

This reverts commit dbec3b30a601791717bc5bb827e210c3b5d6e067 as it
should never have been applied to the ASoC tree at all, let alone 3.2.

12 years agoASoC: samsung: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 02:53:15 +0000 (10:53 +0800)]
ASoC: samsung: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Add .owner to struct snd_soc_card
Axel Lin [Thu, 22 Dec 2011 01:44:43 +0000 (09:44 +0800)]
ASoC: pxa: Add .owner to struct snd_soc_card

Missed .owner of struct snd_soc_card will prevent the module from being
removed from underneath its users.

Reported-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Allow DAI links to be specified using device tree nodes
Stephen Warren [Wed, 21 Dec 2011 17:40:59 +0000 (10:40 -0700)]
ASoC: Allow DAI links to be specified using device tree nodes

DAI link endpoints and platform (DMA) devices are currently specified
by name. When instantiating sound cards from device tree, it may be more
convenient to refer to these devices by phandle in the device tree, and
for code to describe DAI links using the "struct device_node *"
("of_node") those phandles map to.

This change adds new fields to snd_soc_dai_link which can "name" devices
using of_node, enhances soc_bind_dai_link() to allow binding based on
of_node, and enhances snd_soc_register_card() to ensure that illegal
combinations of name and of_node are not used.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove ifdefs for GPIO_SYSFS
Mark Brown [Tue, 20 Dec 2011 23:59:41 +0000 (23:59 +0000)]
ASoC: Remove ifdefs for GPIO_SYSFS

It is part of the GPIO API so should be stubbed appropriately.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert cs42l51 to table based DAPM and control init
Axel Lin [Tue, 20 Dec 2011 02:19:54 +0000 (10:19 +0800)]
ASoC: Convert cs42l51 to table based DAPM and control init

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert 88pm860x-codec to table based DAPM and control init
Axel Lin [Tue, 20 Dec 2011 02:14:25 +0000 (10:14 +0800)]
ASoC: Convert 88pm860x-codec to table based DAPM and control init

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use dai_fmt in imote2 machine driver
Axel Lin [Tue, 20 Dec 2011 08:27:28 +0000 (16:27 +0800)]
ASoC: Use dai_fmt in imote2 machine driver

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use dai_fmt in hx4700 machine driver
Axel Lin [Tue, 20 Dec 2011 08:13:26 +0000 (16:13 +0800)]
ASoC: Use dai_fmt in hx4700 machine driver

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert ak4671 to devm_kzalloc()
Axel Lin [Tue, 20 Dec 2011 06:41:19 +0000 (14:41 +0800)]
ASoC: Convert ak4671 to devm_kzalloc()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert ak4642 to devm_kzalloc()
Axel Lin [Tue, 20 Dec 2011 06:40:12 +0000 (14:40 +0800)]
ASoC: Convert ak4642 to devm_kzalloc()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert ak4641 to devm_kzalloc()
Axel Lin [Tue, 20 Dec 2011 06:39:20 +0000 (14:39 +0800)]
ASoC: Convert ak4641 to devm_kzalloc()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert ak4535 to devm_kzalloc()
Axel Lin [Tue, 20 Dec 2011 06:38:09 +0000 (14:38 +0800)]
ASoC: Convert ak4535 to devm_kzalloc()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert ak4104 to devm_kzalloc()
Axel Lin [Tue, 20 Dec 2011 06:37:12 +0000 (14:37 +0800)]
ASoC: Convert ak4104 to devm_kzalloc()

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Tegra+WM8903 machine: Add device tree binding
Stephen Warren [Mon, 12 Dec 2011 22:55:36 +0000 (15:55 -0700)]
ASoC: Tegra+WM8903 machine: Add device tree binding

This driver is parameterized in two ways:

a) Platform data, which supplies the set of GPIOs used by the driver.
   These GPIOs can now be parsed out of device tree.

b) Machine-specific DAPM route arrays embedded into the ASoC machine
   driver itself. Historically, the driver picks the appropriate array
   to use using machine_is_*(). The driver now requires this array to
   be parsed from device tree when instantiated through device tree,
   using the core ASoC support for this parsing.

Based on work by John Bonesio, but significantly reworked since then.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Add utility to parse DAPM routes from device tree
Stephen Warren [Mon, 12 Dec 2011 22:55:35 +0000 (15:55 -0700)]
ASoC: Add utility to parse DAPM routes from device tree

Implement snd_soc_of_parse_audio_routing(), a utility function that can
parses a simple DAPM route table from device tree.The machine driver
specifies the DT property to use, since this is binding-specific.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Add utility to set a card's name from device tree
Stephen Warren [Mon, 12 Dec 2011 22:55:34 +0000 (15:55 -0700)]
ASoC: Add utility to set a card's name from device tree

Implement snd_soc_of_parse_card_name(), a utility function that sets a
card's name from device tree. The machine driver specifies the DT
property to use, since this is binding-specific.

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Rename rt562[1|2]_vol_snd_controls to alc562[1|2]_vol_snd_controls
Axel Lin [Thu, 15 Dec 2011 03:57:57 +0000 (11:57 +0800)]
ASoC: Rename rt562[1|2]_vol_snd_controls to alc562[1|2]_vol_snd_controls

The module desciption says this is ASoC alc5621/2/3 driver.
Make the naming consistent with the reset of the code.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'for-3.2' into for-3.3
Mark Brown [Tue, 20 Dec 2011 00:53:23 +0000 (00:53 +0000)]
Merge branch 'for-3.2' into for-3.3

12 years agoASoC: Use dai_fmt in snappercl15 machine driver
Axel Lin [Sat, 17 Dec 2011 07:41:11 +0000 (15:41 +0800)]
ASoC: Use dai_fmt in snappercl15 machine driver

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Reviewed-by: Mika Westerberg <mika.westerberg@iki.fi>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use dai_fmt in edb93xx machine driver
Axel Lin [Sat, 17 Dec 2011 07:36:52 +0000 (15:36 +0800)]
ASoC: Use dai_fmt in edb93xx machine driver

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by: Alexander Sverdlin <subaparts@yandex.ru>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: mxs: correct 'direction' of device_prep_dma_cyclic
Shawn Guo [Wed, 14 Dec 2011 07:47:46 +0000 (15:47 +0800)]
ASoC: mxs: correct 'direction' of device_prep_dma_cyclic

The commit 49920bc (dmaengine: add new enum dma_transfer_direction)
changes the type of parameter 'direction' of device_prep_dma_cyclic
from dma_data_direction to dma_transfer_direction.

Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Dong Aisheng <dong.aisheng@linaro.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove export of s3c_pcm_dai
Axel Lin [Wed, 14 Dec 2011 11:13:26 +0000 (19:13 +0800)]
ASoC: Remove export of s3c_pcm_dai

We don't need to export s3c_pcm_dai after multi-component patch.
Thus remove export of s3c_pcm_dai and make it static.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Tegra machine ASoC driver for boards using ALC5332 codec
Leon Romanovsky [Mon, 19 Dec 2011 19:51:52 +0000 (21:51 +0200)]
ASoC: Tegra machine ASoC driver for boards using ALC5332 codec

At this stage only Toshiba AC100/Dynabook supported.

Signed-off-by: Leon Romanovsky <leon@leon.nu>
Signed-off-by: Andrey Danin <danindrey@mail.ru>
Acked-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert uda1380 to table based DAPM and control init
Axel Lin [Mon, 19 Dec 2011 05:54:38 +0000 (13:54 +0800)]
ASoC: Convert uda1380 to table based DAPM and control init

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert max9850 to table based DAPM and control init
Axel Lin [Mon, 19 Dec 2011 05:13:31 +0000 (13:13 +0800)]
ASoC: Convert max9850 to table based DAPM and control init

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use standard cache sync code in wm8961
Mark Brown [Fri, 16 Dec 2011 06:57:11 +0000 (07:57 +0100)]
ASoC: Use standard cache sync code in wm8961

We write the reset register with the default value so it should not be
mistakenly written.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert wm8961 to devm_kzalloc()
Mark Brown [Fri, 16 Dec 2011 06:56:02 +0000 (07:56 +0100)]
ASoC: Convert wm8961 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove I2C ifdefs from wm8961 driver
Mark Brown [Fri, 16 Dec 2011 06:55:02 +0000 (07:55 +0100)]
ASoC: Remove I2C ifdefs from wm8961 driver

The driver only supports I2C so no need to conditionalise its use.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert WM8960 to devm_kzalloc()
Mark Brown [Fri, 16 Dec 2011 06:42:58 +0000 (07:42 +0100)]
ASoC: Convert WM8960 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Convert e800_wm9712 to use snd_soc_register_card()
Axel Lin [Thu, 15 Dec 2011 02:54:25 +0000 (10:54 +0800)]
ASoC: pxa: Convert e800_wm9712 to use snd_soc_register_card()

Use snd_soc_register_card() instead of creating a "soc-audio" platform device.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Convert tosa to use snd_soc_register_card()
Axel Lin [Thu, 15 Dec 2011 02:57:22 +0000 (10:57 +0800)]
ASoC: pxa: Convert tosa to use snd_soc_register_card()

Use snd_soc_register_card() instead of creating a "soc-audio" platform device.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Convert imote2 to use snd_soc_register_card()
Axel Lin [Thu, 15 Dec 2011 02:55:24 +0000 (10:55 +0800)]
ASoC: pxa: Convert imote2 to use snd_soc_register_card()

Use snd_soc_register_card() instead of creating a "soc-audio" platform device.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Convert e750_wm9705 to use snd_soc_register_card()
Axel Lin [Thu, 15 Dec 2011 02:53:29 +0000 (10:53 +0800)]
ASoC: pxa: Convert e750_wm9705 to use snd_soc_register_card()

Use snd_soc_register_card() instead of creating a "soc-audio" platform device.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: pxa: Convert e740_wm9705 to use snd_soc_register_card()
Axel Lin [Thu, 15 Dec 2011 02:52:42 +0000 (10:52 +0800)]
ASoC: pxa: Convert e740_wm9705 to use snd_soc_register_card()

Use snd_soc_register_card() instead of creating a "soc-audio" platform device.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: omap-mcbsp: Enable FIFO usage on OMAP4
Peter Ujfalusi [Thu, 15 Dec 2011 09:32:27 +0000 (11:32 +0200)]
ASoC: omap-mcbsp: Enable FIFO usage on OMAP4

Allow McBSP FIFO configuration from ASoC dai driver
on OMAP4 platform.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoOMAP4: mcbsp: Enable FIFO usage
Peter Ujfalusi [Thu, 15 Dec 2011 09:32:26 +0000 (11:32 +0200)]
OMAP4: mcbsp: Enable FIFO usage

All McBSP instances on OMAP4 has 128 word long FIFO

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'topic/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai...
Mark Brown [Sat, 17 Dec 2011 09:05:46 +0000 (10:05 +0100)]
Merge branch 'topic/asoc' of git://git./linux/kernel/git/tiwai/sound into for-3.3

12 years agoASoC: Fix compile error in sound/soc/mid-x86/sst_platform.c
Joerg Roedel [Thu, 15 Dec 2011 17:24:54 +0000 (18:24 +0100)]
ASoC: Fix compile error in sound/soc/mid-x86/sst_platform.c

The variable ret_val is used but not declared. This causes
the following compile error:

sound/soc/mid-x86/sst_platform.c: In function ‘sst_platform_open’:
sound/soc/mid-x86/sst_platform.c:274:2: error: ‘ret_val’ undeclared (first use in this function)
sound/soc/mid-x86/sst_platform.c:274:2: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [sound/soc/mid-x86/sst_platform.o] Error 1

Fix this.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
12 years agoASoC: Staticise mfld_msic_dailink
Axel Lin [Wed, 14 Dec 2011 11:23:01 +0000 (19:23 +0800)]
ASoC: Staticise mfld_msic_dailink

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked by: Vinod Koul <vinod.koul@linux.intel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Fix partial cherry pick in wm8993
Mark Brown [Thu, 15 Dec 2011 03:54:00 +0000 (11:54 +0800)]
ASoC: Fix partial cherry pick in wm8993

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use core pm_runtime callbacks for fsi
Mark Brown [Sat, 3 Dec 2011 20:22:18 +0000 (20:22 +0000)]
ASoC: Use core pm_runtime callbacks for fsi

Now that the core holds a pm_runtime reference to the device while the
link is active there is no need for the driver to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use core pm_runtime callbacks for siu_dai
Mark Brown [Sat, 3 Dec 2011 20:21:32 +0000 (20:21 +0000)]
ASoC: Use core pm_runtime callbacks for siu_dai

Now that the core holds a pm_runtime reference to the device while the
link is active there is no need for the driver to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Tune the accessory detection rates for WM8996
Mark Brown [Wed, 14 Dec 2011 11:23:37 +0000 (19:23 +0800)]
ASoC: Tune the accessory detection rates for WM8996

Use longer intervals when the microphone is not inserted to increase
robustness against leisurely insertion.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agomfd: Test for jack detection when deciding if wm8994 should suspend
Mark Brown [Thu, 1 Dec 2011 17:19:44 +0000 (17:19 +0000)]
mfd: Test for jack detection when deciding if wm8994 should suspend

The jack detection on WM1811 is often required during system suspend, add
it as another check when deciding if we should suspend.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoASoC: Use standard register cache sync in wm8993
Mark Brown [Wed, 14 Dec 2011 03:40:59 +0000 (11:40 +0800)]
ASoC: Use standard register cache sync in wm8993

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Convert wm8993 to devm_kzalloc()
Mark Brown [Wed, 14 Dec 2011 03:11:52 +0000 (11:11 +0800)]
ASoC: Convert wm8993 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Use standard snd_soc_cache_sync() for WM9090
Mark Brown [Tue, 13 Dec 2011 13:04:26 +0000 (21:04 +0800)]
ASoC: Use standard snd_soc_cache_sync() for WM9090

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove cache default for volatile wm9081 reset register
Mark Brown [Tue, 13 Dec 2011 10:30:03 +0000 (18:30 +0800)]
ASoC: Remove cache default  for volatile wm9081 reset register

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise sst_pcm_new and sst_soc_platform_drv
Axel Lin [Tue, 13 Dec 2011 09:13:45 +0000 (17:13 +0800)]
ASoC: Staticise sst_pcm_new and sst_soc_platform_drv

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Acked-by Vinod Koul <vinod.koul@linux.intel.com>
Acked-by: Lu Guanqun <guanqun.lu@intel.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove unused extern declarations for sh4_hac_dai and sh7760_soc_platform
Axel Lin [Tue, 13 Dec 2011 12:23:50 +0000 (20:23 +0800)]
ASoC: Remove unused extern declarations for sh4_hac_dai and sh7760_soc_platform

Both sh4_hac_dai and sh7760_soc_platform are changed to static
by multi-component patch and they are not used in sh7760-ac97.c now.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Complete initialisation before registering Samsung PCM DAI
Mark Brown [Mon, 12 Dec 2011 11:05:58 +0000 (19:05 +0800)]
ASoC: Complete initialisation before registering Samsung PCM DAI

Otherwise there's a race where the DAI might get used without everything
having been set up.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Sangbeom Kim <sbkim73@samsung.com>
12 years agoASoC: Staticise asoc_idma_platform
Mark Brown [Mon, 12 Dec 2011 14:47:25 +0000 (22:47 +0800)]
ASoC: Staticise asoc_idma_platform

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Sangbeom Kim <sbkim73@samsung.com>
12 years agoASoC: Fix wm8995 regmap usage
Mark Brown [Wed, 14 Dec 2011 03:20:42 +0000 (11:20 +0800)]
ASoC: Fix wm8995 regmap usage

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Rename ALC5632 MICBIAS to common name convention.
Leon Romanovsky [Mon, 12 Dec 2011 19:43:45 +0000 (21:43 +0200)]
ASoC: Rename ALC5632 MICBIAS to common name convention.

Signed-off-by: Leon Romanovsky <leon@leon.nu>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Tue, 13 Dec 2011 05:26:25 +0000 (13:26 +0800)]
Merge branch 'topic/cache' of git://git./linux/kernel/git/broonie/regmap into for-3.3

12 years agoregmap: Move initialization of regcache related fields to regcache_init
Lars-Peter Clausen [Wed, 16 Nov 2011 15:28:16 +0000 (16:28 +0100)]
regmap: Move initialization of regcache related fields to regcache_init

Move the initialization regcache related fields of the regmap struct to
regcache_init. This allows us to keep regmap and regcache code better
separated.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise alchemy_pcm_soc_platform
Axel Lin [Tue, 13 Dec 2011 02:15:40 +0000 (10:15 +0800)]
ASoC: Staticise alchemy_pcm_soc_platform

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise au1xpsc_soc_platform
Axel Lin [Tue, 13 Dec 2011 02:14:30 +0000 (10:14 +0800)]
ASoC: Staticise au1xpsc_soc_platform

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Staticise rx51_aux_dev
Axel Lin [Tue, 13 Dec 2011 02:13:13 +0000 (10:13 +0800)]
ASoC: Staticise rx51_aux_dev

Signed-off-by: Axel Lin <axel.lin@gmail.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove rbtree register cache
Mark Brown [Thu, 10 Nov 2011 17:39:40 +0000 (17:39 +0000)]
ASoC: Remove rbtree register cache

All users now use regmap directly so delete the ASoC version of the code.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove WM8994 register cache
Mark Brown [Tue, 25 Oct 2011 14:13:12 +0000 (16:13 +0200)]
ASoC: Remove WM8994 register cache

Now that the mfd is using the register map cache there's no need for the
CODEC driver to do any register cache management or any funny dances to
interact with the other drivers using the device so just remove the cache
initialisation and volatility information.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoASoC: Remove ASoC-specific WM8994 I/O code
Mark Brown [Sun, 24 Jul 2011 11:49:52 +0000 (12:49 +0100)]
ASoC: Remove ASoC-specific WM8994 I/O code

Just go directly to the regmap API, saving code and making integration
that bit more direct.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
12 years agoMerge branch 'mfd/wm8994' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:19:20 +0000 (00:19 +0800)]
Merge branch 'mfd/wm8994' of git://git./linux/kernel/git/broonie/misc into for-3.3

12 years agomfd: Convert wm8994 to use generic regmap irq_chip
Mark Brown [Tue, 25 Oct 2011 08:19:04 +0000 (10:19 +0200)]
mfd: Convert wm8994 to use generic regmap irq_chip

Factor out the irq_chip implementation, substantially reducing the code
size for the driver.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoMerge branch 'topic/irq' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:12:48 +0000 (00:12 +0800)]
Merge branch 'topic/irq' of git://git./linux/kernel/git/broonie/regmap into wm8994-mfd

12 years agomfd: Mark WM1811 GPIO6 register volatile for later revisions
Mark Brown [Thu, 1 Dec 2011 13:55:49 +0000 (13:55 +0000)]
mfd: Mark WM1811 GPIO6 register volatile for later revisions

For later chip revisions the WM1811 GPIO6 register is always volatile so
store the device revision when initialising the driver and then check at
runtime if we're running on a newer device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add missing mutex.h inclusion to WM8994 core.h
Mark Brown [Thu, 1 Dec 2011 13:53:18 +0000 (13:53 +0000)]
mfd: Add missing mutex.h inclusion to WM8994 core.h

struct wm8994 includes a mutex so we need to include mutex.h before we
declare it. All current users rely on this being done implicitly.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add WM1811A device ID to wm8994 driver
Mark Brown [Wed, 30 Nov 2011 20:16:42 +0000 (20:16 +0000)]
mfd: Add WM1811A device ID to wm8994 driver

The WM1811A is a variant of the WM1811 with pin configuration changes.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Correct revision display for WM1811 revision D
Mark Brown [Wed, 30 Nov 2011 16:51:04 +0000 (16:51 +0000)]
mfd: Correct revision display for WM1811 revision D

As WM1811 revision C was transparent to software the revision IDs for
subsequent revisions are one less than they would normally be. Correct
for this in log messages.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Constify WM8994 regulator_init_data
Mark Brown [Mon, 28 Nov 2011 18:48:14 +0000 (18:48 +0000)]
mfd: Constify WM8994 regulator_init_data

The driver has no need to modify the regulator_init_data so declare it
const to allow machine code to do so.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Initialise WM8994 register cache after reading chip ID registers
Mark Brown [Sat, 3 Dec 2011 17:10:32 +0000 (17:10 +0000)]
mfd: Initialise WM8994 register cache after reading chip ID registers

The different devices handled by the WM8994 can be distinguished using
their ID registers so we don't need to rely on the user having registered
the device correctly. Instead do the initial regmap setup with a minimal
configuration only supporting physical I/O and then configure the cache
once we have identified the device.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Enable register cache for wm8994 devices
Mark Brown [Tue, 25 Oct 2011 12:23:53 +0000 (14:23 +0200)]
mfd: Enable register cache for wm8994 devices

As part of this we provide information about the registers that exist in
the device to the regmap core, drop the small amount of cache that the
core had been using and let regmap do the sync.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agoMerge branch 'topic/cache' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie...
Mark Brown [Mon, 12 Dec 2011 16:10:45 +0000 (00:10 +0800)]
Merge branch 'topic/cache' of git://git./linux/kernel/git/broonie/regmap into HEAD

12 years agomfd: Add wm8994 register access and default information
Mark Brown [Fri, 19 Aug 2011 09:37:58 +0000 (18:37 +0900)]
mfd: Add wm8994 register access and default information

Describe the register map to the regmap core so that we can use its
diagnostic features and cache support.  This is split out from the patch
using it due to the size so that the actual code change is a bit clearer.

As the various devices are supersets of each other the access maps are
built up by layering the functions on top of each other, though the
interface for specifying the register defaults isn't currently amenable
to this.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Define some additional wm8994 registers
Mark Brown [Tue, 25 Oct 2011 13:44:12 +0000 (15:44 +0200)]
mfd: Define some additional wm8994 registers

Add a bunch of definitions for wm8994 registers that are not currently
used by software.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Don't hard code the reset value for WM8994 devices
Mark Brown [Tue, 25 Oct 2011 11:25:43 +0000 (13:25 +0200)]
mfd: Don't hard code the reset value for WM8994 devices

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Disable more pulls on WM8994
Mark Brown [Thu, 3 Nov 2011 13:20:38 +0000 (13:20 +0000)]
mfd: Disable more pulls on WM8994

Disable more pulls by default on WM8994 for a small current saving. Since
some designs do leave SPKMODE floating provide platform data to allow that
to be left enabled.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Convert wm8994 to devm_kzalloc()
Mark Brown [Tue, 25 Oct 2011 11:45:40 +0000 (13:45 +0200)]
mfd: Convert wm8994 to devm_kzalloc()

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
12 years agomfd: Add basic device tree binding for wm8994
Mark Brown [Tue, 22 Nov 2011 18:22:29 +0000 (18:22 +0000)]
mfd: Add basic device tree binding for wm8994

Add a placeholder device tree binding for the wm8994 driver. At present
the binding is essentially null as none of the platform data is supported,
and at least some of that will depend on the pending regulator bindings.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>