summaryrefslogtreecommitdiffstats
path: root/sound/soc/codecs
Commit message (Collapse)AuthorAgeFilesLines
* ASoC: Fix errors in WM8990Jinyoung Park2009-05-051-20/+20
| | | | | | | | | The mis-typing exist in dapm controller definitions and dapm route definitions, so happen mis-matched error when snd_soc_dapm_add_routes(). Cc: stable@kernel.org Signed-off-by: Jinyoung Park <parkjy@mtekvision.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com
* ASoC: TWL4030: Fix gain control for earpiece amplifierJoonyoung Shim2009-04-281-1/+7
| | | | | | | | | The gain control for earpiece amplifier uses 0dB ~ 12dB according to the TRM, but the present code is implemented to -6dB ~ 6dB. Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Acked-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix logic in WM8350 master clocking checkMark Brown2009-04-271-1/+1
| | | | | | | We need to check only if the WM8350 is master and only when starting the stream so if either is not true then we can skip the check. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* Merge commit 'takashi/fix/asoc' into for-2.6.30Mark Brown2009-04-231-1/+0Star
|\
| * ASoC: remove non-existing referece to CONFIG_SND_SOC_CODEC_WM8991Takashi Iwai2009-04-231-1/+0Star
| | | | | | | | Signed-off-by: Takashi Iwai <tiwai@suse.de>
* | ASoC: Fix WM8580 volume update handling for large register changesMark Brown2009-04-221-5/+9
| | | | | | | | | | | | The driver is out of sync with the core functions it is using. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Fix offset of freqmode in WM8580 PLL configurationMark Brown2009-04-211-1/+1
|/ | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
* ASoC: Fix warning in wm9705Russell King - ARM Linux2009-04-181-1/+1
| | | | | | | | | | | | I notice that the fixes were merged, minus one: sound/soc/codecs/wm9705.c: At top level: sound/soc/codecs/wm9705.c:445: warning: initialization from incompatible pointer type so you might find this trivial patch useful. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Compillation error fixPeter Ujfalusi2009-04-071-4/+6
| | | | | | | Fix for compillation error introduced by the constrain patch. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Fix null dereference in ak4535_remove()Dan Carpenter2009-04-061-1/+2
| | | | | | | | | | ak4535_remove() from sound/soc/codecs/ak4535.c calls i2c_unregister_device() with a possibly null pointer. This bug was found by smatch (http://repo.or.cz/w/smatch.git/). Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add actual support for 96KHz playback supportPeter Ujfalusi2009-04-032-0/+4
| | | | | | | Adds the needed code to be able to use 96KHz playback. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Implement suspend and resume operations for WM9705Mark Brown2009-04-021-0/+37
| | | | | | | Without this the WM9705 driver fails badly when resuming. Tested-by: Russell King <linux@arm.linux.org.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add constrains for second streamPeter Ujfalusi2009-04-021-0/+54
| | | | | | | | | In case of duplex mode (capture and playback at the same time), the second stream has to have the same parameters (rate, sample size) as the already running stream. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: 96KHz playback supportPeter Ujfalusi2009-04-021-1/+1
| | | | | | | TWL4030 supports 96KHz sample playback, but only playback. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add FLL support for WM8400Mark Brown2009-03-191-0/+129
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add separate AVDD for WM8400Mark Brown2009-03-181-0/+3
| | | | | | | There is an AVDD supply as well, normally one or more of the other upplies would be tied to it. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Further optimise WM8400 bias configuration sequenceMark Brown2009-03-181-25/+2Star
| | | | | | | The active discharge does not bring sufficient benefit to justify the lengthy times involved so don't do that. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: twl4030 - Fix build errorJoonyoung Shim2009-03-161-5/+7
| | | | | | | | | | | | | | | | | | | | CC sound/soc/codecs/twl4030.o sound/soc/codecs/twl4030.c:1400: warning: braces around scalar initializer sound/soc/codecs/twl4030.c:1400: warning: (near initialization for 'twl4030_dai.ops') sound/soc/codecs/twl4030.c:1401: error: field name not in record or union initializer sound/soc/codecs/twl4030.c:1401: error: (near initialization for 'twl4030_dai.ops') sound/soc/codecs/twl4030.c:1401: warning: initialization from incompatible pointer type sound/soc/codecs/twl4030.c:1402: error: field name not in record or union initializer sound/soc/codecs/twl4030.c:1402: error: (near initialization for 'twl4030_dai.ops') sound/soc/codecs/twl4030.c:1402: warning: excess elements in scalar initializer sound/soc/codecs/twl4030.c:1402: warning: (near initialization for 'twl4030_dai.ops') sound/soc/codecs/twl4030.c:1403: error: field name not in record or union initializer sound/soc/codecs/twl4030.c:1403: error: (near initialization for 'twl4030_dai.ops') sound/soc/codecs/twl4030.c:1403: warning: excess elements in scalar initializer sound/soc/codecs/twl4030.c:1403: warning: (near initialization for 'twl4030_dai.ops') Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Replace remaining uses of snd_soc_cnew with snd_soc_add_controls.Philipp Zabel2009-03-123-35/+11Star
| | | | | | | | | The drivers are basically duplicating the same code over and over. As snd_soc_cnew is going to be made static some time after the next merge window, we might as well convert them now. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Move WM8580 to normal I2C device probeMark Brown2009-03-122-173/+158Star
| | | | | | | Refactor the WM8580 device registration to probe via standard I2C device registration, registering the DAIs once the device has probed via I2C. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Merge dai_ops factor outMark Brown2009-03-1125-220/+295
|\ | | | | | | | | | | | | | | Merge Eric Maio's patch to merge snd_soc_dai_ops out of line. Fixed merge issues and updated drivers, plus an issue with the ops for the two s3c2443 AC97 DAIs having been merged. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * ASoC: make ops a pointer in 'struct snd_soc_dai'Eric Miao2009-03-0423-211/+282
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Considering the fact that most cpu_dai or codec_dai are using a same 'snd_soc_dai_ops' for several similar interfaces, 'ops' would be better made a pointer instead, to make sharing easier and code a bit cleaner. The patch below is rather preliminary since the asoc tree is being actively developed, and this touches almost every piece of code, (and possibly many others in development need to be changed as well). Building of all codecs are OK, yet to every SoC, I didn't test that. Signed-off-by: Eric Miao <eric.miao@marvell.com> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove version display from WM8580 driverMark Brown2009-03-111-4/+0Star
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Add initial driver for the WM8400 CODECMark Brown2009-03-114-0/+1547
| | | | | | | | | | | | | | | | | | | | | | | | The WM8400 is a highly integrated audio CODEC and power management unit intended for mobile multimedia application. This driver supports the primary audio CODEC features, including: - 1W speaker driver - Fully differential headphone output - Up to 4 differential microphone inputs Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Add a driver for AK4104 S/PDIF transmitterDaniel Mack2009-03-094-0/+376
| | | | | | | | | | | | | | | | | | | | | | This adds a driver for the SPI connected AK4104 S/PDIF transmitter device. Its features are fairly simple, but as there is need to set up certain bits in the IEC958 information, this better goes into a real driver. Signed-off-by: Daniel Mack <daniel@caiaq.de> Cc: Mark Brown <broonie@sirena.org.uk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove unneeded forward reference to WM8753 SPI implementationMark Brown2009-03-081-5/+0Star
| | | | | | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: bring cs4270 feature/limitations list in syncDaniel Mack2009-03-081-8/+7Star
| | | | | | | | | | | | | | | | | | Removes numbers from the list of features/limitations and makes it reflect recent changes to the code. Signed-off-by: Daniel Mack <daniel@caiaq.de> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Blackfin: fix typo in MUTE definitionMike Frysinger2009-03-061-1/+1
| | | | | | | | | | | | | | Reported-by: Rob Maris <maris.rob@vdi.de> Signed-off-by: Mike Frysinger <vapier.adi@gmail.com> Signed-off-by: Bryan Wu <cooloney@kernel.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: TWL4030: Make the HS ramp delay configurablePeter Ujfalusi2009-03-061-4/+14
| | | | | | | | | | | | | | Enum type for selecting the desired ramp delay for the headset output. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: wm8510 pll settingsJonas Andersson2009-03-041-2/+2
| | | | | | | | | | | | | | | | | | | | When setting WM8510_MCLKDIV the pll was turned off. When setting pll frequency you got twice the expected freq, because the code calculated with postscaler of 8, but the hardware divide by 4. Signed-off-by: Jonas Andersson <jonas@microbit.se> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: UDA1380: DATAI is slave onlyPhilipp Zabel2009-03-031-2/+7
| | | | | | | | | | | | | | Only allow SND_SOC_DAIFMT_CBS_CFS for the playback DAI. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: UDA1380: change decimator/interpolator register handlingPhilipp Zabel2009-03-031-54/+48Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the UDA1380's interpolator or decimator are set to be clocked from the WSPLL (which syncs to the WSI signal), the DAI link must be running to change the interpolator/decimator registers (which include volume controls and digital mute setting). * Queue work in the alsa PCM_START .trigger to flush registers as soon as the link is running. This replaces the .prepare and .digital_mute callbacks. * Use the SILENCE override instead of MTM for muting and remove its alsa control to avoid confusion. Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* | ASoC: Remove version display from the UDA1380 driverPhilipp Zabel2009-03-031-4/+0Star
|/ | | | | Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: fix typo and removed unneeded switch case for cs4270Daniel Mack2009-03-021-3/+1Star
| | | | | | | | | This removes a misspelled comment and got rid of superfluous switch case. Signed-off-by: Daniel Mack <daniel@caiaq.de> Acked-by: Timur Tabi <timur@freescale.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add cs4270 support for slave mode configurationsDaniel Mack2009-02-281-1/+23
| | | | | | | | Added support for scenarios where the Cirrus CS4270 audio codec is slave to the bitclk and lrclk. Mixed setups are unsupported. Signed-off-by: Daniel Mack <daniel@caiaq.de> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: wm8753 - Fix build errorTakashi Iwai2009-02-261-1/+2
| | | | | | | | sound/soc/codecs/wm8753.c: In function 'wm8753_probe': sound/soc/codecs/wm8753.c:1577: error: implicit declaration of function 'wm8753_add_controls' Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
* ASoC: Only write back non-default registers when resuming WM8753Mark Brown2009-02-251-0/+5
| | | | | | | | This will reduce the number of writes done on resume, allowing that to complete faster (especially on systems with very slow I2C like the current Samsung driver). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Convert WM8753 to register via normal device probeMark Brown2009-02-252-204/+171Star
| | | | | | | The base support for the only in-tree user, the GTA01, is out of tree and will be updated separately. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Shuffle WM8753 device registration codeMark Brown2009-02-251-104/+105
| | | | | | | This patch should be pure code motion, separating that out from the functional changes to move to new style device registration. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Improve WM9713 voice DAC shutdown procedureMark Brown2009-02-251-3/+4
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Only unregister drivers we registered for WM8753Mark Brown2009-02-221-3/+7
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Report I/O errors from WM8753 resetMark Brown2009-02-221-1/+5
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Disable WM8731 line bypass by defaultMark Brown2009-02-191-0/+4
| | | | | | | | This avoids temporarily enabling the ouput stages during startup which can cause audible effets in the output stages. Reported-by: Fredrik RedgÄrd <rik@svep.se> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Add device init/exit annotations to new-style Wolfson CODEC driversMark Brown2009-02-184-13/+13
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Check for errors when writing WM8731 reset registerMark Brown2009-02-181-1/+6
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: TWL4030: Add digital loopback supportPeter Ujfalusi2009-02-181-6/+50
| | | | | | | | | | | | | | | This patch adds the digital loopback/bypass support for twl4030 codec. The digital loopback will let the digimic0 (routed in the TX1 capture path inside of TWL4030) data to be routed back to the RX2 playback path (I2S stereo). It can also route the analog capture date routed through the TX1 back to RX2. Effectively the digital loopback is routing the audio from the TX1 capture path to the RX2 playback path. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@nokia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Implement SPI device unregistration for WM8731Mark Brown2009-02-181-1/+6
| | | | | | Completely untested. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Remove version display from the WM8753 driverMark Brown2009-02-181-4/+0Star
| | | | Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Refactor WM8731 device registrationMark Brown2009-02-182-193/+147Star
| | | | | | | | | | | | | Move the WM8731 driver to use a more standard device registration scheme where the device can be registered independantly of the ASoC probe. As a transition measure push the current manual code for registering the WM8731 into the individual machine driver probes. This allows separate patches to update the relevant architecture files with less risk of merge issues. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
* ASoC: Shuffle WM8731 SPI and I2C device registrationMark Brown2009-02-181-103/+112
| | | | | | | This is a pure code motion patch intended to improve reviewability of a following patch moving WM8731 to use more standard device registration. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>