aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2009-11-02 12:50:22 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2009-11-02 12:50:22 -0500
commit20107f84b29536887b958e38b20474cccc619322 (patch)
tree457a84cafe89bf63ba243edb3f8074955c478838 /sound/soc
parent3fe866ca6cc0495510a1d37c03a4abdc55174e83 (diff)
parent8fd6959de180f727b28813741468c9cb2a7028ec (diff)
Merge branch 'for-linus' of 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 check invalid HP pin ALSA: dummy - Fix descriptions of pcm_substreams parameter ALSA: pcmcia: use dynamic debug infrastructure, deprecate CS_CHECK (sound) ALSA: hda: Use quirk mask for Dell Inspiron Mini9/Vostro A90 using ALC268 sound: via82xx: deactivate DXS controls of inactive streams ALSA: snd-usb-caiaq: Bump version number to 1.3.20 ALSA: snd-usb-caiaq: Lock on stream start/unpause ALSA: snd-usb-caiaq: Missing lock around use of buffer positions ALSA: sound/parisc: Move dereference after NULL test ALSA: sound: Move dereference after NULL test and drop unnecessary NULL tests ALSA: hda_intel: Add the Linux device ID for NVIDIA HDA controller ALSA: pcsp - Fix nforce workaround ALSA: SND_CS5535AUDIO: Remove the X86 platform dependency ASoC: Amstrad Delta: add info about the line discipline requirement to Kconfig help text ASoC: Fix possible codec_dai->ops NULL pointer problems ALSA: hda - Fix capture source checks for ALC662/663 codecs ASoC: Serialize access to dapm_power_widgets()
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/omap/Kconfig13
-rw-r--r--sound/soc/soc-core.c11
-rw-r--r--sound/soc/soc-dapm.c2
3 files changed, 21 insertions, 5 deletions
diff --git a/sound/soc/omap/Kconfig b/sound/soc/omap/Kconfig
index 2dee9839be86..653a362425df 100644
--- a/sound/soc/omap/Kconfig
+++ b/sound/soc/omap/Kconfig
@@ -21,7 +21,18 @@ config SND_OMAP_SOC_AMS_DELTA
21 select SND_OMAP_SOC_MCBSP 21 select SND_OMAP_SOC_MCBSP
22 select SND_SOC_CX20442 22 select SND_SOC_CX20442
23 help 23 help
24 Say Y if you want to add support for SoC audio on Amstrad Delta. 24 Say Y if you want to add support for SoC audio device connected to
25 a handset and a speakerphone found on Amstrad E3 (Delta) videophone.
26
27 Note that in order to get those devices fully supported, you have to
28 build the kernel with standard serial port driver included and
29 configured for at least 4 ports. Then, from userspace, you must load
30 a line discipline #19 on the modem (ttyS3) serial line. The simplest
31 way to achieve this is to install util-linux-ng and use the included
32 ldattach utility. This can be started automatically from udev,
33 a simple rule like this one should do the trick (it does for me):
34 ACTION=="add", KERNEL=="controlC0", \
35 RUN+="/usr/sbin/ldattach 19 /dev/ttyS3"
25 36
26config SND_OMAP_SOC_OSK5912 37config SND_OMAP_SOC_OSK5912
27 tristate "SoC Audio support for omap osk5912" 38 tristate "SoC Audio support for omap osk5912"
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index 7ff04ad2a97e..0a1b2f64bbee 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -834,6 +834,9 @@ EXPORT_SYMBOL_GPL(snd_soc_resume_device);
834#define soc_resume NULL 834#define soc_resume NULL
835#endif 835#endif
836 836
837static struct snd_soc_dai_ops null_dai_ops = {
838};
839
837static void snd_soc_instantiate_card(struct snd_soc_card *card) 840static void snd_soc_instantiate_card(struct snd_soc_card *card)
838{ 841{
839 struct platform_device *pdev = container_of(card->dev, 842 struct platform_device *pdev = container_of(card->dev,
@@ -877,6 +880,11 @@ static void snd_soc_instantiate_card(struct snd_soc_card *card)
877 ac97 = 1; 880 ac97 = 1;
878 } 881 }
879 882
883 for (i = 0; i < card->num_links; i++) {
884 if (!card->dai_link[i].codec_dai->ops)
885 card->dai_link[i].codec_dai->ops = &null_dai_ops;
886 }
887
880 /* If we have AC97 in the system then don't wait for the 888 /* If we have AC97 in the system then don't wait for the
881 * codec. This will need revisiting if we have to handle 889 * codec. This will need revisiting if we have to handle
882 * systems with mixed AC97 and non-AC97 parts. Only check for 890 * systems with mixed AC97 and non-AC97 parts. Only check for
@@ -2329,9 +2337,6 @@ static int snd_soc_unregister_card(struct snd_soc_card *card)
2329 return 0; 2337 return 0;
2330} 2338}
2331 2339
2332static struct snd_soc_dai_ops null_dai_ops = {
2333};
2334
2335/** 2340/**
2336 * snd_soc_register_dai - Register a DAI with the ASoC core 2341 * snd_soc_register_dai - Register a DAI with the ASoC core
2337 * 2342 *
diff --git a/sound/soc/soc-dapm.c b/sound/soc/soc-dapm.c
index 8de6f9dec4a2..d89f6dc00908 100644
--- a/sound/soc/soc-dapm.c
+++ b/sound/soc/soc-dapm.c
@@ -2072,9 +2072,9 @@ int snd_soc_dapm_stream_event(struct snd_soc_codec *codec,
2072 } 2072 }
2073 } 2073 }
2074 } 2074 }
2075 mutex_unlock(&codec->mutex);
2076 2075
2077 dapm_power_widgets(codec, event); 2076 dapm_power_widgets(codec, event);
2077 mutex_unlock(&codec->mutex);
2078 dump_dapm(codec, __func__); 2078 dump_dapm(codec, __func__);
2079 return 0; 2079 return 0;
2080} 2080}