mirror of
https://git.yoctoproject.org/poky
synced 2026-07-21 05:27:01 +00:00
linux-openmoko: Add input subsys -> APM bridge and tweak power driver key events
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3831 311d38ba-8fff-0310-9ca6-ca027cbcb966
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
From 6c868238a5e083dca4d74439a7fd467b5c7726b0 Mon Sep 17 00:00:00 2001
|
||||
From: Liam Girdwood <liam@localhost.localdomain>
|
||||
Date: Fri, 1 Jun 2007 12:56:55 +0100
|
||||
Subject: [PATCH] This fixes a bug whereby PCM's were not being suspended when the rest of the audio subsystem was suspended.
|
||||
|
||||
---
|
||||
include/sound/soc.h | 3 +++
|
||||
sound/soc/soc-core.c | 8 ++++++++
|
||||
2 files changed, 11 insertions(+), 0 deletions(-)
|
||||
|
||||
Index: linux-2.6.22/include/sound/soc.h
|
||||
===================================================================
|
||||
--- linux-2.6.22.orig/include/sound/soc.h 2007-07-09 00:32:17.000000000 +0100
|
||||
+++ linux-2.6.22/include/sound/soc.h 2007-11-09 16:13:08.000000000 +0000
|
||||
@@ -411,6 +411,9 @@
|
||||
|
||||
/* codec/machine specific init - e.g. add machine controls */
|
||||
int (*init)(struct snd_soc_codec *codec);
|
||||
+
|
||||
+ /* DAI pcm */
|
||||
+ struct snd_pcm *pcm;
|
||||
};
|
||||
|
||||
/* SoC machine */
|
||||
Index: linux-2.6.22/sound/soc/soc-core.c
|
||||
===================================================================
|
||||
--- linux-2.6.22.orig/sound/soc/soc-core.c 2007-07-09 00:32:17.000000000 +0100
|
||||
+++ linux-2.6.22/sound/soc/soc-core.c 2007-11-09 16:18:45.000000000 +0000
|
||||
@@ -639,6 +639,10 @@
|
||||
dai->dai_ops.digital_mute(dai, 1);
|
||||
}
|
||||
|
||||
+ /* suspend all pcm's */
|
||||
+ for(i = 0; i < machine->num_links; i++)
|
||||
+ snd_pcm_suspend_all(machine->dai_link[i].pcm);
|
||||
+
|
||||
if (machine->suspend_pre)
|
||||
machine->suspend_pre(pdev, state);
|
||||
|
||||
@@ -873,6 +877,7 @@
|
||||
return ret;
|
||||
}
|
||||
|
||||
+ dai_link->pcm = pcm;
|
||||
pcm->private_data = rtd;
|
||||
soc_pcm_ops.mmap = socdev->platform->pcm_ops->mmap;
|
||||
soc_pcm_ops.pointer = socdev->platform->pcm_ops->pointer;
|
||||
Reference in New Issue
Block a user