aboutsummaryrefslogtreecommitdiffstats
path: root/sound
Commit message (Collapse)AuthorAge
* ASoC: Remove DAI type informationMark Brown2008-11-24
| | | | | | | | | | | DAI type information is only ever used within ASoC in order to special case AC97 and for diagnostic purposes. Since modern CPUs and codecs support multi function DAIs which can be configured for several modes it is more trouble than it's worth to maintain anything other than a flag identifying AC97 DAIs so remove the type field and replace it with an ac97_control flag. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add helper function for output gain controlsPeter Ujfalusi2008-11-24
| | | | | | | | | | | | | | Some of the gain controls in TWL (mostly those which are associated with the outputs) are implemented in an interesting way: 0x0 : Power down (mute) 0x1 : 6dB 0x2 : 0 dB 0x3 : -6 dB Inverting not going to help with these. Custom volsw and volsw_2r get/put functions to handle these gains. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add CGAIN volume controlPeter Ujfalusi2008-11-24
| | | | | | | | | Add CGAIN (Coarse gain control) to TWL4030 codec. The range of the CGAIN is: 0 dB to 12 dB in 6 dB steps. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Change the Master volume control to TLVPeter Ujfalusi2008-11-24
| | | | | | | | TWL4030 FGAIN volume control has a range: -62 to 0 dB in 1 dB steps, 0 in the FGAIN means mute. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Disable soft-volumePeter Ujfalusi2008-11-24
| | | | | | | | | | | | | | | | | | Keep Soft-volume disabled for now, since if it is enabled the FGAIN volume controls are not working in the current configuration: CODEC_MODE:OPT_MODE = 1 OPTION:ARXR2_EN = 1 OPTION:ARXL2_EN = 1 OPTION:ARXR1_EN = 0 OPTION:ARXL1_VRX_EN = 0 RX_PATH_SEL:RXL1_SEL = 0x0 (or 0x1) RX_PATH_SEL:RXR1_SEL = 0x0 (or 0x1) After the patch, FGAIN volume control works. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Use supplied DAI for WM9713 rather than substreamMark Brown2008-11-24
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Improve error reporting for AC97 reset failuresMark Brown2008-11-21
| | | | | | | Print something a bit more verbose to help make errors a little more obvious. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Staticise pxa2xx_pcm_opsMark Brown2008-11-21
| | | | | | It's not exported. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: OMAP: Fix preprocessor filled DAI name in McBSP DAIJarkko Nikula2008-11-21
| | | | | Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add Marvell Zylonite machine supportMark Brown2008-11-21
| | | | | | | | | | | | | Implement support for the Marvell Zylonite PXA3xx reference platform, supporting standard AC97 stereo and AUX interfaces together with the auxiliary I2S interface of the WM9713. The board has two options for the MCLK of the WM9713: either the standard AC97 system clock can be used or the 13MHz CLK_POUT output of the PXA3xx can be used, selected via SW15 on the board. Currently only the AC97 system clock is supported by this driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Merge snd_soc_ops into snd_soc_dai_opsMark Brown2008-11-21
| | | | | | | | | | | | | Liam Girdwood's ASoC v2 work avoids having two different ops structures for DAIs by merging the members of struct snd_soc_ops into struct snd_soc_dai_ops, allowing per DAI configuration for everything. Backport this change. This paves the way for future work allowing any combination of DAIs to be connected rather than having fixed purpose CODEC and CPU DAIs and only allowing CODEC<->CPU interconnections. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ssm2602: Update supported stream formatsKarl Beldan2008-11-21
| | | | | Signed-off-by: Karl Beldan <karl.beldan@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: ssm2602: Fix priv substreams refsKarl Beldan2008-11-21
| | | | | | | | | | | | | | | Clean up our record of the active streams in shutdown(), fixing subsequent failures of snd_pcm_hw_constraints_complete after closure of a stream. NOTE: - The ssm2602 allows pairs of non-matching PB/REC rates. - This is a fix for less evil: The logic is flawed (e.g. the slave might startup before the master's rate and sample_bits are set). Signed-off-by: Karl Beldan <karl.beldan@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Rename snd_soc_card to snd_soc_machineMark Brown2008-11-21
| | | | | | | | | | | | | | | | | One of the issues with the ASoC v1 API which has been addressed in the ASoC v2 work that Liam Girdwood has done is that the ALSA card provided by ASoC is distributed around the ASoC structures. For example, machine wide data such as the struct snd_card are maintained as part of the CODEC data structure, preventing the use of multiple codecs. This has been addressed by refactoring the data structures so that all the data for the ALSA card is contained in a single structure snd_soc_card which replaces the existing snd_soc_machine and snd_soc_device. Begin the process of backporting this by renaming struct snd_soc_machine to struct snd_soc_card, better reflecting its function and bringing it closer to standard ALSA terminology. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert blackfin machines to use DAI accessor functionsMark Brown2008-11-19
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: s3c24xx_uda134x DAI accessor functions and static cleanupMark Brown2008-11-19
| | | | | | Missed these during review. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add support for omap2evm boardArun KS2008-11-19
| | | | | | | This patch adds twl4030 audio support on omap2evm Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add driver for the Lyrtech SFFSDR boardHugo Villeneuve2008-11-19
| | | | | | | | | | | The PCM3008 is used on the Lyrtech SFFSDR board, in conjunction with an FPGA that generates the bit clock and the master clock [Downgraded the rate debug print to pr_debug() in hw_params, converted asm/gpio.h to linux/gpio.h -- broonie] Signed-off-by: Hugo Villeneuve <hugo@hugovil.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add PCM3008 ALSA SoC driverHugo Villeneuve2008-11-19
| | | | | | | | | | | | The PCM3008 is a 16-bit stereo audio codec. It accepts left-justified format for ADC, and right-justified format for DAC. Independent power-down modes for ADC and DAC are provided, as well as a digital de-emphasis filter (4 modes). [Merged Makefile & Kconfig, changed asm/gpio.h to linux/gpio.h -- broonie] Signed-off-by: Hugo Villeneuve <hugo@hugovil.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Move uda134x_codec.h to uda134x.hMark Brown2008-11-18
| | | | | | For consistency with other ASoC codec drivers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: always set a default value for that GPIO rangeMike Frysinger2008-11-18
| | | | | | | Cc: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: Simplify the MMAP_SUPPORT macros protected codeBryan Wu2008-11-18
| | | | | | Cc: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: do not force TWI bus for ssm2602 codecMike Frysinger2008-11-18
| | | | | | | Cc: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix Blackfin AC97 DAI probe function return codeMichael Hennerich2008-11-18
| | | | | | | | | A probe function should have a clean return 0 path. Cc: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: Fix AD1980/1 build with MMAP support disabledCliff Cai2008-11-18
| | | | | | | | clean up redudent code and correct building problem in non-mmap mode Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: add multi-channel function supportCliff Cai2008-11-18
| | | | | | | | | | This patch provides a option for users to enable multi-channel function support in Blackfin ASoC driver. Because Blackfin is without MMU, it is easy for us and the user to enable this function at compiling stage not dynamically on the fly. Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: AD1980 codec: add multi-channel function supportCliff Cai2008-11-18
| | | | | | | | | We added multi-channel function to this codec driver and Blackfin ASoC driver as well. It was tested on Blackfin hardware. Signed-off-by: Cliff Cai <cliff.cai@analog.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Blackfin: updates Kconfig for SPORTMike Frysinger2008-11-18
| | | | | | | | tweak SPORT range for non-BF54x so we get proper behavior for BF52x parts Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: DaVinci: Fix audio stall when doing full duplexNaresh Medisetty2008-11-18
| | | | | | | | | | Fix concurrent capture/playback issue. The issue is caused by re-initialization of control registers used specifically for capture or playback in both capture and playback operations. Signed-off-by: Steve Chen <schen@mvista.com> Signed-off-by: Naresh Medisetty <naresh@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Build tlv320aic23 cleanlyMark Brown2008-11-17
| | | | | | | Also merge down a couple of last minute style changes that got lost in the shuffle. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Manage VMID mode for WM8990Mark Brown2008-11-17
| | | | | | | A small additional power saving can be achieved for the WM8990 by maintaining VMID using a 2*250k divider when in standby mode. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Enable WM8990 ADC clocking workaroundMark Brown2008-11-17
| | | | | | | Enable a hardware workaround which avoids problems with the clocking of the ADCs in certain configurations. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Allow writes to uncached registers in WM8990Mark Brown2008-11-17
| | | | | | | Only fully documented registers are cached in the WM8990 but additional registers exist. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Machine driver for for s3c24xx with uda134xChristian Pellegrin2008-11-17
| | | | | Signed-off-by: Christian Pellegrin <chripell@fsfe.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: UDA134x codec driverChristian Pellegrin2008-11-17
| | | | | Signed-off-by: Christian Pellegrin <chripell@fsfe.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix for master playback/capture volume range for TWL4030 codecPeter Ujfalusi2008-11-17
| | | | | | | | | | | FGAIN for playback is in range of 0-0x3f, while for capture GAIN it is in the range of 0-0x1f. The original value of 128 (0x7f) would modify the CGAIN also for playback. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add WM8728 codec driverMark Brown2008-11-14
| | | | | | | The WM8728 is a high performance stereo DAC designed for applications such as DVD, home theatre and digital TV. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Revert "ASoC: Add new parameter to s3c24xx_pcm_enqueue"Mark Brown2008-11-14
| | | | | | | | | | This reverts commit 8dc840f88d9c9f75f46d5dbe489242f8a114fab6. Christian Pellegrin <chripell@gmail.com> reported that on some systems the patch caused DMA to fail which is much more serious than the original skipped audio issue. Further investigation by Dave shows that the behaviour depends on the clock speed of the SoC - a better fix is neeeded. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: OMAP: Add more supported sample rates into McBSP DAI driverJarkko Nikula2008-11-13
| | | | | | | | | | | | | | Originally it was put too tight limits to support only 44.1 kHz and 48 kHz sample rates in McBSP DAI driver. Extend it now to 8 kHz - 96 kHz. With 96 kHz and 2*16 bits, bit clock is 3.072 MHz < 3.125 MHz (I2S max?). Tested on Nokia N810 with TVL320AIC33 from rates 8 - 96 kHz and on Texas Instruments Beagle with TWL4030 from rates 8 - 48 kHz. Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Acked-by: Steve Sakoman <steve@sakoman.com> Acked-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix supported sample rates of TWL4030 audio codecJarkko Nikula2008-11-13
| | | | | | | | | | TWL4030 currently supports rates between 8 kHz and 48 kHz and sets the codec mode register accordingly in twl4030_hw_params. Expose this info so that ASoC can match other rates than 44.1 kHz or 48 kHz as well. Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Acked-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: DaVinci: Audio: Fix swapping of channels at start of stereo playbackNaresh Medisetty2008-11-12
| | | | | | | | | | Fixes swapping of channels at start of stereo playback. Channel swap can be observed while playing left-only or right-only audio data. The channel swap is fixed by handling the XSYNCERR condition. Signed-off-by: Naresh Medisetty <naresh@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add Right-Justified mode and Codec clock master to davinci-i2sHugo Villeneuve2008-11-10
| | | | | | | | The TI DVEVM board uses the SND_SOC_DAIFMT_CBM_CFM & I2S formats, but the Lyrtech SFFSDR board uses the SND_SOC_DAIFMT_CBM_CFS & RIGHT-JUSTIFIED formats. Signed-off-by: Hugo Villeneuve <hugo.villeneuve@lyrtech.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: s3c24xx 8 bit sound fixChristian Pellegrin2008-11-10
| | | | | | | | | fixes playing/recording of 8 bit audio files. Generated on 20081108 against v2.6.27 Signed-off-by: Christian Pellegrin <chripell@fsfe.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TLV320AIC23B Support more sample ratesTroy Kisky2008-11-07
| | | | | | | | | Add support for more sample rates, different crystals and split playback/capture rates. Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com> Acked-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ALSA: ASoC: TWL4030 codec - fix 256*Fs clockGrazvydas Ignotas2008-11-06
| | | | | | | | | | | According to TRM, 256*Fs clock output should be enabled when TWL4030 is in slave mode, not master. This allows sound to work on OMAP3 Pandora, which uses 256*Fs clock. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Acked-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add new parameter to s3c24xx_pcm_enqueueDavid Anders2008-11-05
| | | | | | | | | | The S3C24xx dma does not allow more than one buffer to be enqueue prior to the dma transfers starting. This patch adds an additional parameter to s3c24xx_pcm_enqueue() to allow for passing an initial dma maximum load value. Signed-off-by: David Anders <danders at amltd.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Remove core version numberMark Brown2008-11-05
| | | | | | | | Rather than try to remember to keep the core version number updated (which hasn't been happening) just remove it. It was much more useful when ASoC was out of tree. Signed-off-by: Mark brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add Palm/PXA27x unified ASoC audio driverMarek Vasut2008-11-05
| | | | | | | | | | | | this patch adds asoc audio driver for pxa27x based Palm PDAs. I tested it for palmtx, t5 and ld, it should work with palmz72 as well (slapin, please test). I sent it here some time ago, but now I got to fixing bugs in it. It should be somehow mostly ok and ready for applying. [Converted to use snd_soc_dapm_nc_pin() and bool Kconfig -- broonie] Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ALSA: ASoC - Remove unnecessary inclusion of linux/version.hTakashi Iwai2008-11-04
| | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ALSA: ASoC codec: remove unused #include <version.h>Huang Weiyi2008-11-04
| | | | | | | | | | | The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. sound/soc/codecs/ad73311.c This patch removes the said #include <version.h>. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>