summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: Remove dead code and labelsTakashi Iwai2009-11-075-25/+0
| | | | | | | Remove the dead code and labels "card_err" in the error paths of some codec drivers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ASoC: Factor out snd_soc_init_card()Mark Brown2009-11-0347-372/+5
| | | | | | | | | snd_soc_init_card() is always called as the last part of the CODEC probe function so we can factor it out into the core card setup rather than have each CODEC replicate the code to do the initialiastation. This will be required to support multiple CODECs per card. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Staticise wm8727 driver structureMark Brown2009-11-031-1/+1
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Make sure, that the codec is powered on startupPeter Ujfalusi2009-11-021-0/+1
| | | | | | | | Set the codec->bias_level to SND_SOC_BIAS_OFF before changing the initial bias level to STANDBY. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add support for the WM8727 DAC.Neil Jones2009-11-024-0/+170
| | | | | | | | Add support for the Wolfson Microelectronics WM8727 DAC, this is a simple non-configurable DAC. Signed-off-by: Neil Jones <neil.jones@imgtec.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add APLL supply for the capture pathPeter Ujfalusi2009-10-291-0/+5
| | | | | | | | Capture path also need the APLL enabled, adding DAPM_SUPPLY for the Virtual ADCs. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Change APLL powering sequencePeter Ujfalusi2009-10-291-2/+24
| | | | | | | | | | | | | | | | | | | It seams that certain part of the twl4030 codec needs the APLL enabled before they are enabled. Paths which has any digital processing needs need the APLL enabled before they can function. For example the vibra output will have some random data after it is enabled and before the APLL also enabled. If only analog components are in use (analog bypass), than it seams, that the APLL does not need to be enabled. This lowers the power consumption with around ~0.005A. Adding DAPM_SUPPLY to the Digital playback route and also to the capture route to enable and disable the APLL. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Vibra motor stop fix when it is driven with audioJari Vanhala2009-10-291-2/+10
| | | | | | | | | | | This patch fixes vibrator playing incoherently, when driven with audio. There is something wrong in switch 3 at H-bridge and VIBRA_SET still affects PWM generator. Slowest value fixes things. Signed-off-by: Jari Vanhala <ext-jari.vanhala@nokia.com> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: CS4270: export de-emphasis filter as ALSA controlDaniel Mack2009-10-291-0/+1
| | | | | | | | | | | The CS4270 codec features an de-emphasis filter for compensation of audio material filtered by an 50/15 uS algorithm. Not sure whether we should always enable it for 44100Hz sampling frequency, but it should at least be configurable by the user. Signed-off-by: Daniel Mack <daniel@caiaq.de> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Change codec_muted to apll_enabledPeter Ujfalusi2009-10-281-10/+10
| | | | | | | | codec_muted is missleading, change it to apll_enabled, which is what it is doing: enabing and disabling the APLL. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Remove bypass trackingPeter Ujfalusi2009-10-281-98/+30
| | | | | | | | | | | | | | | | | | Since ASoC core now handling the codec bias differently there is no need to do the tracking of bypass switch states anymore. Handling of the common bit for analog loopbacks is done with DAPM_SUPPLY for the bypass paths. Now this bit is only enabled when there is a complete analog bypass path, compared to the previous implementation, when the global switch was enabled if there were any of the analog bypass switch was on (regardless if there were complete path or not) Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add regulator support for WM8731Mark Brown2009-10-261-4/+47
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Driver registration via twl4030_codec MFDPeter Ujfalusi2009-10-252-77/+127
| | | | | | | | | Change the way how the twl4030 soc codec driver is loaded/probed. Use the device probing via tlw4030_codec MFD device. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: use the twl4030-codec.h for register descriptionsPeter Ujfalusi2009-10-251-236/+6
| | | | | | | | | Remove the register descriptions from the twl4030.h file and use the linux/mfd/twl4030-codec.h instead, which has the codec related register descriptions also. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: tlv320dac33: typo fix in the headerPeter Ujfalusi2009-10-211-1/+1
| | | | | | | | Fix the definition of DAC33_LTM field, the LTM bits in FIFO_IRQ_MODE_B register are starting at bit 6. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Only update the needed bits in *set_dai_sysclkPeter Ujfalusi2009-10-191-10/+12
| | | | | | | | Do not rewrite the whole register, but only update the needed bits in set_dai_sysclk functions. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Codec driver for Texas Instruments tlv320dac33 codecPeter Ujfalusi2009-10-154-0/+1510
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Driver for Texas Instruments TLV320DAC33 (SLAS546) low power stereo audio DAC. TLV320DAC33 is a stereo audio codec with integrated 24KB FIFO for low power audio playback. The digital interface can use I2S, DSP (A or B), Right and Left justified formats. DAC33 has stereo analog input, which can be bypassed to the analog outputs. Regarding to the internal 24KB FIFO the driver implements 'FIFO bypass' mode (default) and nSample mode (FIFO is in use). a) In 'FIFO bypass' mode the internal FIFO is not in use, the codec is working synchronously as a normal codec (it needs constant stream of data on the digital interface). b) The nSample mode implementation uses one interrupt line from DAC33 to the host: Alarm threshold is set to 10ms of audio data (limit by the driver implementation). DAC33 will signal an interrupt, when the FIFO level goes under the Alarm threshold. The host will write to nSample register a value (number of stereo samples), to tell DAC33 how many samples it should read in a burst from the host. When the DAC33 received the number of samples, it disables the clocks on the I2S bus. When the FIFO use again goes under the Alarm threshold, DAC33 signals the host with an interrupt, and the process is repeated. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Remove snd_soc_suspend_device()Mark Brown2009-10-1516-344/+0
| | | | | | | | The PM core will grow pm_link infrastructure in 2.6.33 which can be used to implement the intended functionality of the ASoC-specific device suspend and resume callbacks so drop them. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TPA6130A2: Make tpa6130a2_power as staticPeter Ujfalusi2009-10-122-2/+1
| | | | | | | | The power for the amplifier should be handled internally by the tpa6130a2 driver. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Minor fixups to tpa6130a2 driverMark Brown2009-10-091-4/+4
| | | | | | | | - Staticise ttpa6130a2_client. - Remove unneeded cast from void. - Use explict NULL rather than 0. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TPA6130A2 amplifier driverPeter Ujfalusi2009-10-094-0/+531
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Driver for Texas Instruments TPA6130A2 stereo headphone amplifier. The driver provides playback gain control and also pre-defined DAPM_HP widgets and DAPM routings for power management. The DAPM_HP widget names are: "TPA6130A2 Headphone Left" "TPA6130A2 Headphone Right" From soc machine drivers to use with the tpa6130a2 amplifier, the tpa6130a2_add_controls has to be called, which adds the alsa controls and the DAPM routing needed for the tpa6130a2. After that the machine driver can connect the codec's output with 'TPA6130A2 Left' and 'TPA6130A2 Right': {"TPA6130A2 Left", NULL, "CODEC LEFT OUT"}, {"TPA6130A2 Right", NULL, "CODEC RIGHT OUT"}, Internally the left and right channels are powered separately. When none of the channels are needed the amplifier is powered down: hard power: valid GPIO number is passed within platform data soft power: Using the software shutdown of the amplifier Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge branch 'for-2.6.32' into for-2.6.33Mark Brown2009-10-081-2/+2
|\
| * Merge branch 'upstream/wm8350' into for-2.6.32Mark Brown2009-10-061-2/+2
| |\
| | * ASoC: WM8350 capture PGA mutes are invertedMark Brown2009-10-061-2/+2
| | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* | | Merge branch 'for-2.6.32' into for-2.6.33Mark Brown2009-10-062-3/+3
|\ \ \ | |/ /
| * | Merge branch 'for-2.6.32' of ↵Mark Brown2009-10-061-1/+1
| |\ \ | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into for-2.6.32
| * \ \ Merge branch 'fix/asoc' of ↵Linus Torvalds2009-09-233-3/+3
| |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'fix/asoc' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ASoC: wm8753: fix mapping when MONOMIX is set to Stereo ASoC: some minor changes for AD1836 and AD1938 codec drivers ASoC: DaVinci: Fixes to McASP configuration ASoC: Blackfin I2S: fix resuming when device hasn't been used ASoC: Blackfin I2S: add lost platform_device parameter to resume function ASoC: fix typos in Blackfin headers ASoC: bf5xx-sport: the irq save/restore funcs take an unsigned long ASoC: Blackfin AC97: add a few missing multichannel define handling
| * | | | trivial: remove unnecessary semicolonsJoe Perches2009-09-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
| * | | | Merge branch 'fix/asoc' into for-linusTakashi Iwai2009-09-173-3/+0
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix/asoc: ASoC: remove unused #include <linux/version.h> ASoC: S3C lrsync function made to work with IRQs disabled. ASoC: Fix display of stream name in DAPM debugfs ASoC: Clean up error handling in MPC5200 DMA setup
| * \ \ \ \ Merge branch 'topic/asoc' into for-linusTakashi Iwai2009-09-1052-1988/+13704
| |\ \ \ \ \ | | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * topic/asoc: (226 commits) ASoC: au1x: PSC-AC97 bugfixes ASoC: Fix WM835x Out4 capture enumeration ASoC: Remove unuused hw_read_t ASoC: fix pxa2xx-ac97.c breakage ASoC: Fully specify DC servo bits to update in wm_hubs ASoC: Debugged improper setting of PLL fields in WM8580 driver ASoC: new board driver to connect bfin-5xx with ad1836 codec ASoC: OMAP: Add functionality to set CLKR and FSR sources in McBSP DAI ASoC: davinci: i2c device creation moved into board files ASoC: Don't reconfigure WM8350 FLL if not needed ASoC: Fix s3c-i2s-v2 build ASoC: Make platform data optional for TLV320AIC3x ASoC: Add S3C24xx dependencies for Simtec machines ASoC: SDP3430: Fix TWL GPIO6 pin mux request ASoC: S3C platform: Fix s3c2410_dma_started() called at improper time ARM: OMAP: McBSP: Merge two functions into omap_mcbsp_start/_stop ASoC: OMAP: Fix setup of XCCR and RCCR registers in McBSP DAI OMAP: McBSP: Use textual values in DMA operating mode sysfs files ARM: OMAP: DMA: Add support for DMA channel self linking on OMAP1510 ASoC: Select core DMA when building for S3C64xx ...
| * | | | | Merge branch 'fix/asoc' into for-linusTakashi Iwai2009-07-261-1/+10
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix/asoc: ASoC: tlv320aic3x: Enable PLL when not bypassed
| * | | | | | Sound: remove direct access of driver_dataGreg Kroah-Hartman2009-07-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the last in-kernel direct usage of driver_data, replace it with the proper dev_get/set_drvdata() calls. Cc: Takashi Iwai <tiwai@suse.de> Cc: Jaroslav Kysela <perex@perex.cz> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: Liam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
* | | | | | | Merge branch 'for-2.6.32' into for-2.6.33Mark Brown2009-10-051-1/+1
|\ \ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | |
| * | | | | | ASoC: wm8940: Fix check on error code form snd_soc_codec_set_cache_ioJonathan Cameron2009-10-021-1/+1
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for typo in commit 8d50e447d19fec64adebeef55f2b60d695435412 ASoC: Factor out I/O for Wolfson 8 bit data 16 bit register CODECs Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | | | | Merge remote branch 'takashi/topic/asoc' into for-2.6.33Mark Brown2009-10-011-3/+4
|\ \ \ \ \ \
| * | | | | | ASoC: Fix build errors of wm8711.c with SPITakashi Iwai2009-10-011-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a couple of typos and a missing header file inclusion to build wm8711.c properly with CONFIG_SPI_MASTER. Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | | | | | | ASoC: Factor out analogue platform data from WM8993Mark Brown2009-09-303-27/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is also shared with newer CODECs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | | | | | Merge branch 'upstream/wm8974' into for-2.6.33Mark Brown2009-09-301-10/+13
|\ \ \ \ \ \ \ | |/ / / / / / |/| | | | | |
| * | | | | | ASoC: Clean up WM8974 PLL configurationMark Brown2009-09-301-10/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't use a static for WM8974 PLL factors - we don't support more than one device so it won't happen but no sense in leaving the race condition hanging around. Also, pre_div is a single bit and it's a bit simpler if we move the handling of the factor of 4 in the output into the coefficient setup. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | | | | | Merge branch 'for-2.6.32' into for-2.6.33Mark Brown2009-09-233-3/+3
|\ \ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | ASoC: wm8753: fix mapping when MONOMIX is set to StereoPhil Vandry2009-09-211-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When MONOMIX is set to Stereo, Left PGA was not powered on but should be. Add a mapping from Capture Left Mux to Capture Left Mixer to fix the issue. Signed-off-by: Phil Vandry <vandry@TZoNE.ORG> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | ASoC: some minor changes for AD1836 and AD1938 codec driversBarry Song2009-09-212-3/+2
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. delete redundant assignment to bus field in spi_driver structure 2. fix lost assignment to set_bias_level entry in ad1938 codec dai 3. change spi driver name of ad1836 from "ad1836-spi" to "ad1836" Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | | | | Merge branch 'upstream/wm8711' into for-2.6.33Mark Brown2009-09-214-0/+706
|\ \ \ \ \ \
| * | | | | | ASoC: Add TLV information to WM8711Mark Brown2009-08-181-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | ASoC: WM8711 minor cleanupsMark Brown2009-08-181-22/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Coding style changes only. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | ASoC: Add SPI support to WM8711Mark Brown2009-08-182-1/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | ASoC: Factor out WM8711 cache I/OMark Brown2009-08-181-76/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | Merge branch 'topic/asoc' of ↵Mark Brown2009-08-1862-1736/+19847
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into upstream/wm8711
| * | | | | | | ASoC: Update WM8711 to driver model registration methodMark Brown2009-08-181-168/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | | ASoC: Add WM8711 CODEC driverMike Arthur2009-08-184-0/+733
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WM8711 or WM8711L (WM8711/L) is a low power stereo DAC with an integrated headphone driver. The WM8711/L is designed specifically for portable MP3 audio and speech players. The WM8711/L is also ideal for MD, CD machines and DAT players. Signed-off-by: Mike Arthur <Mike.Arthur@wolfsonmicro.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
OpenPOWER on IntegriCloud