summaryrefslogtreecommitdiffstats
path: root/sound
AgeCommit message (Collapse)Author
2011-04-11ASoC: fsi: modify vague PM control on probeKuninori Morimoto
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-11ASoC: fsi: take care in failing case of dai registerKuninori Morimoto
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-10Merge branch 'for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: ALSA: hda - Don't query connections for widgets have no connections ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E) ALSA: hda - HDMI: Fix MCP7x audio infoframe checksums ALSA: usb-audio: define another USB ID for a buggy USB MIDI cable ALSA: HDA: Fix dock mic for Lenovo X220-tablet ASoC: format_register_str: Don't clip register values ASoC: PXA: Fix oops in __pxa2xx_pcm_prepare ASoC: zylonite: set .codec_dai_name in initializer
2011-04-09Merge branch 'fix/hda' into for-linusTakashi Iwai
2011-04-09Merge branch 'fix/asoc' into for-linusTakashi Iwai
2011-04-09ASoC: Allow DAPM pin operations to match any contextMark Brown
The DAPM pin operations currently require that the specific DAPM context that the pin being operated in is contained in be specified. With multi component and especially with the addition of a per-card DAPM context this isn't ideal as it means that things like disabling unused pins on CODECs require looking up the CODEC DAPM context. Fix this by falling back to matching a widget in any context if there isn't a match in the current context. The code isn't ideal currently but will do the job. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-09ASoC: Force all DAPM contexts into the same bias stateMark Brown
Currently we allow all DAPM contexts to determine their own bias level. While this should in general work in most situations and will deliver the lowest possible power it causes problems for our integration with the card bias level as we're calling the card bias level functions for each DAPM context even though they're card wide but don't say which CODEC we're calling them for. Mitigate against this by forcing everything to be in the same state. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
2011-04-08ASoC: Remove special casing for registerless widgetsMark Brown
Since we recently explicitly set the register for registerless widgets to no register there is no longer any need to special case power updates for them, we can allow them to be handled with the register compression code as other widgets are. As this is the only remaining user of dapm_generic_apply_power() and dapm_update_bits() also remove those functions. Noticed-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-08Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-08ASoC: SSM2602: add SPI supportMike Frysinger
The ssm2602 codec has a SPI interface as well as I2C, so add the simple bit of glue to make it usable. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-08ASoC: Add data based control initialisation for CODECs and cardsMark Brown
Allow CODEC and card drivers to point to an array of controls from their driver structure rather than explicitly calling snd_soc_add_controls(). Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-08ASoC: WM8903: HP and Line out PGA/mixer DAPM fixesDilan Lee
Update the headphone and line out mixers and PGAs use the same logical set of register bits and sequencing as the speaker mixer/PGA. This allows ALSA controls for mute and volume on headphone and line out to operate correctly. Per conversation on alsa-devel, earlier datasheets indicated that the POWER_MANAGEMENT_* register bits 0 and 1 were aliases to ANALOG_* register bits 0 and 4, and hence only one copy of those bits was programmed. However, later datasheets corrected this. From: Dilan Lee <dilee@nvidia.com> [swarren: Applied same change to headphone widgets] Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-07Merge branch 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6Linus Torvalds
* 'for-linus2' of git://git.profusion.mobi/users/lucas/linux-2.6: Fix common misspellings
2011-04-07ALSA: hda - Remember connection listsTakashi Iwai
The connection lists are static and we can reuse the previous results instead of querying via verb at each time. This will reduce the I/O in the runtime especially for some codec auto-parsers. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Don't query connections for widgets have no connectionsTakashi Iwai
Fixes the kernel warnings with IDT codecs like hda_codec: connection list not available for 0x1e Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07Merge branch 'fix/hda' into topic/hdaTakashi Iwai
2011-04-07ALSA: hda - Fix unused variable warning in patch_realtek.cTakashi Iwai
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Remove superfluous inits for ALC662 auto-parserTakashi Iwai
Since we now set up the connections and mutes dynamically in the auto-parser, all static initializations via alc662_init_verbs & co are no longer needed. Let's drop them. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Mute ADC as default in ALC882 and other auto-parsersTakashi Iwai
Mute the ADC as default in the auto-parser dynamically instead of relying on the static init verbs. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Unmute mixer dynamically in alc662 auto-parserTakashi Iwai
Instead of static init array, better to determine the connection and the mute status of the pin/mixer/DAC route dynamically. This fixes the uninitialized mixer 0x0f on ALC892. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: HDA: Fix single internal mic on ALC275 (Sony Vaio VPCSB1C5E)David Henningsson
In cases where there is only one internal mic connected to ADC 0x11, alc275_setup_dual_adc won't handle the case, so we need to add the ADC node to the array of candidates. Cc: stable@kernel.org BugLink: http://bugs.launchpad.net/bugs/752792 Reported-by: Vincenzo Pii Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - HDMI: Fix MCP7x audio infoframe checksumsAaron Plattner
The MCP7x hardware computes the audio infoframe channel count automatically, but requires the audio driver to set the audio infoframe checksum manually via the Nv_VERB_SET_Info_Frame_Checksum control verb. When audio starts playing, nvhdmi_8ch_7x_pcm_prepare sets the checksum to (0x71 - chan - chanmask). For example, for 2ch audio, chan == 1 and chanmask == 0 so the checksum is set to 0x70. When audio playback finishes and the device is closed, nvhdmi_8ch_7x_pcm_close resets the channel formats, causing the channel count to revert to 8ch. Since the checksum is not reset, the hardware starts generating audio infoframes with invalid checksums. This causes some displays to blank the video. Fix this by updating the checksum and channel mask when the device is closed and also when it is first initialized. In addition, make sure that the channel mask is appropriate for an 8ch infoframe by setting it to 0x13 (FL FR LFE FC RL RR RLC RRC). Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Cc: <stable@kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Rewrite alc269_suspend to alc269_shutupTakashi Iwai
alc269_suspend is just calling the shut-up, so we can use the new shutup callback for the purpose. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Introduce shutup callback to Realtek spec structTakashi Iwai
Add shutup callback to be called codec-specifically for avoiding pop noises at suspend or shutdown. As a generic callback, just turn EAPD off. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Refactoring EAPD controlsTakashi Iwai
Reduced the duplicated codes. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07ALSA: hda - Split EAPD init to a separate array from alc662_init_verbsTakashi Iwai
So far, alc662_init_verbs[] is used for all ALC662-compatible chips, but the EAPD controls for 0x15 in there is invalid for ALC892. Also, since EAPDs should be set up in alc_auto_init_amp(), these static elements aren't needed for auto-parser, too. In this patch, the EAPD init verbs are split from alc662_init_verbs, and applied only to static quirks. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-07Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-07ASoC: Set left channel volume update bits for WM8994Mark Brown
Ensures that we apply volume updates that don't affect the right channel. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-07ASoC: fix config error pathLu Guanqun
initialize ret to invalid value so that when we reach the config error path in soc_pcm_open, it will return the correct error code. without this patch, though config error path is executed, soc_pcm_open will return 0 in snd_pcm_open_substream and then cause double release of substream. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-07ASoC: check channel mismatch between cpu_dai and codec_daiLu Guanqun
Suppose we have: cpu_dai channels_min = 1 channels_max = 1 codec_dai channels_min = 2 channels_max = 2 This is a mismatch that should not happen, however according to the current code, the result of runtime->hw will be: channels_min = 2 channels_max = 1 We better spot it early. This patch checks this mismatch. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06ASoC: sst_platform: unregister sst card when being closedLu Guanqun
Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06ASoC: sst_platform: free the resources on fail pathLu Guanqun
Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06ASoC: sst_platform: initialize module_name properlyLu Guanqun
module_name will be checked in register_sst_card. It will fail to register sst card if it's not initialized. Signed-off-by: Lu Guanqun <guanqun.lu@intel.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06ASoC: Add max98095 CODEC driverPeter Hsiang
This patch adds the MAX98095 CODEC driver. Signed-off-by: Peter Hsiang <peter.hsiang@maxim-ic.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06Merge branch 'for-2.6.39' into for-2.6.40Mark Brown
2011-04-06ASoC: Tegra: Suspend/resume supportStephen Warren
ASoC machine drivers that are their own platform_driver (as opposed to those using the soc-audio platform_driver) need to explicitly set up power-management operation callbacks. To avoid cut/paste, snd_soc_pm_ops also needs to be exported. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2011-04-06ALSA: hda - Fix mix->DAC deduction for ALC892Takashi Iwai
The current alc662 parser doesn't set the DAC for the mixer 0x0f properly for ALC892, which has 4 DACs while ALC662 has 3. Fixed by implementing alc662_mix_to_dac() more genericly with the dynamic widget list. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-06ALSA: hda - Correct initial dac_nids for some ALC272-quirksTakashi Iwai
Some ALC272-quirks use alc662_dac_nids instead of alc272_dac_nids. This patch fixes these entries. No functional change since the first two elements are identical in both arrays. Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-06ALSA: emu10k1 - Remove CLFE-related controls for SB Live! Platinum CT4760PRaymond Yau
SB Live! Platinum CT4760P is just a 4 channels sound card with STAC9721 and Philips UDA1334 DAC. Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-06ALSA: hda - Fix alc662_dac_nid and change "6stack-dig" to "5stack-dig"Raymond Yau
alc662 series only have 3 DAC, so it can only support 5stack-dig instead of 6stack-dig. [updated HD-Audio-Models.txt as well by tiwai] Signed-off-by: Raymond Yau <superquad.vortex2@gmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-06ALSA: usb-audio: define another USB ID for a buggy USB MIDI cableTarek Soliman
There are many USB MIDI cables out there that have buggy firmware that reports it can do more than 4 bytes in a packet when they can only properly handle 4 This patch adds the ID of yet another one of those cables Signed-off-by: Tarek Soliman <tarek@bashasoliman.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Minor cleanupsEliot Blennerhassett
Remove some unneeded defintions Use %pR to print resources Make some data const Consistent braces for else Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Simplify driver unload cleanupEliot Blennerhassett
Replacing subsys_delete_adapter with adapter_delete allows some special-case adapter lookup code to be removed. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Standardise substream name generationEliot Blennerhassett
Define and use pcm_debug_name if CONFIG_SND_DEBUG Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Remove 2 unused functionsEliot Blennerhassett
Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: MMAP for non-busmaster cardsEliot Blennerhassett
Allow older non DMA capable cards to use MMAP by emulating the DMA using read and write functions, and getting rid of copy & silence callbacks that were used only by older cards. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Handle playback drained status betterEliot Blennerhassett
Use the card drained status reporting for playback, but allow it to persist for a few timer cycles before signalling XRUN, to allow card to recover by itself. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: asihpi: Update debug printingEliot Blennerhassett
Debug print full substream ID. Other minor debug print updates. Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: snd-asihpi: Control namingEliot Blennerhassett
Clock source is neither capture nor playback, so change 'Capture Clock' to 'Clock'. Add spaces to control name string for consistency, always 'PCM 0' , never 'PCM0' Signed-off-by: Eliot Blennerhassett <eblennerhassett@audioscience.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
2011-04-05ALSA: HDA: Fix dock mic for Lenovo X220-tabletDavid Henningsson
Without the "thinkpad" quirk, the dock mic in Lenovo X220 tablet edition won't work. BugLink: http://bugs.launchpad.net/bugs/751033 Cc: stable@kernel.org Tested-by: James Ferguson <james.ferguson@canonical.com> Signed-off-by: David Henningsson <david.henningsson@canonical.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>