aboutsummaryrefslogtreecommitdiff
path: root/sound
AgeCommit message (Collapse)Author
2009-01-31ASoC: Update OMAP3 pandora board fileGrazvydas Ignotas
Update pandora board file for recent TWL4030 codec changes. Also move output related snd_soc_dapm_nc_pin() calls to omap3pandora_out_init(), where they belong. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-31ASoC: fix documentation in CS4270 codec driverTimur Tabi
Spruce up the documentation in the CS4270 codec. Use kerneldoc where appropriate. Fix incorrect comments. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-30ASoC: fix initialization order of the CS4270 codec driverTimur Tabi
ASoC codec drivers typically serve two masters: the I2C bus and ASoC itself. When a codec driver registers with ASoC, a probe function is called. Most codec drivers call ASoC first, and then register with the I2C bus in the ASoC probe function. However, in order to support multiple codecs on one board, it's easier if the codec driver is probed via the I2C bus first. This is because the call to i2c_add_driver() can result in the I2C probe function being called multiple times - once for each codec. In the current design, the driver registers once with ASoC, and in the ASoC probe function, it calls i2c_add_driver(). The results in the I2C probe function being called multiple times before the driver can register with ASoC again. The new design has the driver call i2c_add_driver() first. In the I2C probe function, the driver registers with ASoC. This allows the ASoC probe function to be called once per I2C device. Also add code to check if the I2C probe function is called more than once, since that is not supported with the current ASoC design. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29ASoC: TWL4030: Add analog loopback supportPeter Ujfalusi
This patch adds the analog loopback/bypass support for twl4030 codec. Details for the implementation: It seams that the analog loopback needs the DAC powered on on the channel, where the loopback is selected. The switch for the DACs has been moved from the DAPM_DAC to the "Analog XX Playback Mixer". In this way the DAC will be powered while the audio playback is used or/and the loopback is enabled for the channel. The twl4030 codec powering has been reworked. Now the codec will be powered as long as it does not receives the SND_SOC_BIAS_OFF event. The exceptions are when the given change in the registers needs the codec power down/up cycle in order to take effect. Otherwise the codec is on. When the codec enters to STANDBY state and none of the loopback paths are enabled, than the amplifiers, which are no in the DAPM path are forced to turn off and the PLL is disabled. When playback/capture starts the disabled gains are restored and the PLL is enabled. When one of the loopback enabled in STANDBY mode, the disabled gains are restored and the PLL is enabled also. In short: the codec always goes to the lowest power state based on the bias_level and the bypass_state. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29Merge branch 'for-2.6.29' into for-2.6.30Mark Brown
2009-01-29ASoC: OMAP: Initialize XCCR and RCCR registers in McBSP DAI driverMisael Lopez Cruz
This patch explicitly initializes McBSP Transmit Configuration Control Register (XCCR) and Receive Configuration Control Register (RCCR) to their reset values. Reset values are 26 ns of DX delay and Transmit DMA disabled for XCCR register; receive full cycle mode enabled and Receive DMA disabled for RCCR register. This patch requires a counterpart in OMAP McBSP driver before to apply it. The required changes in McBSP were sent and approved in linux-omap mailing list and patch is going upstream (commit 3127f8f8595a064b3f1a1837fea2177902589ac3 from linux-omap-2.6 tree). Signed-off-by: Misael Lopez Cruz <x0052729@ti.com> [ jarkko.nikula@nokia.com: Commit id for counterpart patch corrected ] Signed-off-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-29ASoC: Fix null string usage with WM8753 DAIsMark Brown
The WM8753 driver multiplexes the DAI structures it exposes to the outside world, leaving them uninitialised until the codec probes. Since the DAI name is used during the registration and setup process provide a dummy name. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-28Merge branch 'topic/snd_card_new-err' into topic/asocTakashi Iwai
Conflicts: sound/soc/soc-core.c
2009-01-27ASoC: TWL4030: Move the twl4030_power_up and _power_down functionPeter Ujfalusi
Move the twl4030_power_up and twl4030_power_down function earlier to facilitate the analog bypass implementation. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27ASoC: TWL4030: Physical ADC and amplifier power switch changePeter Ujfalusi
Change the power switches for the physical ADC and for the amplifiers for the analog capture path to map more closely the actual path inside of the codec. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27ASoC: TWL4030: Enable Headset Left anti-pop/bias ramp only if the Headset ↵Peter Ujfalusi
Left is in use The Headset Left anti-pop and bias ramp does not need to be enabled, if the headset is not in use. Move the code to DAPM event handler for HeadsetL. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27ASoC: TWL4030: Code clean up for codec power up and downPeter Ujfalusi
Merge the codec up and down functions to a simple one. Codec is powered down by default (reg_cache change). Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27ASoC: TWL4030: Syncronize the reg_cache for ANAMICL after the offset cancelationPeter Ujfalusi
The offset cancelation bit in ANAMICL register is self cleanig. Make sure that the reg_cache holds the same value as the HW register. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-27ASoC: Push the codec runtime storage into the card structureMark Brown
This is a further stage on the road to refactoring away the ASoC platform device. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: improve I2C initialization code in CS4270 driverTimur Tabi
Further improvements in the I2C initialization sequence of the CS4270 driver. All ASoC initialization is now done in the I2C probe function. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Fix L3 bus handling in KconfigMark Brown
It has no external dependencies but needs to be selected for L3 based codecs to work. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Include header file in cs4270 and wm9705Mark Brown
Ensures that the DAI and socdev exported by the codec match up with their exported prototype. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Fix spurious codec driver dependenciesMark Brown
Kbuild ignores dependency from things that are themselves selected so ASoC machine drivers need to ensure that the control bus is being built. This also avoids issues where multiple buses are supported by a given codec. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Configure SSP port PLL for ZyloniteMark Brown
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Remove unneeded e7x0 inclusion of pxa-regs.h and hardware.hMark Brown
pxa-regs.h and hardware.h are not intended for use directly in driver code and references to them have been removed in other code - remove them from the newly added e740 and e750 machine drivers. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: Fix merge with PXA treeMark Brown
Fix a merge issue caused by context overlap. Reported-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-23ASoC: remove stand-alone mode support from CS4270 codec driverTimur Tabi
The CS4270 supports stand-alone mode, where the codec is not connect to the I2C or SPI buses. Instead, input voltages configure the codec at power-on. The CS4270 ASoC device driver has partial support for this mode, but the code was never tested, and partial support doesn't help anyone. It also made the rest of the code more complicated than necessary. [Removed redundant CS4270 dependency on I2C -- broonie] Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-21ASoC: Complete Beagleboard supportSteve Sakoman
Commit dc06102a0c8b5aa0dd7f9a40ce241e793c252a87 in the asoc tree did not include the necessary Kconfig and Makefile changes. This patch completes the support for Beagleboard Signed-off-by: Steve Sakoman <steve@sakoman.com> Acked-by: Jarkko Nikula <jarkko.nikula@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20Merge branch 'for-2.6.29' into for-2.6.30Mark Brown
2009-01-20ASoC: Fix WM9705 capture switch nameIan Molton
This patch fixes the acpture switch name so that it better reflects its purpose. Signed-off-by: Ian Molton <iann@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20ASoC: Allow Freescale MPC8610 audio drivers to be compiled as modulesTimur Tabi
Change the Kconfig and Makefile options for Freescale MPC8610 audio drivers so that they can be compiled as modules, and simplify the Kconfig choices so that only the platform is selected. Also fix the naming of the driver files to conform to ALSA standards. [Removed extraneous SND_SOC dependency -- broonie] Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-20ASoC: fix registration of the SoC card in the Freescale MPC8610 driversTimur Tabi
The Freescale MPC8610 driver was defining two SOC card (snd_soc_card) structures, partially initializing each one, but registering only one of them with ASoC. Signed-off-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19ASoC: Staticise PCM operations tablesMark Brown
The PCM operations tables are not exported directly but are instead included in the platform structure so should be declared static. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19ASoC: fixes to caching implementationsIan Molton
This patch takes fixes a number of bugs in the caching code used by several ASoC codec drivers. Mostly off-by-one fixes. Signed-off-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19ASoC: machine support for Toshiba e740 PDAIan Molton
This patch provides suupport for the wm9705 AC97 codec on the Toshiba e740. Note: The e740 has a hard headphone switch that turns the speaker off and is not software detectable or controlable. Also both headphone and speaker amps share a common output enable. Signed-off-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-19ASoC: Implement support for CLK_POUT as MCLK on ZyloniteMark Brown
The Zylonite supports switching the MCLK for the WM9713 between the AC97CLK and CLK_POUT outputs of the PXA processor via switch SW15 on the board. This patch adds support for configuring the system to use CLK_POUT. Unfortunately it is not possible to read the state of SW15 from software so this feature is controlled by a module option 'clk_pout' which should be set to a non-zero value to enable the use of CLK_POUT. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-16ASoC: Ignore output frequency for WM9713 PLLMark Brown
The WM9713 driver does not support configuring the PLL output frequency so the output frequency parameter is irrelevant. Allow users to set it to zero by ignoring it. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-16Merge branch 'for-2.6.29' into for-2.6.30Mark Brown
2009-01-16ASoC: machine driver for Toshiba e800Ian Molton
This patch adds support for the wm9712 ac97 codec as used in the Toshiba e800 PDA. It includes support for powering up / down the external headphone and speaker amplifiers on this machine. Signed-off-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-16ASoC: machine driver for Toshiba e750Ian Molton
This patch adds support for the wm9705 ac97 codec as used in the Toshiba e750 PDA. It includes support for powering up / down the external headphone and speaker amplifiers on this machine. Signed-off-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-16ASoC: Driver for the WM9705 AC97 codec.Ian Molton
This driver adds support for the wm9705 ac97 codec. The driver supports audio input and output. Signed-off-by: Ian Molton <ian@mnementh.co.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-16ASoC: atmel_pcm: Remove non-existant headerBen Nizette
<mach/hardware.h> doesn't exist on AVR32 and therefore this driver won't build on that arch. AFAICT this driver doesn't actually use the content of that header so easiest just to remove it. Signed-off-by: Ben Nizette <bn@niasdigital.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-15ASoC: DaVinci: Fix SFFSDR compilation error.Hugo Villeneuve
Remove dependency on sffsdr_fpga_set_codec_fs() when the SFFSDR FPGA module is not selected. Signed-off-by: Hugo Villeneuve <hugo@hugovil.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-01-15Merge branch 'topic/asoc' into next/asocTakashi Iwai
2009-01-15ASoC: Fix the power update function for snd_soc_dapm_value_muxPeter Ujfalusi
Modify the check for the mux type to also handle the snd_soc_dapm_value_mux type in a same way as the snd_soc_dapm_mux. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-14ALSA: opti9xx - Fix build breakage by snd_card_create() conversionTakashi Iwai
Add a missing variable declaration. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (30 commits) m68k: Fix --build-id breakage for sun3 m68k: Wire up sys_restart_syscall fbdev: Kill Atari vblank cursor blinking m68k: zorro - Use %pR to print resources m68k: dio - Kill resource_size_t format warnings m68k: dmasound - Kill warn_unused_result warnings m68k: zorro - Kill warn_unused_result warnings m68k: dio - Kill warn_unused_result warnings m68k: atafb - Kill warn_unused_result warnings m68k: amiserial - Kill warn_unused_result warnings m68k: ser_a2232 - Kill warn_unused_result warnings m68k: vme_scc - Kill warn_unused_result warnings m68k: sun3 core - Kill warn_unused_result warnings m68k: mvme147 core - Kill warn_unused_result warnings m68k: mac core - Kill warn_unused_result warnings m68k: hp300 core - Kill warn_unused_result warnings m68k: atari core - Kill warn_unused_result warnings m68k: apollo core - Kill warn_unused_result warnings m68k: amiga core - Kill warn_unused_result warnings m68k: Kill several external declarations in source files ...
2009-01-12m68k: dmasound - Kill warn_unused_result warningsGeert Uytterhoeven
warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
2009-01-12ALSA: Return proper error code at probe in sound/pcmcia/*Takashi Iwai
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: pdaudiocf - Fix missing free in the error pathTakashi Iwai
Added the missing snd_card_free() in the error path of probe callback. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: Return proper error code at probe in sound/usb/*Takashi Iwai
Some drivers in soudn/usb/* don't handle the error code properly from snd_card_create(). This patch fixes these places. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: Return proper error code at probe in sound/isa/*Takashi Iwai
Some drivers in sound/isa/* don't handle the error code properly from snd_card_create(). This patch fixes these places. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: Convert to snd_card_create() in other sound/*Takashi Iwai
Convert from snd_card_new() to the new snd_card_create() function in other sound subdirectories. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: Convert to snd_card_create() in sound/pci/*Takashi Iwai
Convert from snd_card_new() to the new snd_card_create() function in sound/pci/*. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-01-12ALSA: Convert to snd_card_create() in sound/isa/*Takashi Iwai
Convert from snd_card_new() to the new snd_card_create() function. Signed-off-by: Takashi Iwai <tiwai@suse.de>