- 11 2月, 2011 1 次提交
-
-
由 Janusz Krzysztofik 提交于
Content of the CX20442's snd_soc_codec_driver.reg_cache_default pointed area, introduced with my recent NULL pointer dereferece fix (commit f019ee5f), occured wrong after further testing, more thorough than just booting successfully. There are two problems with it: 1) It should read (1 << CX20442_TELOUT) | (1 << CX20442_MIC), not CX20442_TELOUT | CX20442_MIC. 2) While correctly matching actual codec hardware state on boot when fixed per 1), a few more code modifications would still be required to reflect that state not only into register cache, but also force them into DAPM pins state, otherwise an inconsitency occures which may prevent further codec state changes from being applied correctly. As a result, the phone stops ringing after reboot, until someone picks up the handset for the first time. Revert that reg_cache_default content to a working, previous de facto default value of 0, in hope this change can still be accepted as an rc cycle fix. Created and tested against linux-2.6.38-rc4 Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 10 2月, 2011 1 次提交
-
-
由 Mark Brown 提交于
ASoC generally uses the register defaults for everything, but in some cases the hardware will default to enabling some of the DAPM widgets (clocks for example). Ensure that DAPM knows about the actual widget state at initialisation by reading the enable bits after instantiating the widgets so they don't get left enabled needlessly. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 04 2月, 2011 3 次提交
-
-
由 Mark Brown 提交于
On WM8994 revision D and earlier ensure optimal sequencing with simultaneous usage of AIF1 and AIF2 by tying the signals together so if paths through both are connected the streams are started simultaneously. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Cc: stable@kernel.org
-
由 Mark Brown 提交于
Due to the different routing for AIF1 and AIF2 we weren't using a single widget to represent the ADCDAT signal. For consistency add one. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Cc: stable@kernel.org
-
由 Vaibhav Bedia 提交于
McASP1 is used on the DA830/OMAP-L137 platform for the codec. This is different from the DA850/OMAP-L138 platform which uses McASP0. This is fixed by adding a new snd_soc_dai_link struct. Signed-off-by: NVaibhav Bedia <vaibhav.bedia@ti.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 03 2月, 2011 1 次提交
-
-
由 Janusz Krzysztofik 提交于
The .card member of the snd_soc_pcm_runtime structure pointed to by the snd_soc_dai_link.init() argument used to be initialized before the function being called. This has changed, probably unintentionally, after recent refactorings. Since the function implementations are free to make use of this pointer, move its assignment back before the function is called to avoid NULL pointer dereferences. Created and tested on Amstrad Delta againts linux-2.6.38-rc2 Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 01 2月, 2011 2 次提交
-
-
由 Janusz Krzysztofik 提交于
The CX20442 codec driver never provided the snd_soc_codec_driver's .reg_cache_default member. With the latest ASoC framework changes, it seems to be referred unconditionally, resulting in a NULL pointer dereference if missing. Provide it. Created and tested on Amstrad Delta against linux-2.6.38-rc2 Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Janusz Krzysztofik 提交于
The Amstrad Delta ASoC driver used to override the digital_mute() callback, expected to be not provided by the on-board CX20442 CODEC driver, with its own implementation. While this is still posssible when substituting the whole empty snd_soc_dai_driver.ops member (the CX20442 case), replacing snd_soc_dai_ops.digital_mute only is no longer correct after the snd_soc_dai_driver.ops member has been constified, and results in build error. Drop this actually not used code path in hope the CX20442 driver never provides its own snd_soc_dai_ops structure. Created and tested against linux-2.6.38-rc2 Signed-off-by: NJanusz Krzysztofik <jkrzyszt@tis.icnet.pl> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 28 1月, 2011 2 次提交
-
-
由 Stephen Warren 提交于
snd_soc_dapm_put_volsw() has variables for both the unshifted and shifted mask for updates commit 97404f (ASoC: Do DAPM control updates in the middle of DAPM sequences) got confused between the two of these. Since there's no need to keep a copy of the unshifted mask fix this and simplify the code by using only one mask variable. [Completely rewrote the changelog to describe the issue -- broonie.] Signed-off-by: NStephen Warren <swarren@nvidia.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Manjunathappa, Prakash 提交于
This patch fixes the Kernel panic issue on accessing davinci_vc in cq93vc_probe function. struct davinci_vc is part of platform device's private driver data(codec->dev->p->driver_data) and this is populated by DaVinci Voice Codec MFD driver. Signed-off-by: NManjunathappa, Prakash <prakash.pm@ti.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 27 1月, 2011 1 次提交
-
-
由 Jarkko Nikula 提交于
Commit f6c2ed5d "ASoC: Fix the device references to codec and platform drivers" moved codec driver refcount increments from soc_bind_dai_link into soc_probe_codec. However, the commit didn't remove try_module_get from soc_probe_aux_dev so the auxiliary device reference counts are incremented twice as the soc_probe_codec is called from soc_probe_aux_dev too. Signed-off-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 25 1月, 2011 3 次提交
-
-
由 Dmitry Eremin-Solenikov 提交于
ASoC DAI link descriptions for Corgi, Poodle and Spitz platforms contained incorrect names for cpu_dai and codec, which effectievly disabled sound on theese platforms. Fix that errors. Signed-off-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
由 Lars-Peter Clausen 提交于
During the multi-component patch the s3c24xx i2s driver was renamed from "s3c24xx-i2s" to "s3c24xx-iis", while the sound board drivers were not updated to reflect this change as well. As a result there is no match between the dai_link and the i2s driver and no sound card is instantiated. This patch fixes the problem by updating the sound board drivers to use "s3c24xx-iis" for the cpu_dai_name. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NJassi Brar <jassi.brar@samsung.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
由 Lars-Peter Clausen 提交于
The id part of an I2C device name is created with the "%d-%04x" format string. So for example for an I2C device which is connected to the adapter with the id 0 and has its address set to 0x1a the id part of the devices name would be "0-001a". Currently some sound board drivers have the id part the codec_name field of their dai_link structures set as if it had been created by a "%d-0x%x" format string. For example "0-0x1a" instead of "0-001a". As a result there is no match between the codec device and the dai_link and no sound card is instantiated. This patch fixes it. Signed-off-by: NLars-Peter Clausen <lars@metafoo.de> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
- 22 1月, 2011 2 次提交
-
-
由 Mark Brown 提交于
The DC servo codes are actually signed numbers so need to be treated as such. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Cc: stable@kernel.org
-
由 Rajashekhara, Sudhakar 提交于
The codec_name entry for da8xx evm in sound/soc/davinci/davinci-evm.c is not matching with the i2c ids in the board file. Without this fix the soundcard does not get detected on da850/omap-l138/am18x evm. Signed-off-by: NRajashekhara, Sudhakar <sudhakar.raj@ti.com> Tested-by: NDan Sharon <dansharon@nanometrics.ca> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org (for 2.6.37)
-
- 19 1月, 2011 8 次提交
-
-
由 Qiao Zhou 提交于
fix wrong value in wm8994_set_tristate func. when updating reg bits, it should use "value", not "reg". Signed-off-by: NQiao Zhou <zhouqiao@marvell.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
由 Dimitris Papastamos 提交于
In the wm8995_set_tristate() function when updating the register bits use the value and not the register index as the value argument. Signed-off-by: NDimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
由 Vasily Khoruzhick 提交于
WM8750 address is 0x1b, not 0x1a. Without this fix ALSA detects no sound cards on Zipit Signed-off-by: NVasily Khoruzhick <anarsoul@gmail.com> Acked-by: NMarek Vasut <marek.vasut@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Vasily Khoruzhick 提交于
Fix jack detection on Zipit Z2, otherwise it disables headphones output when jack is connected Signed-off-by: NVasily Khoruzhick <anarsoul@gmail.com> Acked-by: NMarek Vasut <marek.vasut@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Barry Song 提交于
While I2S/TDM/AC97 DAI is built-in, others are compiled as modules, SND_BF5XX_SOC_SPORT will be module, then DAI can't get some symbols. Except that, SND_BF5XX_AC97 depends on SND_BF5XX_SOC_AC97 too. Signed-off-by: NBarry Song <barry.song@analog.com> Signed-off-by: NMike Frysinger <vapier@gentoo.org> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Barry Song 提交于
We don't want to use internal frame syncs otherwise we sometimes get out of sync, so don't enable them when setting up the SPORT. Signed-off-by: NBarry Song <barry.song@analog.com> Signed-off-by: NMike Frysinger <vapier@gentoo.org> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Mike Frysinger 提交于
We need to tweak how we query the active capture/playback state after the recent overhauls of common code. Signed-off-by: NMike Frysinger <vapier@gentoo.org> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
由 Mike Frysinger 提交于
One spot was missed in this driver when converting from snd_soc_dai.private_data to snd_soc_dai_get_drvdata. Signed-off-by: NMike Frysinger <vapier@gentoo.org> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
- 17 1月, 2011 2 次提交
-
-
由 Alexander Sverdlin 提交于
Changelog: 1. I2S module of EP93xx should be feed by 32bit DMA transfers. This is hardware limitation and that's the way original Cirrus's driver worked. This will fix distorted sound playback and make capture actually work in present ep93xx drivers. I've found, that author of code, on which modern ep93xx-i2s.c and ep93xx-pcm.c are based, had faced this problem also in 2007: http://blog.gmane.org/gmane.linux.ports.arm.cirrus/month=20070101/page=3 Now SoC code uses his developments, but not overcomes the hardware issues. Some details from EP93xx users guide: Both I2S transmitter and receiver have similar 16x32bit FIFO, where they store 8 samples for both left and right channels. The FIFO is always 32bit wide and should be properly aligned if you use samples of other width. Transmitter and receiver have configuration registers for selection of I2S word length (16, 24, 32). They are I2STXWrdLen and I2SRXWrdLen. Yes, EP93xx DMA can do byte, word and quad-word transfers. The width for transfers to and from peripherals is selected by particular module configuration. Lucky AC97 module has such configuration: AC97RXCRx registers, bit CM (Compact mode enable) switches between 16 and 32 bit samples. AC97TXCRx registers have the same bits for transmitters. ep93xx-ac97.c enables this compact mode and so has all the rights to use S16_LE format. No one has found such a configuration in I2S module until now in any Cirrus manuals. I2S module always feeds it's 32bit wide FIFO with 32bit samples consecutively for left and right channels. You cannot use 32-bit DMA transfers to transfer two 16-bit samples. So we can use two formats for AC97, but should remove all but S32_LE for I2S. Always using 32 bit chunks is not a problem for I2S, the codec I use uses less bits too (24), it's permitted by I2S standard. In proposed patch formats list shortened to just S32_LE, this makes all the DMA transactions right, while ALSA will do all sample format translation for us. 2. Incorrect setting of LRCLK (2 times slower) in original ep93xx-i2s.c masks the first problem. DMA takes two 16 bit samples instead of one, overall sound speed seems to be normal, but you get actually 4000 sampling rate instead of requested 8000 and therefore some noise... This is also the reason why the capture function not worked at all in this driver... If we take a look into I2S specification, we will figure that LRCLK MUST be equal to sample rate, if we are talking about stereo (in mono too, but it's not our case at all). In proposed patch SCLK and LRCLK rates are corrected, assuming we always send 32 bits * 2 channels to codec. Signed-off-by: NAlexander Sverdlin <subaparts@yandex.ru> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Dimitris Papastamos 提交于
Signed-off-by: NDimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Cc: stable@kernel.org
-
- 14 1月, 2011 1 次提交
-
-
由 Matti J. Aaltonen 提交于
These changes are needed to keep up with the changes in the MFD core and V4L2 parts of the wl1273 FM radio driver. Use function pointers instead of exported functions for I2C IO. Also move all preprocessor constants from the wl1273.h to include/linux/mfd/wl1273-core.h. Signed-off-by: NMatti J. Aaltonen <matti.j.aaltonen@nokia.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 12 1月, 2011 5 次提交
-
-
由 Peter Ujfalusi 提交于
sound/soc/codecs/tpa6130a2.c: In function 'tpa6130a2_add_controls': sound/soc/codecs/tpa6130a2.c:342: warning: unused variable 'dapm' Introduced by commit 39646871 ("ASoC: tpa6130a2: Replace DAPM code with direct interface"). The DAPM code has been removed from the driver, but the dapm struct remained. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Peter Ujfalusi 提交于
The L/R LOM line can be invertined side of the corresponding DAC, or inverted from the corresponding LOP. Add control for user space to select the source of the LOM inversion. When only the analog bypass is enabled, and the LOM is inverted from DAC output, we need to power the corresponding DAC. Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 David Lambert 提交于
This codec is to be used by the DMIC driver to control the DMIC codec. This driver will be used on future implementations of the DMIC driver to support codec specific features. At this time, the codec driver just registers the codec DAI. Signed-off-by: NDavid Lambert <dlambert@ti.com> Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
由 Dimitris Papastamos 提交于
The size of the lzo syncing bitmap was incorrectly set to the size of the cache times the word size, however, the correct size is the size of the cache. Signed-off-by: NDimitris Papastamos <dp@opensource.wolfsonmicro.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Takashi Iwai 提交于
__devinitconst can't be used for data referred in driver struct. Signed-off-by: NTakashi Iwai <tiwai@suse.de>
-
- 11 1月, 2011 2 次提交
-
-
由 Guennadi Liakhovetski 提交于
Commit 6d803ba7 "ARM: 6483/1: arm & sh: factorised duplicated clkdev.c" broke compilation of migor audio. Use the correct header to fix the problem. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Timur Tabi 提交于
Update the CS4270 driver to use ASoC's internal codec register cache feature. This change allows ASoC to perform the low-level I2C operations necessary to read the register cache. Support is also added for initializing the register cache with an array of known power-on default values. The CS4270 driver was handling the register cache itself, but somwhere along the conversion to multi-compaonent, this feature broke. Signed-off-by: NTimur Tabi <timur@freescale.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 10 1月, 2011 1 次提交
-
-
由 Vasily Khoruzhick 提交于
Enable Mic Jack during glue driver init, otherwise capture will not work. Signed-off-by: NVasily Khoruzhick <anarsoul@gmail.com> Acked-by: NJassi Brar <jassi.brar@samsung.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
- 05 1月, 2011 4 次提交
-
-
由 Harsha Priya 提交于
The soc-core takes the platform and codec driver reference during probe. Few of these references are not released during remove. This cause the platform and codec driver module unload to fail. This patch fixes by the taking only one reference to platform and codec module during probe and releases them correctly during remove. This allows load/unload properly Signed-off-by: NVinod Koul <vinod.koul@intel.com> Signed-off-by: NHarsha Priya <priya.harsha@intel.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Jarkko Nikula 提交于
After multi-component conversion these machine drivers don't actually need anything from sound/soc/codecs/tlv320aic3x.h so don't include it. Signed-off-by: NJarkko Nikula <jhnikula@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Maurus Cuelenaere 提交于
This makes the SmartQ sound driver compile again with recent ASoC changes. Signed-off-by: NMaurus Cuelenaere <mcuelenaere@gmail.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-
由 Mark Brown 提交于
The rest of ASoC is using SND_SOC_ as the prefix for all the Kconfig symbols so do so for the new Samsung drivers too, rather than using ASOC_ as they currently are. Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: NSeungwhan Youn <sw.youn@samsung.com> Acked-by: NJassi Brar <jassi.brar@samsung.com> Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk>
-
- 02 1月, 2011 1 次提交
-
-
由 Kuninori Morimoto 提交于
Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
-