diff options
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.patch | 72 |
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); ++ |