aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-07-23ASoC: da7210: Add HeadPhone Playback Volume controlKuninori Morimoto1-4/+27
HeadPhone Playback Volume control register of DA7210 has reserved area. This patch considered it as mute. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-21Merge branch 'for-2.6.36' of ↵Takashi Iwai3-41/+63
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
2010-07-21ASoC: TWL4030: Add configurable delay after digimic enablePeter Ujfalusi2-4/+22
When digital microphones are connected to twl, delay is needed after enabling the digimic interface of the codec. Add new parameter for the setup data, which can be used to pass the apropriate delay in ms after the digimic interface has been enabled. Without certain delay (in certain HW configuration) the beggining of the recorded sample contains a glitch, which is generated by the digital microphones. Delaying the micbias1, 2 (which is the bias for the digimic0 or 1) does not help, since the glitch is coming after switching the digimic interface. Reversing the micbias and digimic enable order does not work either (in that case the wait need to be added after the micbias enabled). Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-20ASoC: Unconditionally enable WM8994 AIF1ADC TDM modeMark Brown1-0/+5
AIF1ADC TDM mode has no effect other than causing the ADCDAT line to be tristated rather than driven low on clock cycles where there is no data to be transmitted. If the clock cycle is idle then there should be no devices using the data so tristating should have no adverse effects. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-20ASoC: davinci: let platform data define edma queue numbersSekhar Nori8-10/+25
Currently the EDMA queue to be used by for servicing ASP through internal RAM is fixed to EDMAQ_0 and that to service internal RAM from external RAM is fixed to EDMAQ_1. This may not be the desirable configuration on all platforms. For example, on DM365, queue 0 has large fifo size and is more suitable for video transfers. Having audio and video transfers on the same queue may lead to starvation on audio side. platform data as defined currently passes a queue number to the driver but that remains unused inside the driver. Fix this by defining one queue each for ASP and RAM transfers in the platform data and using it inside the driver. Since EDMAQ_0 maps to 0, thats the queue that will be used if the asp queue number is not initialized. None of the platforms currently utilize ping-pong transfers through internal RAM so that functionality remains unchanged too. This patch has been tested on DM644x and OMAP-L138 EVMs. Signed-off-by: Sekhar Nori <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-20ASoC:Support Samsung SoC(S5P) in I2Sv2Chanwoo Choi1-1/+2
This patch modify I2Sv2 driver to support Samsung SoC(S5PV210). Signed-off-by: Chanwoo Choi <[email protected]> Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-20Merge branch 'for-2.6.35' into for-2.6.36Mark Brown1-2/+2
2010-07-20ASoC: Select wm_hubs automatically for WM8994Chanwoo Choi1-2/+2
Otherwise all machine drivers need to do so. Signed-off-by: Chanwoo Choi <[email protected]> Signed-off-by: Joonyoung Shim <[email protected]> Signed-off-by: Kyungmin Park <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-20ASoC: Implement WM8994 AIF1ADC2 pathsMark Brown1-0/+27
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-20ASoC: Explicitly disable DC servo on WM hubs headphone powerdownMark Brown1-0/+2
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-20ASoC: eukrea-tlv320: add support for cpuimx35sdEric Bénard2-2/+3
Signed-off-by: Eric Bénard <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-17ASoC: imx: check kzalloc() result and fix memory leakKulikov Vasiliy1-1/+5
If kzalloc() fails we must exit with -ENOMEM. Also we must free allocated runtime->private_data on error as it would be lost on next call to snd_imx_open(). Signed-off-by: Kulikov Vasiliy <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-17ASoC: imx: check kzalloc() result and fix memory leakKulikov Vasiliy1-1/+5
If kzalloc() fails we must exit with -ENOMEM. Also we must free allocated runtime->private_data on error as it would be lost on next call to snd_imx_open(). Signed-off-by: Kulikov Vasiliy <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-17ASoC: davinci: check kzalloc() result (typo)Kulikov Vasiliy1-1/+1
The code checks 'davinci_vc' after kzalloc() and do not checks 'davinci_vcif_dev' that kzalloc() result is assigned to. It seems that it is a typo (autocompletion?). Signed-off-by: Kulikov Vasiliy <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-17ASoC: fsi: Add specified ID for soc-audioKuninori Morimoto3-4/+7
Specified ID is necessary, when some codecs are used with FSI. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-17Merge branch 'for-2.6.35' into for-2.6.36Mark Brown1-1/+0
2010-07-17ASoC: Remove duplicate AUX definition from WM8776Mark Brown1-1/+0
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]> Cc: [email protected]
2010-07-17ASoC: TWL6040: Correct widget handling for driversJorge Eduardo Candelaria1-28/+28
In order to reduce pop-noise at powering up/down of the DACs and Drivers, these components have to be handled in a specific sequence. Headset, Handsfree, and Earphone drivers are now registered as PGA components to ensure DACs are enabled first. Also, add a delay to leave time for DACs to settle before continuing power up/down sequence. Signed-off-by: Jorge Eduardo Candelaria <[email protected]> Signed-off-by: Margarita Olaya Cabrera <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-14ASoC: Handle read failures in codec_regMark Brown1-5/+17
When a device is powered down volatile registers can't be read so attempts to display codec_reg will show error values, and obviously it is also possible for there to be hardware errors too. Check for errors from reads and display them more clearly when formatting codec_reg. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-14Merge branch 'for-2.6.35' into for-2.6.36Mark Brown2-1/+2
2010-07-14ASoC:: remove a redundant snd_soc_unregister_codec call in wm8988_registerAxel Lin1-1/+0
snd_soc_unregister_codec is called twice if snd_soc_register_dai fail. Signed-off-by: Axel Lin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-14ASoC: wm8727: add a missing return in wm8727_platform_probeAxel Lin1-0/+2
otherwise the error path will always be executed. Signed-off-by: Axel Lin <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: au1x: fix section mismatch in psc-i2s.cManuel Lauss1-1/+1
Annotate platform probe callback with __devinit instead of plain __init. Signed-off-by: Manuel Lauss <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: kirkwood-i2s: Handle mute/unmute playback/record[email protected]1-8/+10
The controller has mute/unmute capability and some bootloader may mute them at boot. If it's not handled, all things will seem to be working but no sound will come out of the speaker/headphone. Signed-off-by: Arnaud Patard <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: Fix kirkwood i2s mono playback[email protected]2-0/+12
Kirkwood controller needs to be informed if the audio stream is mono or not. Failing to do so will result in playing at the wrong speed. Signed-off-by: Arnaud Patard <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: Fixup for master modeKuninori Morimoto2-6/+124
This patch add hw_params to snd_soc_dai_ops, because board specific set_rate is needed when FSI was used as master mode. This patch remove fsi_clk_ctrl from fsi_dai_startup, because clock should be disabled before set_rate. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: Add pr_err for noticing unsupported accessKuninori Morimoto1-6/+18
This patch didn't use dev_err, because it is difficult to get struct device here. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: Change struct fsi_regs to fsi_coreKuninori Morimoto1-14/+22
Many registers which were grouped by category were added in FSI2. To make easy to switch FSI/FSI2, fsi_core was added instead of fsi_regs. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: remove noisy CR_FMT macroKuninori Morimoto1-13/+12
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: remove un-used variable on fsi_dai_startupKuninori Morimoto1-7/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: modify format area definition on flagsKuninori Morimoto1-6/+6
There is no necessity that each bit in this area has the meaning. This patch modify it to sequence number Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: Remove unnecessary casts of private_dataJoe Perches1-1/+1
Signed-off-by: Joe Perches <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: Remove unnecessary casts of private_dataJoe Perches2-8/+4
Signed-off-by: Joe Perches <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13Merge branch 'for-2.6.35' into for-2.6.36Mark Brown1-16/+11
2010-07-13ASoC: fsi: fixup wrong value setting order of TDMKuninori Morimoto1-2/+2
channel size should be set before setting register value Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: fsi: fixup clock inversion operationKuninori Morimoto1-14/+9
Clock inversion should be specified by each flags bit. Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-13ASoC: TWL4030: DAC power optimizationPeter Ujfalusi1-6/+9
Restructure the DAPM connections in order to enable only the needed DAC (out of four in twl4030 series). I need to keep the 'AIF Enable' supply connected to the L2/R2 digital path, since the digital loopback needs AIF and APLL running. If no valid route available, than none of the DAC will be powered, but the AIF and APLL is going to be enabled. Furthermore, if only one audio path have valid route, than only the corresponding DAC will be powered. Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-13ASoC: TWL4030: Fix for digital loopback gain rangePeter Ujfalusi1-3/+4
When the gain is configured using dB value it was not possible to use -24dB since the loopback got muted instead of -24dB. Signed-off-by: Peter Ujfalusi <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-09ASoC: Implement WM8994 OPCLK supportMark Brown2-0/+26
The WM8994 can output a clock derived from its internal SYSCLK, called OPCLK. The rate can be selected as a sysclk, with a division from the SYSCLK rate specified (multiplied by 10 since a division of 5.5 is supported) and the clock can be disabled by specifying a divisor of zero. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-09ASoC: Include WM8994 GPIO and interrupt registers in codec_regMark Brown1-0/+20
Very handy for debug. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-06ASoC: DaVinci: More accurate continuous serial clock for McBSP (I2S)Raffaele Recalcati2-5/+52
i2s_accurate_sck switch can be used to have a better approximate sampling frequency. The clock is an externally visible bit clock and it is named i2s continuous serial clock (I2S_SCK). The trade off is between more accurate clock (fast clock) and less accurate clock (slow clock). The waveform will be not symmetric. Probably it is possible to get a better algorithm for calculating the divider, trying to keep a slower clock as possible. This patch has been developed against the http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm, but using uda1345 as external audio codec). Signed-off-by: Raffaele Recalcati <[email protected]> Signed-off-by: Davide Bonfanti <[email protected]> Acked-by: Liam Girdwood <[email protected]> Acked-by: Sudhakar Rajashekhara <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-06ASoC: DaVinci: Added selection of clk input pin for McBSPRaffaele Recalcati2-5/+39
When McBSP peripheral gets the clock from an external pin, there are three possible chooses, MCBSP_CLKX, MCBSP_CLKR and MCBSP_CLKS. evm-dm365 uses MCBSP_CLKR, instead in bmx board I have a different hardware connection and I use MCBSP_CLKS, so I have added this possibility. This patch has been developed against the: http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm) Signed-off-by: Raffaele Recalcati <[email protected]> Signed-off-by: Davide Bonfanti <[email protected]> Acked-by: Liam Girdwood <[email protected]> Acked-by: Sudhakar Rajashekhara <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-06ASoC: DaVinci: Added two clocking possibilities to McBSP (I2S)Raffaele Recalcati2-9/+106
Added two clocking options for dm365 McBSP peripheral when used with I2S timings, that are SND_SOC_DAIFMT_CBS_CFS (the cpu generates clock and frame sync) and SND_SOC_DAIFMT_CBS_CFM (the cpu gets clock from external pin and generates frame sync). A slave clock management can be important when the external codec needs the system clock and the bit clock synchronized (tested with uda1345). This patch has been developed against the: http://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-davinci.git git tree and has been tested on bmx board (similar to dm365 evm, but using uda1345 as external audio codec). Signed-off-by: Raffaele Recalcati <[email protected]> Signed-off-by: Davide Bonfanti <[email protected]> Acked-by: Liam Girdwood <[email protected]> Acked-by: Sudhakar Rajashekhara <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-06ASoC: Invert speaker enabling behaviour in SmartQ sound driverMaurus Cuelenaere1-1/+0
The speaker was enabled when the headphone was plugged in, which isn't the wanted behaviour so correct this. Signed-off-by: Maurus Cuelenaere <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-06ASoC: Automatically manage ALC coefficients for WM8960Mark Brown1-0/+22
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-05ASoC: Automatically manage DAC deemphasis rate for WM8960Mark Brown1-0/+64
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-05ASoC: Remove current WM8960 deemphasis controlMark Brown1-8/+5
It will be replaced with automatic deemphasis rate configuration but since we have an enumeration table in this driver this is done in a separate commit to make the renumbering of the enumeration items clear. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-05ASoC: Fix sorting of Makefile and KconfigMark Brown2-2/+2
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-07-04ASoC: Add SmartQ sound driverMaurus Cuelenaere3-0/+304
This adds sound support for the SmartQ board. The hardware consists of a S3C6410 coupled with a WM8987 over I²S. The WM8750 driver is used for driving the WM8987, as they are register compatible. Signed-off-by: Maurus Cuelenaere <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-07-04ASoC: codec: Add WM8987 device id to WM8750 driverMaurus Cuelenaere1-1/+10
The WM8987 codec is register compatible with the WM8750, so just add it to the SPI and I²C device table. Signed-off-by: Maurus Cuelenaere <[email protected]> Signed-off-by: Mark Brown <[email protected]>