summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs/wm5100.c
Commit message (Collapse)AuthorAgeFilesLines
...
* ASoC: wm5100: Implement DRC coefficient configurationMark Brown2012-02-211-0/+2
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge tag 'v3.3-rc3' as we've got several bugfixes in there which areMark Brown2012-02-091-1/+9
|\ | | | | | | | | | | | | | | | | | | | | | | colliding annoyingly with development. Linux 3.3-rc3 .. the number of the half-beast? Conflicts: sound/soc/codecs/wm5100.c sound/soc/codecs/wm8994.c
| * ASoC: wm5100: Mark register cache as dirty when regulators are disabledMark Brown2012-01-251-0/+1
| | | | | | | | | | | | Otherwise we won't resync later. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: wm5100: Fix microphone configurationMark Brown2012-01-251-1/+8
| | | | | | | | | | | | | | | | We need to write the configuration for each microphone to a different register. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@vger.kernel.org
| * ASoC: wm5100: Make sure we switch to button reporting modeMark Brown2012-01-251-0/+2
| | | | | | | | | | | | | | | | When we have identified an accessory make sure we've flagged that we've done so in order to make sure we always report buttons and don't continue to polarity flip. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Handle failures to determine accessory polarityMark Brown2012-02-011-12/+25
| | | | | | | | | | | | | | | | If we get an indeterminate impedance with both headset polarities then give up and report the accessory as a headphone rather than continually retrying. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Use pm_runtime for powerdown managmentMark Brown2012-01-261-60/+56
| | | | | | | | | | | | | | | | | | | | Using pm_runtime to decide if the device should go into full power down has the dual advantage of allowing easier integration with non-DAPM reasons to power on the device (like the FLL) and allowing userspace to control the final power down which is useful for tuning retention of DSP firmware. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Convert to devm_regulator_bulk_get()Mark Brown2012-01-261-8/+4
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Move regulator supplies over to DAPM infrastructureMark Brown2012-01-261-121/+10
| | | | | | | | | | | | Saves a nice block of code. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Fix warnings from recent patchesMark Brown2012-01-241-2/+1
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Convert the WM5100 revision A updates to a regmap patchMark Brown2012-01-241-29/+17
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm5100: Fix mismerge of IRQ freesMark Brown2012-01-241-4/+0
| | | | | | | | | | | | We only want them at the device level, not at the CODEC level. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Push WM5100 interrupt request into I2C probeMark Brown2012-01-201-58/+63
| | | | | | | | | | | | | | This is more what the device model wants us to do and will allow use by non-audio functions before the audio part of the device has come up. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Make WM5100 interrupt path use regmap directlyMark Brown2012-01-201-80/+108
| | | | | | | | | | | | | | | | This will allow us to move the interrupt allocation out of the ASoC part of the driver and simplifies the locking by removing any reliance in the bulk of the interrupt path on the big CODEC lock. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove redundant set_bias_level() from WM5100 remove()Mark Brown2012-01-201-1/+0
| | | | | | | | | | | | The framework should bring the device down before it calls the driver. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Say we can't read WM5100 ID registerMark Brown2012-01-201-1/+1
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: When releasing WM5100 put /RESET into resetMark Brown2012-01-201-2/+2
|/ | | | | | | Reset is active low, make sure we leave it asserted when release the device. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Don't go through cache when applying WM5100 rev A updatesMark Brown2012-01-201-0/+2
| | | | | | | | | These are all to either uncached registers or fixes to register defaults, in the former case the cache won't do anything and in the latter case we're fixing things so the cache sync will do the right thing. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Mark WM5100 register map cache only when going into BIAS_OFFMark Brown2012-01-201-0/+1
| | | | | | | | Writing to the registers won't work if we do actually manage to hit a fully powered off state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Enable ASoC register map dump for some regmap CODECsMark Brown2011-12-301-0/+9
| | | | | | | It's still useful to be able to poke around in the register map at runtime. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Make WM5100 tone generator widgets signal generatorsMark Brown2011-12-021-1/+1
| | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
* ASoC: Remove unneeded platform_device.h inclusions from CODECsMark Brown2011-11-271-1/+0
| | | | | | They've not been needed for a long time if they were ever required. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Use devm_kzalloc() in wm5100Mark Brown2011-11-251-5/+4
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Constify snd_soc_dai_ops structsLars-Peter Clausen2011-11-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Commit 1ee46ebd("ASoC: Make the DAI ops constant in the DAI structure") introduced the possibility to have constant DAI ops structures, yet this is barley used in both existing drivers and also new drivers being submitted, although none of them modifies its DAI ops structure. The later is not surprising since existing drivers are often used as templates for new drivers. So this patch just constifies all existing snd_soc_dai_ops structs to eliminate the issue altogether. The patch was generated with the following coccinelle semantic patch: // <smpl> @@ identifier ops; @@ -struct snd_soc_dai_ops ops = +const struct snd_soc_dai_ops ops = { ... }; // </smpl> Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Move WM5100 platform data based setup into I2C probeMark Brown2011-11-101-18/+18
| | | | | | | Get things configured as early as possible, especially useful for the GPIOs which might be useful anyway. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert WM5100 gpiolib support to direct regmap API usageMark Brown2011-11-091-27/+25
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Move most WM5100 resource allocation to I2C probeMark Brown2011-11-091-132/+131
| | | | | | More standard Linuxish. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Need to convert wm5100 cache sync to direct regmap usage tooMark Brown2011-11-091-1/+1
| | | | | | ASoC knows nothing about the cache now. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert wm5100 to direct regmap API usageMark Brown2011-11-081-11/+38
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix return value of wm5100_gpio_direction_out()Mark Brown2011-10-311-4/+8
| | | | | | | We can't just pass back the return value of snd_soc_update_bits() as it will be 1 if a bit changed rather than zero. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Update WM5100 accessory detection for revision AMark Brown2011-10-131-0/+3
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Implement WM5100 accessory detection supportMark Brown2011-10-111-0/+162
| | | | | | | | | The WM5100 includes an advanced, low power, accessory detect subsystem capable of detecting both accessory presence and button presses while the device is in an ultra low power mode. Implement initial support for this. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix typo in 24.576MHz rate in WM5100Mark Brown2011-10-031-2/+2
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Remove needless codec->dapm.bias_level assignment to SND_SOC_BIAS_OFFAxel Lin2011-10-031-2/+0
| | | | | | | | This assignment is done by the snd_soc_register_codec so there is no need to redo it in probe function of a codec driver. Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add missed free_irq in wm5100_remove and wm5100_probe error pathAxel Lin2011-09-231-0/+5
| | | | | Signed-off-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add missed BCLK rate to WM5100 driverMark Brown2011-09-221-0/+1
| | | | | Reported-by: Axel Lin <axel.lin@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Dynamically manage DBVDD2 and DBVDD3 on WM5100Mark Brown2011-09-221-1/+81
| | | | | | | Allow the DBVDD2 and DBVDD3 rails to be powered down when idle, helping fully power down connected devices when idle. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add WM5100 driverMark Brown2011-09-201-0/+2560
The WM5100 is a highly integrated low power audio subsystem with advanced digital signal processing capabilities including effects, speech clarity enhancement and active noise cancellation. This initial driver provides support for basic audio paths, further patches will provide more complete functionality. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>