summaryrefslogtreecommitdiff
path: root/sound/soc
AgeCommit message (Collapse)AuthorFilesLines
2010-08-20ASoC: Add support for tlv320aic3007 to tlv320aic3x codec.Randolph Chung2-10/+71
This patch adds support for the tlv320aic3007 codec to the tlv320aic3x driver. The tlv320aic3007 is similar to the aic31, but has an additional class-D speaker amp. The speaker amp control register overlaps with the mono output register of other codecs in this family, so we add logic to identify the actual codec being registered to set things up accordingly. Signed-off-by: Randolph Chung <tausq@parisc-linux.org> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-20ASoC: add support for separate codec DAIs to the fsl_dma driverTimur Tabi1-13/+21
Some codecs have separate DAIs for playback and capture, so the DMA driver should allocate a DMA buffer only for the streams that are valid when the driver is opened. Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-20ASoC: e740_wm9705 - free gpio in e740_exit()Axel Lin1-0/+3
In e740_init(), we call gpio_request() for GPIO_E740_MIC_ON, GPIO_E740_AMP_ON and GPIO_E740_WM9705_nAVDD2. We should free the these gpio accordingly in e740_exit(). Signed-off-by: Axel Lin <axel.lin@gmail.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-19ASoC: Use a more adequate name for the CX20442 codec DAIJanusz Krzysztofik2-2/+2
In the process of unification of codec DAI names while implementing multi-component, the CX20442 codec DAI has been renamed to "cx20442-hifi". This new name seems not adequate for a 8kHz voice codec. Use a better name, "cx20442-voice", as suggested by Liam Girdwood. Signed-off-by: Janusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-19ASoC: Configure symmetric rates for tlv320aic3xRandolph Chung1-0/+1
The tlv320aic3x codec driver only supports symmetric rates for capture/ playback. Set the flag in the DAI accordingly. Signed-off-by: Randolph Chung <tausq@parisc-linux.org> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-18ASoC: add saarb machine driver for 88pm860xHaojian Zhuang3-0/+211
88PM860x codec is used in Marvell saarb development board. 88PM860x codec is used as master mode for SSP communication. Only I2S format is supported. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-18ASoC: add tavorevb3 machine driver for 88pm860xHaojian Zhuang3-0/+211
Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-18ASoC: add 88pm860x codec driverHaojian Zhuang4-0/+1589
Add 88PM860x codec driver. 88PM860x codec supports two interfaces. And it also supports headset/mic/hook/short detection. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-18ASoC: Add simplfied device registration for Atmel SSC devicesMark Brown3-3/+62
Since the SSC is already being registered as a device under arch and the DMA and SSC hardware are pretty much the same provide a simplified device registration function for the Atmel SSC which will add the ASoC-specific devices within the ASoC code, parenting the SSC device off the actual SSC device. Also use it in the sam9g20-ek driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-18ASoC: Fix device name for AT91SAM9G20-EK devicesMark Brown1-2/+2
A couple of typos in the multi-component conversion. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-18ASoC: Support non-crystal master clocks for WM8731Mark Brown6-7/+36
Instead of unconditionally enabling the crystal oscillator on the WM8731 only enable it when explicitly selected via set_sysclk(), allowing machine drivers to specify that they drive a clock into MCLK alone. This avoids any conflicts between the oscillator and the external MCLK source and saves power for systems which do not need the oscillator. This should also deliver a small power saving on systems using the crystal since the oscillator will only be enabled when the ADC or DAC is active. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-18ASoC: core - fix build warning on x86_64Liam Girdwood1-1/+1
Output size_t type as a "%Zu" to avoid warnings. Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-18ASoC: Fix a few more PXA build errorsMark Brown3-3/+1
Dead pxa2xx-pcm.h includes and a missing , Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-17ASoC: Multi-component: JZ4740: QI_LB60 board fixesLars-Peter Clausen1-6/+1
This patch contains two small fixes for the sound board driver for the qi_lb60 introduced by the multi-component patches: * Remove unnecessary includes: Those includes where only used to get the definitions for the DAI devices and are thus not needed anymore. * Fix a typo. Signed-off-By: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-17ASoC: Remove unused WM8974 private dataMark Brown1-1/+0
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-16ASoC: Fix argument ordering for snd_soc_update_bits() in WM8580Mark Brown1-1/+1
Reported-by: Seungwhan Youn <claude.youn@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-16ASoC: Fix WM8580 CLKSEL mask selectionMark Brown1-2/+2
The RX and TX directions were inverted. Reported-by: Seungwhan Youn <claude.youn@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-16Merge branch 'for-2.6.36' into for-2.6.37Mark Brown6-18/+25
Fairly simple conflicts, the most serious ones are the i.MX ones which I suspect now need another rename. Conflicts: arch/arm/mach-mx2/clock_imx27.c arch/arm/mach-mx2/devices.c arch/arm/mach-omap2/board-rx51-peripherals.c arch/arm/mach-omap2/board-zoom2.c sound/soc/fsl/mpc5200_dma.c sound/soc/fsl/mpc5200_dma.h sound/soc/fsl/mpc8610_hpcd.c sound/soc/pxa/spitz.c
2010-08-16ASoC: Remove DSP mode support for WM8776Mark Brown1-7/+0
This is not supported by current hardware revisions. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Cc: stable@kernel.org
2010-08-15Merge branch 'for-linus' of ↵Linus Torvalds1-8/+15
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: sound/usb/format: silence uninitialized variable warnings MAINTAINERS: Add Ian Lartey as comaintaner for Wolfson devices MAINTAINERS: Make Wolfson entry also cover CODEC drivers ASoC: Only tweak WM8994 chip configuration on devices up to rev D ASoC: Optimise DSP performance for WM8994 ALSA: hda - Fix dynamic ADC change working again ALSA: hda - Restrict PCM parameters per ELD information over HDMI sound: oss: sh_dac_audio.c removed duplicated #include
2010-08-15Merge branch 'for-2.6.36' of ↵Mark Brown8-17/+54
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into for-2.6.37 Trivial overlap with the removal of the local revision variable. Conflicts: sound/soc/codecs/wm8994.c
2010-08-15ASoC: Automatically manage WM8580 DAC OSRMark Brown1-1/+19
The DAC OSR should be selected based on the sample clock ratio. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Fix inverted WM8580 capture mute controlMark Brown1-1/+1
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Implement BCLK rate selection for WM8580Mark Brown1-1/+6
Drive a minimal supported number of clocks required for the current bit format in master mode. In slave mode this setting has no effect. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Automatically calculate clock ratio for WM8580Mark Brown3-34/+90
Implement set_sysclk() and then rather than assuming 256fs use the supplied value to calculate and configure the clock ratio for the currently used sample rate. As a side effect we also end up implementing clock selection for the ADC path. In order to avoid confusion remove the existing set_clkdiv() based configuration of the clock source for the DAC and update the SMDK64xx driver (which is the only in-tree user of the CODEC). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Remove unused rate selection bitmasks from WM8580Mark Brown1-12/+0
In the case of the BCLK rate the defines are at best misleading anyway. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Convert WM8580 hw_params to use snd_soc_update_bits()Mark Brown1-3/+3
All the cool kids are using snd_soc_update_bits() these days. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Add a bit of resource unwinding in the S3C IISv4 driverMark Brown1-0/+11
There's much more needed but this'll get us started. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: update setting for pxa ssp slave modeHaojian Zhuang1-8/+15
SCFR bit is required to be always set if pxa ssp is in slave mode. This bit indicates clock input to SSPSCLK is only active during data transfers. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-15ASoC: fix pxa2xx-pcm.h pathHaojian Zhuang2-2/+1
Since pxa2xx-pcm.h is removed from sound/soc/pxa, we need to update the path in related files. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Tested-by: Ian Lartey <ian@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-15ASoC: multi-component: Fix reference to moved header file, which was unused ↵Ian Lartey1-1/+0
anyway. Removed #include of pxa2xx-pcm.h Signed-off-by: Ian Lartey <ian@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-15ASoC: Remove redundant device name from debugfs directoryMark Brown1-10/+1
Since the core now includes deduplication in the name of CODEC devices there's no need to add extra for the debugfs directory name. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15ASoC: Set up debugfs only once per CODECMark Brown1-2/+3
Since the debugfs directory is current per CODEC we should only init it when the CODEC is initialised, otherwise we end up with errors being generated when an attempt is made to add duplicate debugfs entries. Since most of this stuff is actually for the card we should refactor but this can come later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-15Merge branch 'fix/asoc' into for-linusTakashi Iwai1-8/+15
2010-08-13ASoC: Only tweak WM8994 chip configuration on devices up to rev DMark Brown1-7/+13
Any subsequent revisions will have these configuration changes applied by default. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-13ASoC: Optimise DSP performance for WM8994Mark Brown1-2/+3
Change the chip defaults to optimise performance of some of the DSP functionality. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12Merge branch 'for-linus' of ↵Linus Torvalds7-9/+38
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ASoC: add AD1980 obsolete information ASoC: register cache should be 1 byte aligned for 1 byte long register ALSA: hda - Adding support for new IDT 92HD87XX codecs ASoC: Fix inverted mute controls for WM8580 ALSA: HDA: Use model=auto for LG R510 ALSA: hda - Update model entries in HD-Audio-Models.txt ALSA: hda: document VIA models ALSA: hda - patch_nvhdmi.c: Add missing codec IDs, unify names ALSA: hda - add support for Conexant CX20584 ALSA: hda - New snd-hda-intel model/pin config for hp dv7-4000 ALSA: hda - Fix missing stream for second ADC on Realtek ALC260 HDA codec ALSA: hda - Make converter setups sticky ALSA: hda - Add support for Acer ZGA ALC271 (1025:047c) sound/oss: Adjust confusing if indentation sound: oss: au1550_ac97.c removed duplicated #include ASoC: Fix for changed Eureka Kconfig symbol names
2010-08-12Merge branch 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds5-10/+10
* 'next-devicetree' of git://git.secretlab.ca/git/linux-2.6: mmc_spi: Fix unterminated of_match_table of/sparc: fix build regression from of_device changes of/device: Replace struct of_device with struct platform_device
2010-08-12ASoC: Remove unused driver data from WM8961 probeMark Brown1-1/+0
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Staticise WM8727 codec driver structureMark Brown1-1/+1
Nothing should be referencing this any more. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Update WM8962 to build with multi-componentMark Brown2-124/+47
No notable changes, currently build tested only. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2010-08-12Merge branch 'topic/multi-component' of ↵Mark Brown303-13162/+8631
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into for-2.6.37
2010-08-12ASoC: multi-component: TWL4030: Restore registers on removalPeter Ujfalusi1-0/+2
Add back the register restore call, when the codec driver is removed. This does not affect normal operation, but it is usefull when debugging audio through the twl4030 class codecs. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Automatically determine control_data for soc-cache usersMark Brown1-0/+8
Since the provision of a struct device for the CODEC is now mandatory we can use container_of() to locate the struct i2c_client and struct spi_device for relevant devices, removing the need to manually set it in each driver. A further patch will automate selection of the control type based on the bus_type of the struct device, further reducing the amount of driver code required. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Add MODULE_ALIAS to Samsung DAI driversMark Brown7-0/+7
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Remove version display from WM8971 driverMark Brown1-4/+0
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Remove unneeded control_data management from Wolfson driversMark Brown19-68/+1
Now soc-cache.c can figure out the I2C and SPI control data from the device for the CODEC we don't need to manually assign it in drivers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12ASoC: Remove version display from WM8510 driverMark Brown1-4/+0
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12asoc/multi-component: fsl: add support for disabled SSI nodesTimur Tabi1-3/+10
Add support for adding "status = disabled" to an SSI node to incidate that it is not wired on the board. This replaces the not-so-intuitive previous method of omitting a codec-handle property. Signed-off-by: Timur Tabi <timur@freescale.com> Acked-by: Kumar Gala <galak@kernel.crashing.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
2010-08-12asoc/multi-component: fsl: fix exit and error paths in DMA and SSI driversTimur Tabi2-29/+23
The error handling code in the OF probe function of the SSI driver is not freeing all resources correctly. Since the machine driver no longer calls the DMA driver to provide information about the SSI, we don't need to keep a list of DMA objects any more. In addition, the fsl_soc_dma_remove() function is incorrectly removing *all* DMA objects when it should only remove one. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>