aboutsummaryrefslogtreecommitdiff
path: root/sound/soc/codecs
AgeCommit message (Collapse)Author
2008-11-24ASoC: Flag AD1980 as an AC97 interfaceMark Brown
Special handling is required for suspend and resume of AC97 codecs due to the control path going over the data bus. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-24ASoC: Remove DAI type informationMark Brown
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>
2008-11-24ASoC: TWL4030: Add helper function for output gain controlsPeter Ujfalusi
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>
2008-11-24ASoC: TWL4030: Add CGAIN volume controlPeter Ujfalusi
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>
2008-11-24ASoC: TWL4030: Change the Master volume control to TLVPeter Ujfalusi
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>
2008-11-24ASoC: TWL4030: Disable soft-volumePeter Ujfalusi
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>
2008-11-24ASoC: Use supplied DAI for WM9713 rather than substreamMark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-21ASoC: Improve error reporting for AC97 reset failuresMark Brown
Print something a bit more verbose to help make errors a little more obvious. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-21ASoC: Merge snd_soc_ops into snd_soc_dai_opsMark Brown
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>
2008-11-21ASoC: ssm2602: Update supported stream formatsKarl Beldan
Signed-off-by: Karl Beldan <karl.beldan@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-21ASoC: ssm2602: Fix priv substreams refsKarl Beldan
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>
2008-11-19ASoC: Add PCM3008 ALSA SoC driverHugo Villeneuve
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>
2008-11-18ASoC: Move uda134x_codec.h to uda134x.hMark Brown
For consistency with other ASoC codec drivers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-18ASoC: AD1980 codec: add multi-channel function supportCliff Cai
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>
2008-11-17ASoC: Build tlv320aic23 cleanlyMark Brown
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>
2008-11-17ASoC: Manage VMID mode for WM8990Mark Brown
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>
2008-11-17ASoC: Enable WM8990 ADC clocking workaroundMark Brown
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>
2008-11-17ASoC: Allow writes to uncached registers in WM8990Mark Brown
Only fully documented registers are cached in the WM8990 but additional registers exist. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-17ASoC: UDA134x codec driverChristian Pellegrin
Signed-off-by: Christian Pellegrin <chripell@fsfe.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-11-17ASoC: Fix for master playback/capture volume range for TWL4030 codecPeter Ujfalusi
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>
2008-11-14ASoC: Add WM8728 codec driverMark Brown
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>
2008-11-13ASoC: Fix supported sample rates of TWL4030 audio codecJarkko Nikula
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>
2008-11-07ASoC: TLV320AIC23B Support more sample ratesTroy Kisky
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>
2008-11-06ALSA: ASoC: TWL4030 codec - fix 256*Fs clockGrazvydas Ignotas
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>
2008-11-04ALSA: ASoC codec: remove unused #include <version.h>Huang Weiyi
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>
2008-10-31Merge branch 'topic/fix/asoc' into topic/asocTakashi Iwai
2008-10-31ASoC: Add support for TWL4030 audio codecSteve Sakoman
Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-10-30ALSA: ASoC - Fix a typo in KconfigTakashi Iwai
The last change to Kconfig ca53fb24dd21bff32c4b41b2be1035a1adfc0135 added a wrong item SND_SOC_AC97, which must be SND_SOC_AC97_CODEC. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-30ASoC: Disable automatic volume control in the CS4270 sound driverTimur Tabi
Disable the automatic volume control feature of the CS4270 audio codec. This feature, which is enabled by default, causes volume change commands to be delayed. Sometimes the volume change happens after playback is started. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-10-30ASoC: Use finer grained dependencies in SND_SOC_ALL_CODECSMark Brown
Move the bus dependencies in SND_SOC_ALL_CODECS into the individual codec options rather than have them centrally. This allows the inclusion of AC97 codecs when testing on platforms with AC97 support and will also handle codecs on multi-function devices more gracefully. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-10-30ASoC: Do a warm reset after cold when resetting the WM9713Mark Brown
The WM9713 comes out of cold reset in low power mode so always requires a warm reset to bring up the AC97 link after a cold reset. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2008-10-30ALSA: ASoC: Fix WM9713 ALC Decay Time nameMark Brown
The control had an extra space at the end of the name. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-27Merge branch 'topic/asoc-next' into topic/asocTakashi Iwai
2008-10-23ALSA: ASoC: tlv320aic3x: Fix DSP DAI format and signal polarities matchingJarkko Nikula
- Codec doesn't support to configure bit clock and frame sync polarities - Codec doesn't support DSP_A format but DSP_B with inverted bit clock polarity - Match also other formats with their signal polarities Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-16ALSA: ASoC: Convert wm8900 to a new-style i2c driverJean Delvare
Convert the wm8900 codec driver to the new (standard) device driver binding model. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-16ALSA: ASoC: Convert wm8580 to a new-style i2c driverJean Delvare
Convert the wm8580 codec driver to the new (standard) device driver binding model. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-14ALSA: ASoC: Hide TLV320AIC26 configuration option for non-OpenFirwmare usersMark Brown
Make the visibility of the tristate conditional on having the OpenFirmware helper code enabed so that users who can't use it don't see the visible option. Kconfig ignores dependencies for select so other users are unaffected. Thanks to Takashi for the suggestion. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Fix compile-time warning for tlv320aic23.cArun KS
Fixes this warning: sound/soc/codecs/tlv320aic23.c: In function 'tlv320aic23_write': sound/soc/codecs/tlv320aic23.c:104: warning: passing argument 2 of 'codec->hw_write' makes pointer from integer without a cast Replaces i2c smbus write function with standard i2c write function Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC codec: remove unused #include <version.h>Huang Weiyi
The files below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. sound/soc/codecs/ad1980.c sound/soc/codecs/wm8580.c sound/soc/codecs/wm8900.c This patch removes the said #include <version.h>. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: update email address for Liam GirdwoodLiam Girdwood
Update the contact information for Liam Girdwood in ASoC core and drivers as my old email address is no longer valid. Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Fix inverted input PGA mute bits in WM8903Mark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Make TLV320AIC26 user-visibleMark Brown
The TLV320AIC26 Kconfig option is unusual in that it supports the OpenFirmware machine driver which doesn't have a hard binding to the codec driver but discovers the codec via the device tree. This makes it meaningful to select the codec without a machine driver. Ideally there would be a proxy entry so that this option was only visible on OpenFirmware systems. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC - clean up Kconfig for TLV320AIC2Takashi Iwai
Removed unnecessary dependency. Also, make it uninteractive, as it's only for selection by other configs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Make WM8510 microphone input a DAPM mixerMark Brown
The WM8510 microphone input PGA was represented as a DAPM PGA but in DAPM terms the functionality is that of a mixer since it takes three switchable inputs and produces one output. Representing it as an input was causing its controls to be misinterpreted as gain controls and would cause some required DAPM updates to be missed. Reported-by: Jukka Hynninen <ext-jukka.hynninen@vaisala.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Implement WM8510 bias level controlMark Brown
The WM8510 bias level configuration blindly overwrites the power management registers, interfering with the operation of DAPM. Only adjust the specific bits required, implementing use of the VMID resistor string configuration control as we go. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Remove unused AUDIO_NAME define from codec driversJarkko Nikula
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: tlv320aic3x: Use uniform tlv320aic namingJarkko Nikula
Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Add WM8510 SPI supportMark Brown
Implement SPI support for WM8510, cut'n'pasting from the support for WM8731 contributed by Cliff Cai and Alan Horstmann since the wire format is the same for both codecs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Add WM8753 SPI supportMark Brown
Implement SPI support for WM8753, cut'n'pasting from the support for WM8731 contributed by Cliff Cai and Alan Horstmann since the wire format is the same for both codecs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-10-13ALSA: ASoC: Add custom SOC_SINGLE_TLV for tlv320aic23 codecArun KS
Replaces SOC_ENUM with custom SOC_SINGLE_TLV for Sidetone volume Signed-off-by: Arun KS <arunks@mistralsolutions.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>