aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
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-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]>
2010-07-01ASoC: ak4642: Add Digital Playback Volume controlKuninori Morimoto1-3/+21
Signed-off-by: Kuninori Morimoto <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-30ASoC: uda134x: correct bias level setup for codecs familyVladimir Zapolskiy1-4/+32
For UDA1341 codec power control is managed in STATUS1 register, and for all other codecs in DATA011 register. Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-30ASoC: uda134x: add DATA011 register found in codecs familyVladimir Zapolskiy2-3/+5
In UDA1340, UDA1344 and UDA1345 codecs there is one more functional register in part of DATA0 tranfser. For UDA1341 this register coincides with EA register. Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-30Merge remote branch 'takashi/topic/asoc' into for-2.6.36Mark Brown3-32/+84
2010-06-25ASoC: clean i.MX KconfigEric Bénard1-8/+6
Signed-off-by: Eric Bénard <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-25ASoC: uda134x: fix bias level setup on initializationVladimir Zapolskiy1-4/+8
On initialization ADC/DAC are enabled only for UDA1341, that's why bias_level shall be set to off explicitly, otherwise dapm is misinformed about bias_level on startup. Signed-off-by: Vladimir Zapolskiy <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-25ASoC: uda134x: replace a macro with a value in platform struct.Vladimir Zapolskiy2-16/+17
This change wipes out a hardcoded macro, which enables codec bias level control. Now is_powered_on_standby value shall be used instead. Signed-off-by: Vladimir Zapolskiy <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-24Merge branch 'for-2.6.36' of ↵Takashi Iwai3-32/+84
git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
2010-06-23ASoC: RX-51: Add basic jack detectionJarkko Nikula1-1/+28
This patch adds GPIO jack detection to Nokia N900/RX-51. At the moment only SND_JACK_VIDEOOUT type is reported. More types could be reported after getting more audio features supported and necessary drivers integrated for implementing automated accessory detection. Signed-off-by: Jarkko Nikula <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-06-23ASoC: RX-51: Add Jack Function kcontrolJarkko Nikula1-0/+44
Nokia RX-51/N900 has multifunction 4-pole audio-video jack that can be used as headphone, headset or audio-video connector. This patch implements the control 'Jack Function' which is used to select the desired function. At the moment only TV-out without audio is supported. Signed-off-by: Jarkko Nikula <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-06-23codecs/tlv320aic23: fix bias management for suspend/resumeEric Bénard1-3/+4
in tlv320aic23_set_bias_level, for the case SND_SOC_BIAS_ON, the comment says "vref/mid, osc on, dac unmute" but the code doesn't clear the corresponding bits, thus when resuming, several bits are not cleared preventing the codec from working. in tlv320aic23_suspend, clearing the active register is not needed as it will be done by tlv320aic23_set_bias_level, when setting bias to SND_SOC_BIAS_OFF Signed-off-by: Eric Bénard <[email protected]> Cc: [email protected] Cc: [email protected] Cc: [email protected] Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-06-23ASoC: JZ4740: Add qi_lb60 board driverLars-Peter Clausen3-0/+179
This patch adds ASoC support for the qi_lb60 board. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-23ASoC: Add JZ4740 codec driverLars-Peter Clausen4-0/+537
This patch adds support for the JZ4740 internal codec. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-23ASoC: Add JZ4740 ASoC supportLars-Peter Clausen8-0/+978
This patch adds ASoC support for JZ4740 SoCs I2S module. Signed-off-by: Lars-Peter Clausen <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-21ASoC: pandora: fix CLKX polarityGrazvydas Ignotas1-28/+8
After mass production started it was found that several boards exhibit noise problems during sound playback. After some investigation it was determined that CLKX polarity is set incorrectly, and even if most boards can tolerate the wrong setting, there are some that don't. Fix polarity setup in the board file. As the clock settings for input and output now match, merge in and out functions and structures to simplify code. Signed-off-by: Grazvydas Ignotas <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-06-20ASoC: Fix sorting of DA7210 entries in KconfigMark Brown1-4/+4
Signed-off-by: Mark Brown <[email protected]>
2010-06-19ASoC: Fix overflow bug in SOC_DOUBLE_R_SX_TLVStuart Longland1-2/+2
When SX_TLV widgets are read, if the gain is set to a value below 0dB, the mixer control is erroniously read as being at maximum volume. The value read out of the CODEC register is never sign-extended, and when the minimum value is subtracted (read; added, since the minimum is negative) the result is a number greater than the maximum allowed value for the control, and hence it saturates. Solution: Mask the result so that it "wraps around", emulating sign-extension. Signed-off-by: Stuart Longland <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-18ASoC: eukrea-tlv320: add support for our i.MX25 boardEric Bénard2-2/+3
* tdm slot has to be configured to get sound working on i.MX25 Signed-off-by: Eric Bénard <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-16ASoC: Fix I2C dependency for SND_FSI_AK4642 and SND_FSI_DA7210Peter Huewe1-2/+2
The config option SND_FSI_AK4642 selects SND_SOC_AK4642 which in turn enables the compilation of ak4642.c - however this codec uses I2C to communicate with the HW. Same applies to DA7210. Consequently when I2C is not set, the compilation fails [1] This patch fixes this issues, by adding a depencdency on the related HW- controller. Signed-off-by: Peter Huewe <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-16ASoC: Pay attention to write errors in volsw_2r_sxMark Brown1-4/+2
Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-06-15ASoC: Default WM2000 ANC and speaker to enabledMark Brown1-0/+2
The most useful configuration for the WM2000 is to enable the ANC so turn that on by default, and since we're not reflecting chip default state also enable the speaker output by default. Signed-off-by: Mark Brown <[email protected]> Acked-by: Liam Girdwood <[email protected]>
2010-06-15Merge branch 'for-2.6.35' into for-2.6.36Mark Brown1-2/+0
2010-06-15ASoC: DaVinci: Fix McASP hardware FIFO configurationSudhakar Rajashekhara1-2/+0
On DA830/OMAP-L137 and DA850/OMAP-L138 SoCs, the McASP peripheral has FIFO support. This FIFO provides additional data buffering. It also provides tolerance to variation in host/DMA controller response times. More details of the FIFO operation can be found at http://focus.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=sprufm1&fileType=pdf Existing sequence of steps for audio playback/capture are: a. DMA configuration b. McASP configuration (configures and enables FIFO) c. Start DMA d. Start McASP (enables FIFO) During McASP configuration, while FIFO was being configured, FIFO was being enabled in davinci_hw_common_param() function of sound/soc/davinci/davinci-mcasp.c file. This generated a transmit DMA event, which gets serviced when DMA is started. https://patchwork.kernel.org/patch/84611/ patch clears the DMA events before starting DMA, which is the right thing to do. But this resulted in a state where DMA was waiting for an event from McASP (after step c above), but the event which was already there, has got cleared (because of step b above). The fix is not to enable the FIFO during McASP configuration as FIFO was being enabled as part of McASP start. Signed-off-by: Sudhakar Rajashekhara <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-15ASoC: header cleanup for da7210Kuninori Morimoto1-9/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-15ASoC: header cleanup for ak4642Kuninori Morimoto1-8/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-15ASoC: header cleanup for FSI-DA7210Kuninori Morimoto1-9/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-15ASoC: header cleanup for FSI-AK4642Kuninori Morimoto1-9/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-15ASoC: header cleanup for FSIKuninori Morimoto1-9/+0
Signed-off-by: Kuninori Morimoto <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>
2010-06-12ASoC: Remove unused header from MPC5200 PSC driverGrant Likely2-13/+0
The header contains an extern that isn't used by anything. Remove. Signed-off-by: Grant Likely <[email protected]> Acked-by: Liam Girdwood <[email protected]> Signed-off-by: Mark Brown <[email protected]>