aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
Commit message (Collapse)AuthorAgeFilesLines
* fixed enabling/disabling voice interface for hw/sw routingH. Nikolaus Schaller2013-11-141-4/+17
| | | | Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
* use twl4030_voice_set_tristate() for tristating the TWL4030 voice PCMH. Nikolaus Schaller2013-11-131-18/+30
| | | | Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
* This is now Linux-3.12.0 for the GTA04!H. Nikolaus Schaller2013-11-041-0/+1
|\ | | | | | | Merge remote-tracking branch 'linus/master'
| * ASoC: wm_hubs: Add missing break in hp_supply_event()Takashi Iwai2013-10-301-0/+1
| | | | | | | | | | | | | | | | Spotted by coverity CID 115170. Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
* | Merge remote-tracking branch 'linus/master' into 3.12-rc7H. Nikolaus Schaller2013-10-283-2/+6
|\ \ | |/
| * Merge remote-tracking branch 'asoc/fix/tlv320aic3x' into asoc-linusMark Brown2013-10-181-0/+4
| |\
| | * ASoC: tlv320aic3x: Connect 'Left Line1R Mux' and 'Right Line1L Mux'Peter Ujfalusi2013-10-071-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The two paths were not connected in the DAPM route causing the associated routes to be non working and the following warnings printed in the logs: tlv320aic3x-codec 0-001b: ASoC: mux Right Line1L Mux has no paths tlv320aic3x-codec 0-001b: ASoC: mux Left Line1R Mux has no paths Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | ASoC: pcm1792a: Fix max_register settingAxel Lin2013-10-141-1/+1
| | | | | | | | | | | | | | | | | | | | | According to the datasheet, the max_register is register 23. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | ASoC: pcm1681: Fix max_register settingAxel Lin2013-10-141-1/+1
| |/ | | | | | | | | | | | | | | According to the datasheet, the max_register is 13h. ARRAY_SIZE(pcm1681_reg_defaults) + 1 is 18 which is wrong. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Mark Brown <broonie@linaro.org>
* | Merge branch 'linus' (3.12-rc4) into 3.12-wipH. Nikolaus Schaller2013-10-073-3/+11
|\ \ | |/
| * Merge remote-tracking branch 'asoc/fix/max98095' into asoc-linusMark Brown2013-09-271-2/+2
| |\
| | * ASoC: max98095: a couple array underflowsDan Carpenter2013-09-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ->put() function are called from snd_ctl_elem_write() with user supplied data. The limit checks here could underflow leading to a crash. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
| * | Merge remote-tracking branch 'asoc/fix/ab8500' into asoc-linusMark Brown2013-09-271-1/+6
| |\ \
| | * | ASoC: ab8500-codec: info leak in anc_status_control_put()Dan Carpenter2013-09-131-1/+6
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | If the user passes an invalid value it leads to an info leak when we print the error message or it could oops. This is called with user supplied data from snd_ctl_elem_write(). Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
| * | Merge remote-tracking branch 'asoc/fix/88pm860x' into asoc-linusMark Brown2013-09-271-0/+3
| |\ \
| | * | ASoC: 88pm860x: array overflow in snd_soc_put_volsw_2r_st()Dan Carpenter2013-09-131-0/+3
| | |/ | | | | | | | | | | | | | | | | | | | | | | | | This is called from snd_ctl_elem_write() with user supplied data so we need to add some bounds checking. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
* | | Merge remote-tracking branch 'linus/master' into 3.12-wipH. Nikolaus Schaller2013-09-142-1/+5
|\ \ \ | |/ /
| * | Remove GENERIC_HARDIRQ config optionMartin Schwidefsky2013-09-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | After the last architecture switched to generic hard irqs the config options HAVE_GENERIC_HARDIRQS & GENERIC_HARDIRQS and the related code for !CONFIG_GENERIC_HARDIRQS can be removed. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
| * | ASoC: mc13783: add spi errata fixSteffen Trumtrar2013-09-111-0/+4
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MC13783 Chip Errata, Rev. 4 says, that depending on SPI clock and main audio clock speed, the Audio Codec or Stereo DAC do sometimes not start when programmed to do so. This is due to an internal clock timing issue related to the loading of the SPI bits into the audio block. On an i.MX27 based system, this issue lead to switched audio channels under certain circumstances: RTC + Touch + Audio are used and loaded at startup. The mentioned workaround of writing registers 40 and 41 two times is implemented here. Signed-off-by: Steffen Trumtrar <s.trumtrar@pengutronix.de> Cc: stable@vger.kernel.org Signed-off-by: Mark Brown <broonie@linaro.org>
* | merge linus/master (3.12-rc0); fixed conflictsH. Nikolaus Schaller2013-09-1061-798/+3096
|\ \ | |/ | | | | Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
| * Merge remote-tracking branch 'asoc/topic/ssm2602' into tmpMark Brown2013-09-011-1/+2
| |\
| | * ASoC: ssm2602: Fix cache syncLars-Peter Clausen2013-08-311-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | The ssm2602 uses regmap for caching not soc-cache, so we need to use regcache_sync() instead of snd_soc_cache_sync(). Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | Merge remote-tracking branch 'asoc/topic/dapm' into tmpMark Brown2013-09-012-54/+175
| |\ \
| | * | ASoC: rt5640: change widget sequence for depopBard Liao2013-08-302-54/+175
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Bard Liao <bardliao@realtek.com> Tested-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | Merge remote-tracking branch 'asoc/topic/rt5640' into asoc-dapmMark Brown2013-08-301-26/+0
| | |\ \
| * | \ \ Merge remote-tracking branch 'asoc/topic/wm8904' into tmpMark Brown2013-08-301-1/+0
| |\ \ \ \
| | * | | | ASoC: wm8904: Remove unnecessary call to snd_soc_dapm_new_widgets()Lars-Peter Clausen2013-08-271-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The core will call snd_soc_dapm_new_widgets() once all components of the card have been initialized, so there is no need to do this manually in the driver. Calling it earlier also might result in a partially instantiated system being powered up which cause undesired side effects. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | Merge remote-tracking branch 'asoc/topic/core' into tmpMark Brown2013-08-302-28/+11
| |\ \ \ \ \
| | * \ \ \ \ Merge remote-tracking branch 'asoc/topic/dapm' into asoc-coreMark Brown2013-08-276-54/+23
| | |\ \ \ \ \ | | | | |/ / / | | | |/| | |
| | * | | | | Merge remote-tracking branch 'asoc/topic/tlv320aic32x4' into asoc-coreMark Brown2013-08-271-15/+7
| | |\ \ \ \ \
| | | * | | | | ASoC: tlv320aic32x4: Convert table based control and DAPM setupLars-Peter Clausen2013-08-271-15/+7
| | | | |_|_|/ | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let the core take care of instantiating the controls and DAPM widgets and routes, this makes the code a bit shorter. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | Merge remote-tracking branch 'asoc/topic/dmic' into asoc-coreMark Brown2013-08-278-37/+41
| | |\ \ \ \ \
| | | * | | | | ASoC: dmic: Convert table based DAPM setupLars-Peter Clausen2013-08-271-13/+4
| | | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let the core take care of instantiating the DAPM widgets and routes, this makes the code a bit shorter. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@linaro.org>
| * | | | | | Merge tag 'asoc-v3.12' of ↵Takashi Iwai2013-08-2361-741/+2948
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-next ASoC: Updates for v3.12 - DAPM is now mandatory for CODEC drivers in order to avoid the repeated regressions in the special cases for non-DAPM CODECs and make it easier to integrate with other components on boards. All existing drivers have had some level of DAPM support added. - A lot of cleanups in DAPM plus support for maintaining controls in a specific state while a DAPM widget all contributed by Lars-Peter Clausen. - Core helpers for bitbanged AC'97 reset from Markus Pargmann. - New drivers and support for Analog Devices ADAU1702 and ADAU1401(a), Asahi Kasei Microdevices AK4554, Atmel AT91ASM9x5 and WM8904 based machines, Freescale S/PDIF and SSI AC'97, Renesas R-Car SoCs, Samsung Exynos5420 SoCs, Texas Instruments PCM1681 and PCM1792A and Wolfson Microelectronics WM8997. - Support for building drivers that can support it cross-platform for compile test.
| | * \ \ \ \ \ Merge remote-tracking branch 'asoc/topic/wm8994' into asoc-nextMark Brown2013-08-221-15/+20
| | |\ \ \ \ \ \
| | | * | | | | | ASoC: wm8994: Fix class W controlsMark Brown2013-08-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 6e0650 (ASoC: wm8994: Use SOC_SINGLE_EXT() instead of open-coding it) went too far and converted a DAPM control to use SOC_SINGLE_EXT() which crashes. Revert that portion of the patch. Signed-off-by: Mark Brown <broonie@linaro.org>
| | | * | | | | | ASoC: wm8994: Use power efficient workqueueMark Brown2013-07-191-9/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The accessory detect debounce work is not performance sensitive so let the scheduler run it wherever is most efficient rather than in a per CPU workqueue by using the system power efficient workqueue. Signed-off-by: Mark Brown <broonie@linaro.org> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
| | | * | | | | | ASoC: wm8994: Move runtime PM init to platform device initMark Brown2013-07-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As well as being better style this allows the device to idle when there is no audio card instantaited which is probably what we want. Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | | | Merge remote-tracking branch 'asoc/topic/wm8962' into asoc-nextMark Brown2013-08-221-4/+3
| | |\ \ \ \ \ \ \
| | | * | | | | | | ASoC: wm8962: Use power efficient workqueueMark Brown2013-07-221-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The accessory detect debounce work is not performance sensitive so let the scheduler run it wherever is most efficient rather than in a per CPU workqueue by using the system power efficient workqueue. Signed-off-by: Mark Brown <broonie@linaro.org> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
| | | * | | | | | | ASoC: wm8962: Do not call configure_bclk() inside wm8962_set_dai_sysclk()Fabio Estevam2013-07-191-2/+0
| | | |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently after playing any audio file, we get the following error message: $ aplay clarinet.wav Playing WAVE 'clarinet.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo $ wm8962 0-001a: Unsupported sysclk ratio 544 This error message appears about 5 seconds after the audio playback has finished. Quoting Mark Brown [1]: "The issue here is triggered by the machine switching from the FLL to direct MCLK usage where the MCLK isn't generating a useful ratio. I suspect we should just kill the configure_bclk() in set_sysclk(), that one isn't safe as we can't reconfigure a live SYSCLK and it's probably the one that generates your warnings." Confirmed that the "Unsupported sysclk ratio" error message comes from wm8962_set_dai_sysclk(), so get rid of wm8962_configure_bclk() inside this function. [1] http://mailman.alsa-project.org/pipermail/alsa-devel/2013-July/064241.html Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | | | Merge remote-tracking branch 'asoc/topic/wm8960' into asoc-nextMark Brown2013-08-221-2/+2
| | |\ \ \ \ \ \ \
| | | * | | | | | | ASoC: wm8960: Fix ADC volume bitsMa Haijun2013-08-141-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Ma Haijun <mahaijuns@gmail.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | | | | Merge remote-tracking branch 'asoc/topic/wm8904' into asoc-nextMark Brown2013-08-221-1/+1
| | |\ \ \ \ \ \ \ \ | | | | |_|_|_|_|/ / | | | |/| | | | | |
| | | * | | | | | | ASoC: wm8904: fix the typo error for LINER MuxBo Shen2013-07-181-1/+1
| | | | |/ / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix the typo error, from "LINEL Mux" to "LINER Mux" Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | | | Merge remote-tracking branch 'asoc/topic/wm8782' into asoc-nextMark Brown2013-08-221-1/+16
| | |\ \ \ \ \ \ \
| | | * | | | | | | ASoC: wm8782: Add DAPM supportMark Brown2013-08-181-1/+16
| | | | |/ / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to make the device easier to hook up to external components in system designs and ensure operation when DAPM support becomes mandatory add DAPM support. Signed-off-by: Mark Brown <broonie@linaro.org>
| | * | | | | | | Merge remote-tracking branch 'asoc/topic/wm8753' into asoc-nextMark Brown2013-08-221-2/+3
| | |\ \ \ \ \ \ \
| | | * | | | | | | ASoC: wm8753: Use power efficient workqueueMark Brown2013-07-191-2/+3
| | | | |/ / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The work used to allow the capcitors to ramp is not performance sensitive so let the scheduler run it wherever is most efficient rather than in a per CPU workqueue by using the system power efficient workqueue. Signed-off-by: Mark Brown <broonie@linaro.org> Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
| | * | | | | | | Merge remote-tracking branch 'asoc/topic/wm8731' into asoc-nextMark Brown2013-08-221-3/+57
| | |\ \ \ \ \ \ \