summaryrefslogtreecommitdiffstats
path: root/sound
AgeCommit message (Collapse)AuthorFilesLines
2011-11-23ASoC: Constify snd_soc_dai_ops structsLars-Peter Clausen121-147/+147
Commit 1ee46ebd("ASoC: Make the DAI ops constant in the DAI structure") introduced the possibility to have constant DAI ops structures, yet this is barley used in both existing drivers and also new drivers being submitted, although none of them modifies its DAI ops structure. The later is not surprising since existing drivers are often used as templates for new drivers. So this patch just constifies all existing snd_soc_dai_ops structs to eliminate the issue altogether. The patch was generated with the following coccinelle semantic patch: // <smpl> @@ identifier ops; @@ -struct snd_soc_dai_ops ops = +const struct snd_soc_dai_ops ops = { ... }; // </smpl> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Tegra I2S: Use devm_ APIs and module_platform_driverStephen Warren1-35/+10
module_platform_drive saves some boiler-plate code. The devm_ APIs remove the need to manually clean up allocations, thus removing some code. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Tegra: Move DAS configuration into machine driversStephen Warren3-18/+28
This removes potentially machine-specific routing knowledge from the I2S driverinto the machine drivers, which is better equipped to know what the appropriate routing configuration is. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Tegra DAS: Use devm_ APIs and module_platform_driverStephen Warren1-35/+10
module_platform_drive saves some boiler-plate code. The devm_ APIs remove the need to manually clean up allocations, thus removing some code. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Tegra PCM: Use module_platform_driverStephen Warren1-12/+1
This saves some boiler-plate code. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Convert wm8776 to table based control and DAPM initMark Brown1-6/+7
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-23ASoC: Staticise and constify cs42l73_reg_defaultsMark Brown1-1/+1
It's not exported and doesn't need to change. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-22Merge branch 'for-3.2' into for-3.3Mark Brown2-17/+17
2011-11-22ASoC: mpc8610: tell the CS4270 codec that it's the masterTimur Tabi1-8/+16
Commit ac601555 ("ASoC: Return early with -EINVAL if invalid dai format is detected") requires the machine driver to tell the CS4270 codec driver whether the CS4270 should be configured for master or slave operation. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-22ASoC: cs4720: use snd_soc_cache_sync()Daniel Mack1-9/+1
Replace the manual register restore mechanism in cs4270.c and call the generic snd_soc_cache_sync() handler instead. This factors code out in favour of core facilities and also fixes a bus confusion that is most probably caused by intermixing i2c-regmap functions and i2c_smbus_* accessors. Signed-off-by: Daniel Mack <zonque@gmail.com> Reported-and-tested-by: Sven Neumann <s.neumann@raumfeld.com> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-22Merge branch 'for-3.2' into for-3.3Mark Brown1-0/+1
2011-11-22ASoC: SAMSUNG: Fix build errorBoojin Kim1-0/+1
This patch adds <linux/modules.h> to fix following build errors. sound/soc/codecs/wm8994.c: In function 'wm8994_readable': sound/soc/codecs/wm8994.c:58: warning: unused variable 'wm8994' sound/soc/samsung/smdk_wm8994.c:176: error: expected declaration specifiers or '...' before string constant sound/soc/samsung/smdk_wm8994.c:176: warning: data definition has no type or storage class sound/soc/samsung/smdk_wm8994.c:176: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION' sound/soc/samsung/smdk_wm8994.c:176: warning: function declaration isn't a prototype sound/soc/samsung/smdk_wm8994.c:177: error: expected declaration specifiers or '...' before string constant Signed-off-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-22Merge branch 'for-3.2' into for-3.3Mark Brown2-6/+6
2011-11-22ASoC: max9877: Update register if either val or val2 is changedAxel Lin1-5/+5
In the case of ((max9877_regs[reg] >> shift) & mask) != val but ((max9877_regs[reg2] >> shift) & mask) == val2, current code does not update the registers. Fix the logic to update registers if either val or val2 is changed. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-22ASoC: Fix wrong define for AD1836_ADC_WORD_OFFSETAxel Lin1-1/+1
According to the datasheet: The BIT[5:4] of ADC Control Register 2 is to control the word width. 00 = 25 Bits 01 = 20 Bits 10 = 16 Bits 11 = Invalid Thus, the AD1836_ADC_WORD_OFFSET should be defined as 4. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
2011-11-22ASoC: cs42l73: Make inv and format to be unsigned intAxel Lin1-1/+1
Fix below smatch warning: sound/soc/codecs/cs42l73.c +1030 cs42l73_set_dai_fmt(53) error: inv is never equal to 1024 (wrong type 0 - 255). sound/soc/codecs/cs42l73.c +1032 cs42l73_set_dai_fmt(55) error: inv is never equal to 768 (wrong type 0 - 255). sound/soc/codecs/cs42l73.c +1036 cs42l73_set_dai_fmt(59) error: inv is never equal to 1024 (wrong type 0 - 255). Reported-by: Dan Carpenter <dan.carpenter@oracle.com> 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>
2011-11-22ASoC: cs42l73: Unify the way to define bits of registerAxel Lin2-12/+12
Current code defines some bits with left shift to the proper bit defined in datasheet, but some don't. Unify the definition with proper left shift and adjust the code accordingly. 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>
2011-11-22ASoC: Remove conditional I2C usage from tlv320aic3x driverMark Brown1-6/+0
The driver only supports I2C so doesn't need to do things conditionally. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Jarkko Nikula <jhnikula@gmail.com>
2011-11-21ASoC: Remove WM5100 DSP memory windows from register default dataMark Brown1-168/+0
They're all volatile so shouldn't have defaults and as we've got pages into the DSP memory the registers themselves aren't that useful - a further patch adding support for the DSPs will provide direct diagnostic access to the DSP memories. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21ASoC: Convert WM8753 to table based DAPM and control initMark Brown1-16/+8
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21ASoC: Remove redundant regcache_sync call in cs42l73_resumeAxel Lin1-4/+0
It's done in cs42l73_set_bias_level when the dapm.bias_level is switching from SND_SOC_BIAS_OFF to SND_SOC_BIAS_STANDBY. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21ASoC: cs42l73: Show correct revision idAxel Lin1-1/+1
Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21ASoC: cs42l73: Return proper error code if device id mismatchAxel Lin1-0/+1
Return -ENODEV instead of 0 if device id mismatch. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21Merge branch 'for-3.2' into for-3.3Mark Brown1-0/+1
2011-11-21ASoC: Use table based init for wm8731_snd_controlsMark Brown1-3/+2
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-21ASoC: Ensure WM8731 register cache is synced when resuming from disabledMark Brown1-0/+1
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
2011-11-21Merge branch 'for-3.2' into for-3.3Mark Brown8-13/+15
2011-11-21Merge branch 'DB_RANGE-size-fixes' of ↵Mark Brown7-10/+10
git://git.alsa-project.org/alsa-kprivate into for-3.2
2011-11-20ASoC: cs4271: Fix wrong mask parameter in some snd_soc_update_bits callsAxel Lin1-3/+5
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>
2011-11-20ASoC: wm_hubs: fix DB_RANGE sizeClemens Ladisch1-1/+1
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the array. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: wm9090: fix DB_RANGE sizeClemens Ladisch1-3/+3
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the arrays. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: wm8993: fix DB_RANGE sizeClemens Ladisch1-1/+1
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the array. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: wm8962: fix DB_RANGE sizeClemens Ladisch1-2/+2
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the arrays. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: sgtl5000: fix DB_RANGE sizeClemens Ladisch1-1/+1
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the array. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: rt5631: fix DB_RANGE sizeClemens Ladisch1-1/+1
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent the last entry from being omitted. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-20ASoC: adau1373: fix DB_RANGE sizeClemens Ladisch1-1/+1
Give the correct number of entries to TLV_DB_RANGE_HEAD to prevent reading more data than actually is in the array. Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
2011-11-17ASoC: alc5632: Remove volatile registers from regmap defaultsLeon Romanovsky1-7/+0
There is no need to provide defaults for the volatile registers and doing so might cause confusion. Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-17Merge branch 'for-3.2' into for-3.3Mark Brown2-0/+4
2011-11-17ASoC: wm8753: Skip noop reconfiguration of DAI modeTimo Juhani Lindfors1-0/+3
This patch makes it possible to set DAI mode to its currently applied value even if codec is active. This is necessary to allow aplay -t raw -r 44100 -f S16_LE -c 2 < /dev/urandom & alsactl store -f backup.state alsactl restore -f backup.state to work without returning errors. This patch is based on a patch sent by Klaus Kurzmann <mok@fluxnetz.de>. Signed-off-by: Timo Juhani Lindfors <timo.lindfors@iki.fi> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
2011-11-17ASoC: alc5632: Update of i2c_probe function to use regmap API onlyLeon Romanovsky1-37/+30
Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-17ASoC: alc5632: Added support of two undocumented registersLeon Romanovsky1-0/+2
There are two undocumented registers in use in alc5632_i2c_probe function. It must be added to support future rewrite of this function to use regmap API completely. Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-17ASoC: alc5632: Remove unrelevant registers and name the relevantLeon Romanovsky1-112/+49
Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-17ASoC: Add support for CS42L73 codecBrian Austin4-0/+1690
This patch adds support for the Cirrus Logic CS42L73 low power stereo codec. Signed-off-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Georgi Vlaev <joe@nucleusys.com> Acked-by: Vinod Koul <vinod.koul@linux.intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-16ASoC: Say how long short WM8958 DSP2 firmwares areMark Brown1-1/+2
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-16ASoC: alc5632: rename volume/switch contols for master and speaker volumes.Andrey Danin1-4/+4
Signed-off-by: Andrey Danin <danindrey@mail.ru> Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-16ASoC: Convert ALC5632 codec to use regmap APILeon Romanovsky2-58/+161
Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-16ASoC: alc5632: Fix compile without CONFIG_PMLeon Romanovsky1-0/+5
Signed-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-15ASoC: fsl_ssi: properly initialize the sysfs attribute objectTimur Tabi1-0/+1
Commit 6992f533 ("sysfs: Use one lockdep class per sysfs attribute") requires 'struct attribute' objects to be initialized with sysfs_attr_init(). Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
2011-11-14ASoC: Remove unused control_data and mutex fields from struct alc5632_privAxel Lin1-4/+0
Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-off-by: Leon Romanovsky <leon@leon.nu> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-11-14ASoC: sta32x: add workaround for ESD reset issueJohannes Stezenbach1-1/+49
sta32x resets and loses all configuration during ESD test. Work around by polling the CONFA register once a second and restore all coeffcients and registers when CONFA changes unexpectedly. Signed-off-by: Johannes Stezenbach <js@sig21.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>