- Mar 31, 2014
-
-
Ondrej Zary authored
Add suspend support for M-Audio cards based on ICE1712 chip. Tested with M-Audio Audiophile 24/96. S/PDIF will probably not work. Signed-off-by:
Ondrej Zary <linux@rainbow-software.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Ondrej Zary authored
Add suspend/resume support for ICE1712 chip. Card-specific subdrivers need to enable it and provide callbacks that suspend/resume the codecs. Signed-off-by:
Ondrej Zary <linux@rainbow-software.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
W. Trevor King authored
The `lspci -nnvv` output contains (wrapped for line length): 00:1b.0 Audio device [0403]: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller [8086:1e20] (rev 04) Subsystem: ASUSTeK Computer Inc. Device [1043:115d] Signed-off-by:
W. Trevor King <wking@tremily.us> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Dan Carpenter authored
This used to be a part of a condition until f3d145aa ('ALSA: asihpi: MMAP for non-busmaster cards') but now it's not and we can remove an indent level. Signed-off-by:
Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- Mar 26, 2014
-
-
Hui Wang authored
When we plug a 3-ring headset on the Dell machines (VID: 0x10ec0255, SID: 0x10280632; VID: 0x10ec0293, SID: 0x1028062c; VID: 0x10ec0293, SID: 0x1028062e), the headset mic can't be detected, after apply this patch, the headset mic can work well. BugLink: https://bugs.launchpad.net/bugs/1297581 Cc: David Henningsson <david.henningsson@canonical.com> Cc: stable@vger.kernel.org Signed-off-by:
Hui Wang <hui.wang@canonical.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- Mar 25, 2014
-
-
Lucas Stach authored
On Tegra the convention is to have a single machine driver that's controlling the whole audio subsystem. Move the clock handling to the machine driver, to be in line with the other Tegra drivers and give the machine driver full control over the single Tegra audio PLL. Signed-off-by:
Lucas Stach <dev@lynxeye.de> Acked-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Jean-Francois Moine authored
Some simple audio cards may have many DAI links. This patch extends the simple-card driver for handling such cards. Signed-off-by:
Jean-Francois Moine <moinejf@free.fr> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Jean-Francois Moine authored
The DAI link array and the properties (fmt, sysclk slots) are hard-coded for a single CPU / CODEC link. This patch dynamically allocates the DAI link array and the properties with the aim of supporting many DAI links. Signed-off-by:
Jean-Francois Moine <moinejf@free.fr> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Xiubo Li authored
This patch add .xlate_tdm_slot_mask support for IMX SSI, and this will generate the TDM slot TX and RX masks. Signed-off-by:
Xiubo Li <Li.Xiubo@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Xiubo Li authored
This patch add .xlate_tdm_slot_mask support for ESAI, and this will generate the TDM slot TX and RX masks. Signed-off-by:
Xiubo Li <Li.Xiubo@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Xiubo Li authored
This patch add fsl_asoc_xlate_tdm_slot_mask() support for utils. For the some spcified DAI driver, this will be used to generate the TDM slot TX/RX mask. And the TX/RX mask will use a 0 bit for an active slot as default, and the default active bits are at the LSB of the masks. Signed-off-by:
Xiubo Li <Li.Xiubo@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Xiubo Li authored
The 'of_' is not appropriate here for there hasn't any DT parsing. Signed-off-by:
Xiubo Li <Li.Xiubo@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Lars-Peter Clausen authored
Before we had card level support for DAPM and controls machine drivers would register their controls and DAPM elements with the CODEC. This required us to temporarily unset the name_prefix of a CODEC during the rtd init callback to avoid the machine level controls getting the CODEC's prefix. Now that all machine drivers properly register their machine level controls and DAPM elements with the card rather than with the CODEC we can drop the hack that sets the CODEC's name_prefix to NULL while calling the DAI link or AUX dev init callback. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Takashi Iwai authored
The auto-parser may ignore some pins that could be valid when they don't match with the assumption or if there are way too many pins assigned to the same output type. So far, such a pin has been silently ignored, but it's better to leave a message, which would help for debugging and understanding the problem. Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- Mar 24, 2014
-
-
Kuninori Morimoto authored
src might not exist. kernel will be hung-up without this patch in such case. Signed-off-by:
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
- Mar 23, 2014
-
-
Mark Brown authored
The changes in "ASoC: pcm: free path list before exiting from error conditions" actually introduced both double frees (in case where the path list was allocated but empty) and frees of unallocated memory (in cases where the error being handled was -ENOMEM. Drop the commit for now. Fixes: e4ad1acc (ASoC: pcm: free path list before exiting from error conditions) Reported-by:
Ben Hutchings <ben@decadent.org.uk> Signed-off-by:
Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
-
- Mar 21, 2014
-
-
Lars-Peter Clausen authored
Fixes: 115f3f8 ("ASoC: mfld_machine: Convert to table based DAPM and control setup") Reported-by:
kbuild test robot <fengguang.wu@intel.com> Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Kuninori Morimoto authored
Support for loading the Renesas R-Car sound driver via DeviceTree. Signed-off-by:
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Lars-Peter Clausen authored
Use table based setup to register the controls and DAPM widgets and routes. This on one hand makes the code a bit cleaner and on the other hand the board level DAPM elements get registered in the card's DAPM context rather than in the CODEC's DAPM context. The mfld_machine driver is a bit special in that it directly writes to one of the CODEC registers from one of the control handlers. Previous to this patch it was able to get a pointer to the CODEC from the control, since the control was registered with the CODEC. This won't be possible anymore once the control is registered with the card. Since there are already global variables in the driver accessed in the same function the patch adds a global variable that holds a pointer to the CODEC and uses that. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
- Mar 20, 2014
-
-
Nicolin Chen authored
This patch adds support for the Cirrus Logic CS42448/CS42888 Audio CODEC that has six/four 24-bit AD and eight 24-bit DA converters. [ CS42448/CS42888 supports both I2C and SPI control ports. As initial patch, this patch only adds the support for I2C. ] Signed-off-by:
Nicolin Chen <Guangyu.Chen@freescale.com> Acked-by:
Brian Austin <brian.austin@cirrus.com> Acked-by:
Paul Handrigan <Paul.Handrigan@cirrus.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Mengdong Lin authored
This is a temporary fix for some Intel HDMI codecs to avoid no sound output for a resuming playback after S3. After S3, the audio driver restores pin:cvt connection selections by snd_hda_codec_resume_cache(). However this can happen before the gfx side is ready and such connect selection is overlooked by HW. After gfx is ready, the pins make the default selection again. And this will cause multiple pins share a same convertor and mute control will affect each other. Thus a resumed audio playback become silent after S3. This patch verifies pin:cvt connection on preparing a stream, to assure the pin selects the right convetor and an assigned convertor is not shared by other unused pins. Apply this fix-up on Haswell, Broadwell and Valleyview (Baytrail). We need this temporary fix before a reliable software communication channel is established between audio and gfx, to sync audio/gfx operations. Signed-off-by:
Mengdong Lin <mengdong.lin@intel.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- Mar 19, 2014
-
-
Dylan Reid authored
When using an rbtree cache, there can be allocations the first time a register is accessed. This can cause an attempt to schedule while atomic in the case that the regmap is using a spinlock. This could be fixed by either initializing all the registers or using a flat cache. The register maps for tegra30_ahub and tegra30_i2s are dense and don't save much from using a tree so convert them to flat. Tegra30 changes tested on Norrin, Tegra20 changes compile. Signed-off-by:
Dylan Reid <dgreid@chromium.org> Tested-by:
Stephen Warren <swarren@nvidia.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Brian Austin authored
The shift values for the ADC,PCM, and Analog kcontrols were wrong causing wrong values for the SOC_DOUBLE_R_SX_TLV macros Fixed the TLV for aout_tlv to show -102dB correctly Fixes: 1d99f243 (ASoC: core: Rework SOC_DOUBLE_R_SX_TLV add SOC_SINGLE_SX_TLV) Reported-by:
Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by:
Brian Austin <brian.austin@cirrus.com> Signed-off-by:
Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
-
Charles Keepax authored
The snd_compr_open function would always return 0 even if the compressed ops open function failed, obviously this is incorrect. Looks like this was introduced by a small typo in: commit a0830dbd ALSA: Add a reference counter to card instance This patch returns the value from the compressed op as it should. Signed-off-by:
Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Acked-by:
Vinod Koul <vinod.koul@intel.com> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Mark Brown authored
Since all regmap CODECs should be (and are) using the more advance regmap cache infrastructure remove the code which supports that and just proxy I/O straight through to regmap. Signed-off-by:
Mark Brown <broonie@linaro.org>
-
- Mar 18, 2014
-
-
Nicolin Chen authored
The current simple-card driver separates the daimft for cpu_dai and codec_dai. So we might get different values for them (0x4003 and 0x1003 for example): asoc-simple-card sound-cs42888.12: cpu : 2024000.esai / 4003 / 132000000 asoc-simple-card sound-cs42888.12: codec : cs42888 / 1003 / 24576000 asoc-simple-card sound-cs42888.12: cs42888 <-> 2024000.esai mapping ok This is not allowed at all as we need to keep the DAIFMT settings identical for both the ends of the link. Thus this patch fixes it by overwriting the cpu_dai->fmt with codec_dai->fmt since we defined the DAIFMT_MASTER basing on CODEC at the first place while the other bits are same. Signed-off-by:
Nicolin Chen <Guangyu.Chen@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Brian Austin authored
The mask bits values were wrong for the SOC_VALUE_ENUM_SINGLE for the PCM/ADC Swap controls Reported-by:
Takashi Iwai <tiwai@suse.de> Signed-off-by:
Brian Austin <brian.austin@cirrus.com> Signed-off-by:
Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
-
Brian Austin authored
The mask bits values were wrong for the SOC_VALUE_ENUM_SINGLE for the mono mix controls. Reported-by:
Takashi Iwai <tiwai@suse.de> Signed-off-by:
Brian Austin <brian.austin@cirrus.com> Signed-off-by:
Mark Brown <broonie@linaro.org> Cc: stable@vger.kernel.org
-
Thomas Petazzoni authored
The Armada 370 DB board not only has analog audio input/output, but also S/PDIF input/output. This commit adds support for S/PDIF in the ASoC machine driver of the Armada 370 DB platform, and adjusts the Device Tree bindings documentation accordingly. Signed-off-by:
Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Lars-Peter Clausen authored
With CODEC to CODEC links rtd->codec does not necessarily point to the driver's CODEC. CODEC drivers should always use dai->codec and never even look at the PCM runtime. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Acked-by:
Charles Keepax <ckeepax@opensource.wolfsonmicro.com> Acked-by:
Jyri Sarha <jsarha@ti.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Axel Lin authored
The kfree call is not necessary, but we need to call snd_soc_unregister_codec() in remove(). Signed-off-by:
Axel Lin <axel.lin@ingics.com> Acked-by:
Jyri Sarha <jsarha@ti.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Kailang Yang authored
Restore the registers to prevent the abnormal digital power supply rising ratio/sequence to the codec and causing the incorrect default codec register restoration during initialization. Signed-off-by:
Kailang Yang <kailang@realtek.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Clemens Ladisch authored
The code introduced in commit 1f91ecc1 ("ALSA: oxygen: modify adjust_dg_dac_routing function") accidentally disregarded the old value of the playback routing register, so it broke the "Stereo Upmixing" mixer control. The unmuted parts of the channel routing are the same for all settings of the output destination, so it suffices to revert that part of the patch. Fixes: 1f91ecc1 ('ALSA: oxygen: modify adjust_dg_dac_routing function') Tested-by:
Roman Volkov <v1ron@mail.ru> Signed-off-by:
Clemens Ladisch <clemens@ladisch.de> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Kailang Yang authored
When the power state of ALC283 codec goes to D3 or return back to D0, it gives a noise via headphone output. To follow the depop procedure, it will be better. Signed-off-by:
Kailang Yang <kailang@realtek.com> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
Kailang Yang authored
Restore the registers to prevent the abnormal digital power supply rising ratio/sequence to the codec and causing the incorrect default codec register restoration during initialization. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=71861 Signed-off-by:
Kailang Yang <kailang@realtek.com> Cc: <stable@vger.kernel.org> Signed-off-by:
Takashi Iwai <tiwai@suse.de>
-
- Mar 17, 2014
-
-
Lars-Peter Clausen authored
There was a overlap between the snd_soc_codec_set_cache_io() cleanup and the addition of the sirf-audio-codec resulting in the sirf-audio-codec driver still using the old signature of snd_soc_codec_set_cache_io(), which will cause a compile error. Since the core is able to automatically setup IO for this driver we can just remove both the snd_soc_set_cache_io() call and the control_data assignment. Signed-off-by:
Lars-Peter Clausen <lars@metafoo.de> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Jean-Francois Moine authored
The global DAI format is used only in the function asoc_simple_card_parse_of(). So, move it from the private data to the stack. Signed-off-by:
Jean-Francois Moine <moinejf@free.fr> Reviewed-by:
Xiubo Li <Li.Xiubo@freescale.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Peter Ujfalusi authored
When we boot with non-DT mode the damengine will need the channel number and a filter function in order to get the channel. The filter_data is filled in the DAI driver while the filter_function will be provided by the edma-pcm driver. Signed-off-by:
Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Peter Ujfalusi authored
Platform driver glue for SoC using eDMA3 to use dmaengine PCM. The maximum number of periods need to be limited to 19 since the edma dmaengine driver limits the paRAM slot use for audio at in cyclic mode. Signed-off-by:
Peter Ujfalusi <peter.ujfalusi@ti.com> Reviewed-by:
Lars-Peter Clausen <lars@metafoo.de> Signed-off-by:
Mark Brown <broonie@linaro.org>
-
Jyri Sarha authored
Regulator code keep count of enables and disables. Double disable causes an ugly warning. Signed-off-by:
Jyri Sarha <jsarha@ti.com> Signed-off-by:
Mark Brown <broonie@linaro.org>
-