summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: ak4642: fixup HeadPhone L/R dapm settingsKuninori Morimoto2012-02-211-15/+16
| | | | | | | | | | | | Current ak4642 driver had wrong dapm settings for headphone L/R. If you select headphone L, and select R after that, headphone L setting was removed by R settings. This patch fixes it up. It provides just "Headphone Enable" to user side Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8962: Fix sidetone enumeration textsMark Brown2012-02-141-1/+1
| | | | | | | The sidetone enumeration texts have left and right swapped. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm8994: Disable line output discharge prior to ramping VMIDMark Brown2012-02-081-0/+5
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8994: Fix typo in VMID ramp settingMark Brown2012-02-081-1/+1
| | | | | | | The VMID ramp rate is supposed to be 0x3, not 11b. Fix that. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm8994: Enabling VMID should take a runtime PM referenceMark Brown2012-02-061-0/+4
| | | | | | | | We can enable VMID independently of the bias in some use cases so we need to ensure that the core device is powered up. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm_hubs: Correct line input to line output 2 pathsMark Brown2012-02-011-2/+2
| | | | | | | | The second line output mixer has the controls for the line input bypasses in the opposite order. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: cs42l73: Fix Output [X|A|V]SP_SCLK Sourcing Mode setting for master modeAxel Lin2012-02-011-1/+1
| | | | | | | | For master mode, set Output [X|A|V]SP_SCLK Sourcing Mode to MCLK Mode. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Brian Austin <brian.austin@cirrus.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8962: Fix word length configurationSusan Gao2012-02-011-3/+3
| | | | | | Signed-off-by: Susan Gao <sgao@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm8994: Remove ASoC level register cache syncMark Brown2012-01-311-5/+0
| | | | | | | | Now we've switched over to regmap the ASoC level cache sync will be ineffectual and potentially harmful as there is no longer an ASoC level cache. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm_hubs: Fix routing of input PGAs to line output mixerMark Brown2012-01-311-4/+4
| | | | | | | | IN1L/R is routed to both line output mixers, we don't route IN1 to LINEOUT1 and IN2 to LINEOUT2. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm_hubs: fix wrong bits for LINEOUT2 N/P mixerUK KIM2012-01-271-2/+2
| | | | | | Signed-off-by: UK KIM <w0806.kim@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm_hubs: Enable line out VMID buffer for single ended line outputsMark Brown2012-01-261-0/+6
| | | | | | | | For optimal performance the single ended line outputs require that the line output VMID buffer be enabled. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm5100: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-0/+1
| | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8962: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-1/+1
| | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8996: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-1/+1
| | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm5100: Fix microphone configurationMark Brown2012-01-251-1/+8
| | | | | | | | We need to write the configuration for each microphone to a different register. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
* ASoC: wm5100: Make sure we switch to button reporting modeMark Brown2012-01-251-0/+2
| | | | | | | | When we have identified an accessory make sure we've flagged that we've done so in order to make sure we always report buttons and don't continue to polarity flip. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm2000: Fix use-after-free - don't release_firmware() twice on errorJesper Juhl2012-01-241-18/+13
| | | | | | | | | | | | | | | | | | | | | | | | | In wm2000_i2c_probe(), if we take the true branch in " ret = snd_soc_register_codec(&i2c->dev, &soc_codec_dev_wm2000, NULL, 0); if (ret != 0) goto err_fw; " then we'll release_firmware(fw) at the 'err_fw' label. But we've already done that just a few lines above. That's a use-after-free bug. This patch restructures the code so that we always call release_firmware(fw) before leaving the function, but only ever call it once. This means that we have to initialize 'fw' to NULL since some paths may now end up calling it without having called request_firmware(), but since request_firmware() deals gracefully with NULL pointers, we are fine if we just NULL initialize it. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8958: Use correct format string in dev_err() callJesper Juhl2012-01-231-1/+1
| | | | | | | To print a value of type size_t one should use %zd, not %d. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8996: Call _POST_PMU callback for CPVDDMark Brown2012-01-221-1/+2
| | | | | | | | We should be allowing a 5ms delay after the charge pump is started in order to ensure it has finished ramping. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Disable register synchronisation for low frequency WM8996 SYSCLKMark Brown2012-01-202-0/+8
| | | | | | | | | With a low frequency SYSCLK and a fast I2C clock register synchronisation may occasionally take too long to take effect, causing I/O issues. Disable synchronisation in order to avoid any issues. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Don't go through cache when applying WM5100 rev A updatesMark Brown2012-01-201-0/+2
| | | | | | | | | These are all to either uncached registers or fixes to register defaults, in the former case the cache won't do anything and in the latter case we're fixing things so the cache sync will do the right thing. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Mark WM5100 register map cache only when going into BIAS_OFFMark Brown2012-01-201-0/+1
| | | | | | | | Writing to the registers won't work if we do actually manage to hit a fully powered off state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: tlv320aic32x4: always enable analouge blockWolfram Sang2012-01-201-3/+5
| | | | | | | | | Register LDOCTLEN must always be initialized to clear the analog power control bit, otherwise the analog block will stay deactivated. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Javier Martin <javier.martin@vista-silicon.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: tlv320aic32x4: always enable dividersWolfram Sang2012-01-201-56/+46
| | | | | | | | | | Dividers (such as MDAC) are always needed, independent of the codec being I2S master or slave. Needed on a custom board where the codec has to be slave. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Javier Martin <javier.martin@vista-silicon.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: sgtl5000: Fix wrong register name in restoreZeng Zhaoming2012-01-201-4/+13
| | | | | | | | | | | Correct SGTL5000_CHIP_CLK_CTRL to SGTL5000_CHIP_REF_CTRL in sgtl5000_restore_regs(), and add comment to explain the restore order. Reported-by: Julia Lawall <julia.lawall@lip6.fr> Signed-off-by: Zeng Zhaoming <zengzm.kernel@gmail.com> Acked-by: Dong Aisheng <dong.aisheng@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge branch 'fix/asoc' of ↵Linus Torvalds2012-01-182-1/+7
|\ | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound * 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: ASoC: Wait for WM8993 FLL to stabilise ASoC: core - Free platform DAPM context at platform removal. ASoC: dapm - Fix check for codec context in dapm_power_widgets(). ASoC: sgtl5000: update author email address ASoC: Fix DMA channel leak in imx-pcm-dma-mx2 driver.
| * ASoC: Wait for WM8993 FLL to stabiliseMark Brown2012-01-171-0/+6
| | | | | | | | | | | | Ensure the FLL is locked before we return from set_fll(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: sgtl5000: update author email addressZeng Zhaoming2012-01-161-1/+1
| | | | | | | | | | | | | | Update MODULE_AUTHOR email address. Signed-off-by: Zeng Zhaoming <zengzm.kernel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-linus' of ↵Linus Torvalds2012-01-12110-7573/+8378
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (526 commits) ASoC: twl6040 - Add method to query optimum PDM_DL1 gain ALSA: hda - Fix the lost power-setup of seconary pins after PM resume ALSA: usb-audio: add Yamaha MOX6/MOX8 support ALSA: virtuoso: add S/PDIF input support for all Xonars ALSA: ice1724 - Support for ooAoo SQ210a ALSA: ice1724 - Allow card info based on model only ALSA: ice1724 - Create capture pcm only for ADC-enabled configurations ALSA: hdspm - Provide unique driver id based on card serial ASoC: Dynamically allocate the rtd device for a non-empty release() ASoC: Fix recursive dependency due to select ATMEL_SSC in SND_ATMEL_SOC_SSC ALSA: hda - Fix the detection of "Loopback Mixing" control for VIA codecs ALSA: hda - Return the error from get_wcaps_type() for invalid NIDs ALSA: hda - Use auto-parser for HP laptops with cx20459 codec ALSA: asihpi - Fix potential Oops in snd_asihpi_cmode_info() ALSA: hdsp - Fix potential Oops in snd_hdsp_info_pref_sync_ref() ALSA: hda/cirrus - support for iMac12,2 model ASoC: cx20442: add bias control over a platform provided regulator ALSA: usb-audio - Avoid flood of frame-active debug messages ALSA: snd-usb-us122l: Delete calls to preempt_disable mfd: Put WM8994 into cache only mode when suspending ... Fix up trivial conflicts in: - arch/arm/mach-s3c64xx/mach-crag6410.c: renamed speyside_wm8962 to tobermory, added littlemill right next to it - drivers/base/regmap/{regcache.c,regmap.c}: duplicate diff that had already come in with other changes in the regmap tree
| * \ Merge branch 'for-3.3' of ↵Takashi Iwai2012-01-113-2/+70
| |\ \ | | |/ | |/| | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc into topic/asoc
| | * ASoC: twl6040 - Add method to query optimum PDM_DL1 gainLiam Girdwood2012-01-112-0/+24
| | | | | | | | | | | | | | | | | | | | | The DL1 PDM interface adds a little gain depending on the output device. Add a method to retrieve the gain value for machine driver usage. Signed-off-by: Liam Girdwood <lrg@ti.com>
| | * ASoC: cx20442: add bias control over a platform provided regulatorJanusz Krzysztofik2012-01-091-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * | ASoC: sta32x: Optimize the array work to find rate_min and rate_maxAxel Lin2012-01-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For a given ir and fs, there is at most one possible match for the case mclk_ratios[ir][j].ratio * fs == freq. Thus we can break from the inner loop once a match is found. Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Johannes Stezenbach <js@sig21.net> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix return value of wm8580_set_sysclk()Axel Lin2012-01-021-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | We can't just pass back the return value of snd_soc_update_bits() as it will be 1 if a bit changed rather than zero. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix return value of wm8903_gpio_direction_in() and ↵Axel Lin2012-01-021-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wm8903_gpio_direction_out() We can't just pass back the return value of snd_soc_update_bits() as it will be 1 if a bit changed rather than zero. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix return value of wm8962_gpio_direction_out()Axel Lin2012-01-021-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | We can't just pass back the return value of snd_soc_update_bits() as it will be 1 if a bit changed rather than zero. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Fix return value of ak4641_pcm_set_dai_fmt()Axel Lin2012-01-021-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | We can't just pass back the return value of snd_soc_update_bits() as it will be 1 if a bit changed rather than zero. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert tpa6130a2 to devm_kzalloc()Axel Lin2012-01-021-4/+1
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert tlv320dac33 to devm_kzalloc()Axel Lin2012-01-021-4/+2
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert cs4270 to devm_kzalloc()Axel Lin2012-01-021-4/+2
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert alc5623 to devm_kzalloc()Axel Lin2012-01-021-8/+3
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert tlv320aic3x to devm_kzalloc()Axel Lin2012-01-021-4/+1
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert tlv320aic26 to devm_kzalloc()Axel Lin2012-01-021-7/+1
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert tlv320aic23 to devm_kzalloc()Axel Lin2012-01-021-4/+1
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert sta32x to devm_kzalloc()Axel Lin2012-01-021-9/+4
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert ssm2602 to devm_kzalloc()Axel Lin2012-01-021-8/+4
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert rt5631 to devm_kzalloc()Axel Lin2012-01-021-5/+2
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert max9850 to devm_kzalloc()Axel Lin2012-01-021-4/+2
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Convert max98095 to devm_kzalloc()Axel Lin2012-01-021-5/+2
| | | | | | | | | | | | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
OpenPOWER on IntegriCloud