android power专题
文章平均质量分 79
tron
这个作者很懒,什么都没留下…
展开
-
基于Android的Linux内核的电源管理:Early Suspend
1. 用户空间的接口在kernel/power/main.c中,定义了一组sysfs的属性文件,其中一个定义是:power_attr(state);把这个宏展开后:[cpp] view plaincopystaticstruct kobj_attribute state_attr = { \ .attr ={转载 2012-04-25 11:45:04 · 448 阅读 · 0 评论 -
标准linu休眠和唤醒机制分析(二)
三、pm_test属性文件读写int pm_test_level = TEST_NONE; static const char * const pm_tests[__TEST_AFTER_LAST] = { [TEST_NONE] = "none", [TEST_CORE] = "core", [TEST_CPUS] = "proces转载 2012-07-11 08:59:13 · 580 阅读 · 0 评论 -
标准linu休眠和唤醒机制分析(四)
suspend第三、四、五阶段:platform、processor、corestatic int suspend_enter(suspend_state_t state){ int error; if (suspend_ops->prepare) { // 平台特定的函数,mtkpm.c,有定义,对pmic和cpu dll的一些设置转载 2012-07-11 09:01:20 · 916 阅读 · 0 评论 -
Android在标准linux基础上对休眠唤醒的实现(二)
三、kernel层源码解析 - wakelock的重要地位wakelock在android的休眠唤醒机制中扮演着及其重要的角色,主要源码位于文件:kernel/kernel/power/wakelock.c,kernel/include/linux/wakelock.h中。 wakelocks_init()函数所做的工作是整个wakelock可以工作起来的基础,所有这里先说说这个函数。转载 2012-07-11 09:11:23 · 529 阅读 · 0 评论 -
Android在标准linux基础上对休眠唤醒的实现(一)
说明:1. Based on linux 2.6.32 and android 2.2,only support SDR(mem).2. 参考文章:http://2695477.blog.51cto.com/blog/2685477/484751http://www.docin.com/p-115475680.htmlhttp://blogold.chinaunix.net/u转载 2012-07-11 09:08:34 · 528 阅读 · 0 评论 -
Android在标准linux基础上对休眠唤醒的实现(三)
四、android层源码解析在linux之上经过android的软件堆层层封装,最终在上层的java应用程序中使用。休眠唤醒也是从最上层发出的命令,然后一层一层地将参数解析,往最底层传,最后走上标准linux的休眠唤醒之路。 这一部分将会初略分析休眠唤醒机制上linux之上所走的路线。 在linux之上,存在一个hal层,专门做和linux内核转载 2012-07-11 09:17:02 · 894 阅读 · 0 评论 -
标准linu休眠和唤醒机制分析(三)
五、suspend和resume代码走读 下面对suspend分的几个阶段都是按照pm test的5中模式来划分的:freezer、devices、platform、processors、core。suspend第一阶段:freezerint enter_state(suspend_state_t state){ int error;转载 2012-07-11 09:00:20 · 776 阅读 · 0 评论 -
新版linux系统设备架构中关于电源管理方式的变更
新版linux系统设备架构中关于电源管理方式的变更based on linux-2.6.32 一、设备模型各数据结构中电源管理的部分 linux的设备模型通过诸多结构体来联合描述,如struct device,struct device_type,struct class,struct device_driver,struct bus_type等。 @kerne转载 2012-07-11 09:03:07 · 456 阅读 · 0 评论 -
Debug Android and Linux suspend and resume (中文)
攒了一些关于调试Android和Linux下面的suspend 和 resume的经验, 在这里和大家分享一下。希望可以有些帮助, (下面没有写Android专用的, 就是Linux通用的)。1. no_console_suspend 在kernel启动参数里面加上no_console_suspend, 这个是最基本的, 因为kernel在把console suspend掉以后, 不转载 2012-07-11 10:35:46 · 675 阅读 · 0 评论 -
标准linu休眠和唤醒机制分析(一)
说明:1. Based on linux2.6.32, only for mem(SDR)2. 有兴趣请先参考阅读: 电源管理方案APM和ACPI比较.docLinux系统的休眠与唤醒简介.doc3. 本文先研究标准linux的休眠与唤醒,android对这部分的增改在另一篇文章中讨论4. 基于手上的一个项目来讨论,这里只讨论共性的地方 虽然linux支持三种省电模式转载 2012-07-11 08:58:03 · 566 阅读 · 0 评论 -
Linux系统的休眠与唤醒简介
转文地址:http://blog.163.com/jiaguang3010717@126/blog/static/1268082432010310103037253/系统挂起(Suspend)是电源管理(APM&ACPI)的一个特性,给用户带来了很大的方便。Linux在2.6系列核心中对电源管理有了较好的支持,下面就谈谈Linux对系统挂起的支持情况。Linux对系统挂起的支持 Li转载 2012-07-11 08:56:14 · 1311 阅读 · 0 评论 -
基于Android的Linux内核的电源管理:概述
1. 电源管理的状态Android的Linux内核为系统提供了4种电源状态,内核的源代码为其中的3种定义了名字和对应的宏定义,名字定义在kernel/power/suspend.c中:[cpp] view plaincopyconst char *const pm_states[PM_SUSPEND_MAX] = { #ifdef CONFIG_EARLYS转载 2012-04-25 11:43:28 · 484 阅读 · 0 评论 -
翻译:Linux的电源管理架构
设备电源管理Copyright (c) 2010 Rafael J. Wysocki, Novell Inc.Copyright (c) 2010 Alan Sternstern@rowland.harvard.edu *************************************************************本文由DroidPhone翻译于201转载 2012-04-25 11:45:59 · 453 阅读 · 0 评论 -
android 重启流程
我这边主要是讲下android reboot走的流程以及所设计的代码,我这边直接从framework层开始。framework会提供系统重启的接口:代码路径:frameworks/base/core/java/android/os/Power.java public static void reboot(String reason) throws IOException转载 2012-05-18 16:24:11 · 1008 阅读 · 0 评论 -
Android学习之wakelocks
wakelock是android基于kernel的APM之上,构建的一个新的电源管理层, 使得用户可以通过获得wakelock来使得系统不会进入低功耗状态.这里我们不讨论android这种实现的优劣, 只关注一下它的实现. 对于它的好坏以及对kernel的电源管理的讨论在最后的相关资料中都有详细的讨论,有兴趣的童鞋可以去参考参考.首先来看看相关代码的位置相关代码转载 2012-07-05 10:15:48 · 740 阅读 · 0 评论 -
Run-time PM 详解
Run-time PM. 每个device或者bus都会向run-time PM core注册3个callbackstruct dev_pm_ops {...int (*runtime_suspend)(struct device *dev);int (*runtime_resume)(struct device *dev);int (*runtime_idle转载 2012-07-10 16:34:13 · 675 阅读 · 0 评论 -
Linux regulator分析
Regulator模块用于控制系统中某些设备的电压/电流供应。在嵌入式系统(尤其是手机)中,控制耗电量很重要,直接影响到电池的续航时间。所以,如果系统中某一个模块暂时不需要使用,就可以通过regulator关闭其电源供应;或者降低提供给该模块的电压、电流大小。Regulator的文档在KERNEL/Documentation/Power/Regulator中。 Regulator与模块转载 2012-03-21 16:39:22 · 843 阅读 · 0 评论 -
Linux Kernel and Android 休眠与唤醒(中文版)
Table of Contents简介国际化版本信息对于休眠(suspend)的简单介绍Linux Suspend 的流程相关的文件:准备, 冻结进程让外设进入休眠ResumeAndroid 休眠(suspend)涉及到的文件:特性介绍Early SuspendLate ResumeWake LockAndroid SuspendEarly Suspen转载 2012-07-11 08:48:30 · 1042 阅读 · 0 评论 -
电池容量足够低如何触发自动关机(Riogrande platform&Qualcom platform)
1. 进入手机/sys/devices/platform/nmk-i2c.2/i2c-2/2-0040/leds/ 或 sys/class/leds/目录list如下 pwr-red,pwr-green,pwr-blue //控制充电led l-key-red,l-key-green,l-key-blue //控制left button led m-key-r转载 2013-08-07 10:50:46 · 2214 阅读 · 2 评论