aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'topic/asoc' of ↵Mark Brown2011-05-225-9/+9
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 into for-2.6.40
| * Merge branch 'for-2.6.40' of ↵Takashi Iwai2011-05-205-9/+9
| |\ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
| | * ASoC: twl6040 - fix LINEGAIN volume controlLiam Girdwood2011-05-131-3/+3
| | | | | | | | | | | | | | | | | | | | | Fix the TWL6040 LINEGAIN volume control to match the TRM. Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@ti.com>
| | * ASoC: tpa6130a2: Update e-mail addressPeter Ujfalusi2011-05-112-3/+3
| | | | | | | | | | | | | | | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@ti.com>
| | * ASoC: tlv320dac33: Update e-mail addressPeter Ujfalusi2011-05-112-3/+3
| | | | | | | | | | | | | | | | | | Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: spdif-dit: Add missing MODULE_*Stephen Warren2011-05-201-2/+6
|/ / | | | | | | | | | | | | | | | | | | | | MODULE_ALIAS is required so that the module will auto-load based on a platform_device registration in the board file. While we're at it, add some other MODULE_*. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Asahi Kasei AK4641 codec driverDmitry Artamonow2011-05-194-0/+717
| | | | | | | | | | | | | | | | | | | | | | A driver for the AK4641 codec used in iPAQ hx4700 and Glofiish M800 among others. Signed-off-by: Harald Welte <laforge@gnumonks.org> Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Max98095: Move existing NULL check before pointer dereference.Taylor Hutt2011-05-181-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | Visual inspection shows that max98095_put_eq_enum() and max98095_put_bq_enum() each have a possible NULL deref of 'pdata'. This change moves the NULL check above the use. Signed-off-by: Taylor Hutt <thutt@chromium.org> Acked-by: Peter Hsiang <Peter.Hsiang@maxim-ic.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Fix wrong data type access in a few codec driversJarkko Nikula2011-05-165-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit fafd217 ("ASoC: Store a list of widgets in a DAPM mux/mixer kcontrol") changed the control private data type that is passed to snd_soc_cnew when creating dapm mixer and mux controls. Commit did not update a few codec drivers that are using their own put callbacks and thus are accessing a wrong data type. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Tested-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Don't restart an already running WM8958 DSP2Mark Brown2011-05-161-0/+4
| | | | | | | | | | | | | | | | Don't want to upset the DSP. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
* | ASoC: Skip noop reconfiguration of WM8958 DSP2 algorithmsMark Brown2011-05-161-0/+19
| | | | | | | | | | | | | | | | | | | | If we're setting the currently applied value for one of the DSP algorithm configurations we can just skip all the handling as the control set is a noop. This ensures we do not disrupt a running DSP. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
* | ASoC: Add some missing volume update bit sets for wm_hubs devicesMark Brown2011-05-161-2/+6
| | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com> Cc: stable@kernel.org
* | ASoC: Ensure output PGA is enabled for line outputs in wm_hubsMark Brown2011-05-161-8/+8
| | | | | | | | | | | | | | | | Also fix a left/right typo while we're at it. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com. Cc: stable@kernel.org
* | ASoC: codecs: max98088: Added digital mute function in DAI1 and DAI2Jin Park2011-05-152-0/+45
| | | | | | | | | | | | | | | | Added digital mute function in DAI1 and DAI2. Signed-off-by: Jin Park <jinyoungp@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: codecs: max98088: Moved the EX Limiter Mode from dapm widget to controlJin Park2011-05-151-5/+1
| | | | | | | | | | | | | | | | | | Moved the EX Limiter Mode from dapm widget to control, because it was not required DAPM route. Signed-off-by: Jin Park <jinyoungp@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: codecs: max98088: Fixed invalid register definitions in mixer controlsJin Park2011-05-151-12/+12
| | | | | | | | | | | | | | | | | | Fixed invalid register definitions in mixer controls such as left speaker mixer, left hp mixer and left rec mixer. Signed-off-by: Jin Park <jinyoungp@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: DMIC codec - Add input widgetMisael Lopez Cruz2011-05-121-1/+25
| | | | | | | | | | | | | | | | | | | | | | Digital microphones can have some additional elements in their audio path (like microphone bias). An input widget is required for digital microphone CODEC driver to allow external connections in machine drivers. Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com> Signed-off-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: fix wm8958-dsp2 printk format warningsRandy Dunlap2011-05-111-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Fix printk format warnings in wm8958-dsp2.c: sound/soc/codecs/wm8958-dsp2.c:103: warning: format '%d' expects type 'int', but argument 4 has type 'size_t' sound/soc/codecs/wm8958-dsp2.c:111: warning: format '%d' expects type 'int', but argument 3 has type 'size_t' sound/soc/codecs/wm8958-dsp2.c:144: warning: format '%d' expects type 'int', but argument 5 has type 'size_t' Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Disable WM8994/58 microphone detection over suspendMark Brown2011-05-111-0/+25
| | | | | | | | | | | | | | | | | | | | It will be non-functional with the basises and clocks off anyway, if the system needs microphone detection enabled over suspend then it should be causing the CODEC to ignore suspend using the APIs for that to prevent the biases being disabled. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | ASoC: Fix NULL vs. 0 warning in SSM2602Mark Brown2011-05-111-1/+1
| | | | | | | | | | | | | | | | sparse complains if 0 is used as a NULL pointer constant. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Mike Frysinger <vapier@gentoo.org> Acked-by: Liam Girdwood <lrg@ti.com>
* | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-05-101-1/+1
|\ \ | |/ |/|
| * ASoC: WM8903: Fix Digital Capture Volume rangeStephen Warren2011-05-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | Increase the range of the Digital Capture Volume control to be 120 steps. Each step is 0.75dB, and the range starts at -72dB, giving a max setting of 18dB, which matches the latest datasheet, to the precision of the step size. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | Merge branch 'for-2.6.40' of ↵Takashi Iwai2011-05-105-155/+203
|\ \ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc
| * | ASoC: SSM2602: Provide dB ranges for the volume controlsLars-Peter Clausen2011-05-091-5/+16
| | | | | | | | | | | | | | | | | | | | | | | | Also fix the maximum value for the capture volume control. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Model power supply for the digital core as a DAPM widgetLars-Peter Clausen2011-05-091-19/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Model the power supply for the digital core as a DAPM_SUPPLY widget. This allows to cleanup the code a bit. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Add entry for the ssm2603 to the device id tableLars-Peter Clausen2011-05-091-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | The SSM2603 is mostly register compatible with the SSM2602 and can be supported by the current driver without any changes. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Add SSM2604 supportLars-Peter Clausen2011-05-091-53/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The SSM2604 is basically a lightweight variant of the SSM2602 with a compatible register layout. Thus we can easily support both devices by the same driver, by providing a slightly set of controls, widgets and routes. Compared to the SSM2602 the SSM2604 has no microphone input and no headphone output. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Do not power the codec up in probeLars-Peter Clausen2011-05-091-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is not required to have the codec powered at this stage and DAPM will power the ADC and DAC down again after probe has run anyway. Thus we avoid some unnecessary writes by this change. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Fix default register cacheLars-Peter Clausen2011-05-091-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some of the values in the default register cache did not represent the codecs state after reset. This patch fixes it. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-05-081-2/+0
| |\ \ | | |/
| | * ASoC: UDA134x: Remove POWER_OFF_ON_STANDBY define.Marek Belisko2011-05-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define POWER_OFF_ON_STANDBY cause trobles when trying to get some sound from codec because code for bias setup was not compiled (define wasn't defined). This define was removed in commit: cc3202f5 but again introduced by commit: f0fba2ad1 which then completely break codec functionality so remove it again. Signed-off-by: Marek Belisko <marek.belisko@open-nandra.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| * | ASoC: SSM2602: Remove unused struct and defineLars-Peter Clausen2011-05-081-6/+0
| | | | | | | | | | | | | | | | | | | | | Those are leftovers from a pre-multicomponent era. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Remove duplicate controlLars-Peter Clausen2011-05-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | There are currently two controls which allow selecting the capture source, one as a normal control, the other as part of a DAPM_MUX widget. Remove the normal control. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: SSM2602: Cleanup coeff handlingLars-Peter Clausen2011-05-081-40/+35
| | | | | | | | | | | | | | | | | | | | | | | | Drop unused field from the coeff struct, precalculate the srate register at compile-time and cleanup up the naming. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | Merge branch 'for-2.6.39' into for-2.6.40Mark Brown2011-05-081-5/+5
| |\ \ | | |/
| | * ASoC: SSM2602: Fix reg_cache_sizeLars-Peter Clausen2011-05-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | reg_cache_size is supposed to be the number of elements in the register cache, not the size in bytes. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * ASoC: SSM2602: Fix 'Mic Boost2' controlLars-Peter Clausen2011-05-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The 'Mic Boost2' control's shift was off by one and thus was not working. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
| | * ASoC: SSM2602: Properly annotate i2c probe and remove functionsLars-Peter Clausen2011-05-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Annotate the i2c probe and remove functions with __devinit and __devexit. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | ASoC: Remove outdated FIXME from WM8915Mark Brown2011-05-031-1/+0
| | | | | | | | | | | | | | | | | | | | | Actually the current code is perfectly sensible given the hardware. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
| * | ASoC: Use shared controls for input signal path in WM8915Mark Brown2011-05-031-20/+25
| | | | | | | | | | | | | | | | | | | | | Gives finer grained power management. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
| * | ASoC: s/w->kcontrols/w->kcontrol_news/gStephen Warren2011-05-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A future change will modify struct snd_soc_dapm_widget to store the actual kcontrol pointers for each kcontrol_new in a field named kcontrols. Rename the existing kcontrols field to enable this. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | | Merge branch 'for-2.6.40' of ↵Takashi Iwai2011-05-101-5/+8
|\ \ \ | |/ / |/| | | | | git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc-2.6 into topic/asoc
| * | ASoC: tlv320dac33: Lower the OSC calibration timePeter Ujfalusi2011-04-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To get correct calibration, we can decrease the time needed for the OSC to calibrate itself. With this change we can save ~15ms in the OSC calibration phase. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
| * | ASoC: tlv320dac33: Move codec power up to DAPMPeter Ujfalusi2011-03-261-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the codec power on (in reg 0x01, bit 4) from set_bias_level:SND_SOC_BIAS_ON to a DAPM supply. In this way we can be sure, that all the things within the codec is powered before the external amp is going to be enabled. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
* | | ASoC: Implement WM8962 ADC high pass filter configurationMark Brown2011-04-271-0/+10
| | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: Don't warn if the WM8962 SYSCLK FLL setting doesn't match realityMark Brown2011-04-261-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | When bringing up audio low power modes boards may configure SYSCLK before they actually start the FLL as we do much of the clocking setup prior to the power up sequence. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: Implement WM8962 DMIC supportMark Brown2011-04-261-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DMIC support is automatically disabled when none of the GPIOs are set up to bring out the DMICCLK and DMICDAT pins at startup. Note that there's no support for controlling DMIC routing except the power control so the board DAPM configuration will need to manage DMIC enable and disable if analogue mics (eg, a headset) also exist. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: Move WM8962 FLL configuration to CODECMark Brown2011-04-261-3/+2
| | | | | | | | | | | | | | | | | | | | | There's only one DAI anyway. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: Support FLL lock interrupt on WM8962Mark Brown2011-04-261-1/+15
| | | | | | | | | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* | | ASoC: Support 24.576MHz MCLKs in WM8915Mark Brown2011-04-261-2/+5
| | | | | | | | | | | | | | | | | | | | | We can safely divide these down to within the supported SYSCLK range. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>