summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: Convert DA7210 to table based DAPM initMark Brown2011-10-141-3/+3
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: tlv320aic32x4: Use snd_soc_update_bits for read-modify-writeAxel Lin2011-10-131-37/+24Star
| | | | | | | | Use snd_soc_update_bits for read-modify-write register access instead of open-coding it using snd_soc_read and snd_soc_write. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Rename the Earphone Driver event handlerPeter Ujfalusi2011-10-131-2/+2
| | | | | | | | Since the event handler is only used by the Earphone Driver, it is better to rename it from twl6040_power_mode_event to twl6040_ep_drv_event. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Change event ordering for Earphone driverPeter Ujfalusi2011-10-131-1/+1
| | | | | | | | | | It is better to switch HS Power Mode (if it was in low power mode) before we enable the Earpiece driver. The switched off EP driver can filter out noise coming from the Low Power to High Performance transition on the HSL DAC. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Remove PLL usage restrictionsPeter Ujfalusi2011-10-131-31/+9Star
| | | | | | | | | There is no limitation dictated by outputs or inputs regarding to the selected PLL (LP/HP). Remove the checks for this, and allow all path with any PLL configuration. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Remove Capture restriction for 17.64MHz sysclkPeter Ujfalusi2011-10-131-7/+0Star
| | | | | | | Capture is supported in all PLL configuration. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Update WM5100 accessory detection for revision AMark Brown2011-10-132-0/+10
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ak4535: fixup cache register tableAxel Lin2011-10-131-5/+5
| | | | | | | | ak4535_reg should be 8bit, but cache table is defined as 16bit. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: ak4642: fixup cache register tableKuninori Morimoto2011-10-131-11/+11
| | | | | | | | | ak4642 register was 8bit, but cache table was defined as 16bit. ak4642 doesn't work correctry without this patch. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: sta32x: Write the register default value to cache for reserved registersAxel Lin2011-10-131-15/+13Star
| | | | | | | | | | | | | | Chip documentation explicitly requires that the reset values of reserved register bits are left untouched. codec->hw_read is broken now. Here we use below trick to avoid writing to reserved registers while resume. Write the register default value to cache for reserved registers, so the write to the these registers are suppressed by the cache restore code when it skips writes of default registers. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: sta32x: Set reg_cache_default to sta32x_regsAxel Lin2011-10-131-4/+1Star
| | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: pxa: Remove redundant snd_soc_dapm_sync() calls from machine driversAxel Lin2011-10-132-2/+0Star
| | | | | | | | The core will sync DAPM as part of the card initialization, there is no need for machine drivers to do so during their setup. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Make SND_SOC_SAARB and SND_SOC_TAVOREVB3 select MFD_88PM860XAxel Lin2011-10-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In saarb_pm860x_init() and evb3_pm860x_init(), we call pm860x_hs_jack_detect() and pm860x_mic_jack_detect() which in turn calls pm860x_set_bits(). Thus make SND_SOC_SAARB and SND_SOC_TAVOREVB3 select MFD_88PM860X. This patch fixes below build error if CONFIG_MFD_88PM860X is not configured. LD .tmp_vmlinux1 sound/built-in.o: In function `pm860x_write_reg_cache': last.c:(.text+0x29e9c): undefined reference to `pm860x_reg_write' sound/built-in.o: In function `pm860x_set_bias_level': last.c:(.text+0x29ecc): undefined reference to `pm860x_set_bits' last.c:(.text+0x29f00): undefined reference to `pm860x_reg_write' last.c:(.text+0x29f18): undefined reference to `pm860x_reg_write' sound/built-in.o: In function `pm860x_read_reg_cache': last.c:(.text+0x29f40): undefined reference to `pm860x_reg_read' sound/built-in.o: In function `pm860x_probe': last.c:(.text+0x2a034): undefined reference to `pm860x_bulk_read' sound/built-in.o: In function `pm860x_codec_handler': last.c:(.text+0x2a344): undefined reference to `pm860x_reg_read' last.c:(.text+0x2a354): undefined reference to `pm860x_reg_read' sound/built-in.o: In function `pm860x_mic_jack_detect': last.c:(.text+0x2a450): undefined reference to `pm860x_set_bits' sound/built-in.o: In function `pm860x_hs_jack_detect': last.c:(.text+0x2a4d0): undefined reference to `pm860x_set_bits' last.c:(.text+0x2a4f8): undefined reference to `pm860x_set_bits' last.c:(.text+0x2a510): undefined reference to `pm860x_set_bits' make: *** [.tmp_vmlinux1] Error 1 Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: da7210: Add support for other DAI word lengths, format and modeAshish Chavan2011-10-121-1/+22
| | | | | | | | | | | This patchs adds support for following, (1) DAI 20 and 32 bit word sizes (2) DAI left and right justified formats (3) DAI slave mode Signed-off-by: Ashish Chavan <ashish.chavan@kpitcummins.com> Signed-off-by: David Dajun Chen <dchen@diasemi.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Workaround for headset DC offset caused pop noisePeter Ujfalusi2011-10-122-8/+29
| | | | | | | | | | Both Headset DAC need to be turned on/off at the same time before any of the output drivers are enabled (HS Left/Right, Earpiece). Move the HS DAC enable code to sequenced DAPM_SUPPLY, and attach it to the DACs. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Support for vibra output pathsPeter Ujfalusi2011-10-121-0/+72
| | | | | | | | | | | | | | | | | twl6040 have two vibra output drivers. They can be operated with audio stream coming through the PDM interface (fifth channel). The vibra outputs can be controlled via the input/FF driver as well. Selection between the two mode is implemented within the codec driver, the input/FF driver can only operate if the routing is set to "Input FF". Changing from "Input FF" to "Audio PDM" mode is protected as well: The switchin can only be done, if there is no running effect from the input/FF. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Input: twl6040-vibra: Check the selected path for vibraPeter Ujfalusi2011-10-121-0/+7
| | | | | | | | | | | The VIBSELL/R bit in the VIBCTLL/R register tells the source of the data, which is going to be used to drive the attached motor(s). Do not allow effect execution if any of the channels are set to receive audio data. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* MFD: twl6040: function to query the vibra status for clientsPeter Ujfalusi2011-10-122-0/+15
| | | | | | | | | | | | If the client only interested, if any of the vibra channels enabled, or if any of the channels are set to receive audio data via PDM. This function targets mainly the vibra driver, so it can check if it is allowed to execute effects ot not. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Samuel Ortiz <samuel.ortiz@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* MFD: twl6040: Cache the vibra control registersPeter Ujfalusi2011-10-122-4/+16
| | | | | | | | | | | The vibra control register will be used from the ASoC codec driver as well. In order to avoid latency issues caused by I2C read access, cache the two control register within the core driver, so we do not need to reach out to the chip to read it back. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Samuel Ortiz <samuel.ortiz@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Input: twl6040: Simplify vibra regsiter definitionsPeter Ujfalusi2011-10-122-19/+13Star
| | | | | | | | | | | The bits within the two control registers (for left and right channel) are identical. Use common names for the bits acros the two register. Also add the missing definition for the path selection bit. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Dmitry Torokhov <dtor@mail.ru> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: da7210: convert to soc-cacheAxel Lin2011-10-121-78/+45Star
| | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Remove impossible case from wm8994_hw_paramsAxel Lin2011-10-121-10/+0Star
| | | | | | | | We set hw_params callback for wm8994_aif3_dai_ops to wm8994_aif3_hw_params. Thus no need to check wm8994-aif3 in wm8994_hw_params. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Delete ads117x.hAxel Lin2011-10-121-13/+0Star
| | | | | | | This is not required after multi-component patch. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ak4642: convert to soc-cacheAxel Lin2011-10-121-70/+12Star
| | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Instantiate card widgets immediatelyMark Brown2011-10-111-0/+2
| | | | | | This ensures they are available prior to the card late_probe(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Implement WM5100 accessory detection supportMark Brown2011-10-112-0/+164
| | | | | | | | | The WM5100 includes an advanced, low power, accessory detect subsystem capable of detecting both accessory presence and button presses while the device is in an ultra low power mode. Implement initial support for this. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add missing default for WM5100 Clocking 1Mark Brown2011-10-111-0/+1
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix typo in Kconfig symbol for tlv320aic32x4Wolfram Sang2011-10-113-4/+4
| | | | | | | | | | It is currently named "TVL" instead of "TLV". Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Cc: Javier Martin <javier.martin@vista-silicon.com> Cc: Liam Girdwood <lrg@ti.com> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: tlv320dac33: Convert to table based initPeter Ujfalusi2011-10-111-16/+7Star
| | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl4030: Convert to table based initPeter Ujfalusi2011-10-111-14/+7Star
| | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl6040: Convert to table based initPeter Ujfalusi2011-10-111-21/+10Star
| | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Writing register default value for the reset registerAxel Lin2011-10-111-1/+1
| | | | | | | | | | | | | The WM8983 can be reset by performing a write of any value to the software reset register. To avoid writing to the software reset register while resume, we should write the same value in wm8983_reg_defs to software reset register in wm8983_probe(). The write to the reset register is suppressed by the cache restore code when it skips writes of default registers. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert Goni to data based DAPM initMark Brown2011-10-111-8/+5Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
* ASoC: sdp3430: Let core to deal with the DAPM widgetsPeter Ujfalusi2011-10-101-9/+5Star
| | | | | | | | | Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: osk5912: Let core to deal with the DAPM widgetsPeter Ujfalusi2011-10-101-20/+5Star
| | | | | | | | | | Pass the DAPM widgets/routes via the snd_soc_card struct to core. With this change we do not need the init function since the remaining snd_soc_dapm_enable_pin calls are not needed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: n810: Let the core to register DAPM widgets/routes and controlsPeter Ujfalusi2011-10-101-13/+8Star
| | | | | | | | | | Pass the DAPM widgets/routes and static controls via the snd_soc_card struct to core. In this way the machine driver does not need to handle the DAPM widgets/routes. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Jarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: am3517evm: Let core to deal with the DAPM widgetsPeter Ujfalusi2011-10-101-21/+5Star
| | | | | | | | | | | Pass the DAPM widgets/routes via the snd_soc_card struct to core. With this change we do not need the init function since the remaining snd_soc_dapm_enable_pin calls are not needed. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: sdp4430: No need to call dapm_pin_enable at init timePeter Ujfalusi2011-10-101-9/+0Star
| | | | | | | | Widgets are connected by default. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: sdp4430: Let core to deal with the DAPM widgetsPeter Ujfalusi2011-10-101-9/+5Star
| | | | | | | | | Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: zoom2: No need to call dapm_pin_enable at init timePeter Ujfalusi2011-10-101-7/+0Star
| | | | | | | | Widgets are connected by default. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: zoom2: Let core to deal with the DAPM widgetsPeter Ujfalusi2011-10-101-10/+5Star
| | | | | | | | | Pass the DAPM widgets/routes via the snd_soc_card struct to core. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: OMAP machines: Remove soc_dapm_sync() call from initPeter Ujfalusi2011-10-109-29/+4Star
| | | | | | | | | | | | No need to call soc_dapm_sync at init time. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Cc: Anuj Aggarwal <anuj.aggarwal@ti.com> Cc: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl> Cc: Jarkko Nikula <jarkko.nikula@bitmer.com> Cc: GraÅžvydas Ignotas <notasas@gmail.com> Cc: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert Jive to table based initMark Brown2011-10-101-11/+5Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com>
* ASoC: Convert SMDK WM8580 to table based DAPM initMark Brown2011-10-101-32/+7Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com>
* ASoC: Convert SmartQ to table based initMark Brown2011-10-101-14/+7Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com>
* ASoC: Convert RX1950 to table based initMark Brown2011-10-101-20/+11Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com>
* ASoC: Convert H1940 to table based initMark Brown2011-10-101-12/+5Star
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Sangbeom Kim <sbkim73@samsung.com>
* ASoC: Convert Simtec machines to table based DAPM initMark Brown2011-10-102-10/+10
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: fix checkpatch.pl error in omap-mcbspMichael Opdenacker2011-10-101-2/+1Star
| | | | | | Signed-off-by: Michael Opdenacker <michael.opdenacker@linaro.org> Acked-by: Jarkko Nikula <jarkko.nikula@bitmer.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ak4535: convert to soc-cacheAxel Lin2011-10-101-82/+18Star
| | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>