summaryrefslogtreecommitdiff
path: root/target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-06-14 20:42:33 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-06-14 20:42:33 +0000
commit2d581e604771771dd63946cbed17d6b7ec79bd9d (patch)
tree74597f2d6eef2e7a6d6338c978b8910f9f947151 /target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch
parent8378beaa85ae5e6951d9a7a6c7d1928f5d150653 (diff)
add the 'goldfish' target, useful for experimenting with virtual phone hardware (includes the emulator)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16459 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch')
-rw-r--r--target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch72
1 files changed, 72 insertions, 0 deletions
diff --git a/target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch b/target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch
new file mode 100644
index 0000000000..0190820ed8
--- /dev/null
+++ b/target/linux/goldfish/patches-2.6.30/0121--ARM-goldfish-Implement-suspend-as-wait-for-interr.patch
@@ -0,0 +1,72 @@
+From f0266de1899f043daff3b472b8fdd6e30012cb25 Mon Sep 17 00:00:00 2001
+From: =?utf-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= <arve@android.com>
+Date: Wed, 9 Jan 2008 11:46:33 -0800
+Subject: [PATCH 121/134] [ARM] goldfish: Implement suspend as wait-for-interrupt.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Mike A. Chan <mikechan@google.com>
+Signed-off-by: Arve Hjønnevåg <arve@android.com>
+---
+ arch/arm/mach-goldfish/Makefile | 2 +-
+ arch/arm/mach-goldfish/pm.c | 43 +++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 44 insertions(+), 1 deletions(-)
+ create mode 100644 arch/arm/mach-goldfish/pm.c
+
+--- a/arch/arm/mach-goldfish/Makefile
++++ b/arch/arm/mach-goldfish/Makefile
+@@ -4,6 +4,6 @@
+
+ # Object file lists.
+
+-obj-y := pdev_bus.o timer.o audio.o
++obj-y := pdev_bus.o timer.o audio.o pm.o
+ obj-$(CONFIG_MACH_GOLDFISH) += board-goldfish.o
+
+--- /dev/null
++++ b/arch/arm/mach-goldfish/pm.c
+@@ -0,0 +1,43 @@
++/* arch/arm/mach-msm/pm.c
++ *
++ * Goldfish Power Management Routines
++ *
++ * Copyright (C) 2007 Google, Inc.
++ *
++ * This software is licensed under the terms of the GNU General Public
++ * License version 2, as published by the Free Software Foundation, and
++ * may be copied, distributed, and modified under those terms.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ */
++
++#include <linux/module.h>
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/pm.h>
++#include <linux/suspend.h>
++#include <mach/system.h>
++
++static int goldfish_pm_enter(suspend_state_t state)
++{
++ arch_idle();
++ return 0;
++}
++
++static struct platform_suspend_ops goldfish_pm_ops = {
++ .enter = goldfish_pm_enter,
++ .valid = suspend_valid_only_mem,
++};
++
++static int __init goldfish_pm_init(void)
++{
++ suspend_set_ops(&goldfish_pm_ops);
++ return 0;
++}
++
++__initcall(goldfish_pm_init);
++