linux 内核 睡眠,linux内核对S3C2410睡眠模式的支持有哪些?
一、S3C2410支持4种供电模式
(1)NORMAL MODE
耗电最大、可以通过关闭具体控制器的时钟来节电
(2)SLOW MODE
在此模式下可以没有内部PLL,耗电情况依赖于外部时钟的频率
(3)IDLE MODE
FCLK被关断,主要由于CPU core节电。
可以任何通过外部中断唤醒
(4)Power_OFF MODE
除了处理器唤醒逻辑单元外,处理器不损耗任何电量。可以通过EINT[15:0] 或 RTC alarm interrupt唤醒系统
二、S3C2410各种节电模式的进入
(1)慢速模式(SLOW)
CLKSLOW的SLOW_BIT置1进入
(2)空闲模式(IDLE)
CLKCON[2]被置1则进入
(3)掉电模式(Power_OFF)
CLKCON[3]置1进入
三、S3C2410进入掉电模式前的准备工作
1、为掉电模式设置合理的GPIO
2、在中断屏蔽寄存器中屏蔽所有中断
3、合理配置包括实时时钟在内的唤醒源
4、挂起USB。
MISCCR[13:12]=11b
5、将睡眠返回地址或一些不希望在掉电模式下丢失的数据存放在GSTATUS3,4 中
6、配置MISCCR[1:0]让数据总线上拉
7、关闭LCD
8、为了填充TLB读取REFRESH、 CLKCON 和MISCCR寄存器。
第8点理解起来可能稍微困难一点,需要说明一下:
因为在进入掉电模式前还需要让SDRAM挂起,在SDRAM挂起后还需要操作REFRESH、CLKCON、MISCCR特殊功能寄存器,而这些寄存器的地址可能是虚拟地址,这就要求TLB中要有相应的入口。
如果没有的话就要到sdram中取相应的页表,而此时sdram已经挂起了,所以为了防止这种情况的产生,可以在挂起sdram前读取要访问的地址,这样TLB中就会保留有相应的页表项,访问REFRESH、CLKCON、MISCCR时就不会需要sdram的支持了。
9、设置REFRESH[22]=1b让sdram进入自刷新模式
10、等待sdram自刷新有效
1
1、设置 MISCCR[19:17]=111b 使 SDRAM 的信号 (SCLK0,SCLK1 and SCKE) 在 Power_OF 模式下被保护
1
2、设置CLKCON进入Power_OFF模式
四、S3C2410掉电模式唤醒过程
1、通过唤醒源唤醒系统,产生内部复位信号
2、系统复位后,测试GSTATUS2[2] 确实系统是否是从Power_OFF模式唤醒的
3、设置MISCCR[19:17]=000b释放SDRAM信号保护
4、配置SDRAM控制器
5、等待直到SDRAM自刷新释放
6、读取GSTATUS
3、4的值,可以利用它们回复到睡眠前的程序位置
注意:利用外部中断EINT[15:0]唤醒系统,需要保持nBATT_FLT为高电平。
全部
linux 内核 睡眠,linux内核对S3C2410睡眠模式的支持有哪些?相关推荐
- linux 内核 面试,LINUX内核经典面试题
4) 用户进程间通信主要哪几种方式?5) 通过伙伴系统申请内核内存的函数有哪些?6) 通过slab分配器申请内核内存的函数有?7) Linux的内核空间和用户空间是如何划分的(以32位系统为例)?8) ...
- 一文看懂Linux内核!Linux内核架构和工作原理详解
linux内核相关视频解析: 5个方面分析linux内核架构,让你对内核不再陌生 90分钟了解Linux内存架构,numa的优势,slab的实现,vmalloc的原理 手把手带你实现一个Linux内核 ...
- 深度:一文看懂Linux内核!Linux内核架构和工作原理详解
简介 作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址.目前支持模块的动态装卸(裁剪).Linux内核就是基于这个策略实现的.Linux进程1.采用层次结构,每个 ...
- 【Linux 内核】Linux 内核源码目录说明 ① ( arch 目录 | block 目录 | certs 目录 | crypto 目录 | Documentation 目录 )
文章目录 一.arch 目录 二.block 目录 三.certs 目录 四.crypto 目录 五.Documentation 目录 在上一篇博客 [Linux 内核]Linux 内核源码结构 ( ...
- 【Linux 内核】Linux 操作系统结构 ( Linux 内核在操作系统中的层级 | Linux 内核子系统及关系 | 进程调度 | 内存管理 | 虚拟文件系统 | 网络管理 | 进程间通信 )
文章目录 一.Linux 内核在操作系统中的层级 二.Linux 内核子系统 三.Linux 内核子系统之间的关系 一.Linux 内核在操作系统中的层级 Linux 内核 所在层级 : 整个计算机系 ...
- 【Linux 内核】Linux 内核特性 ( 组织形式 | 进程调度 | 内核线程 | 多平台虚拟内存管理 | 虚拟文件系统 | 内核模块机制 | 定制系统调用 | 网络模块架构 )
文章目录 一.Linux 内核特性 1.Linux 内核组织形式 2.Linux 进程调度 3.Linux 内核线程 4.Linux 内核多平台虚拟内存管理 5.Linux 虚拟文件系统 6.Linu ...
- Linux内核和Linux发行版(了解)
Linux内核和Linux发行版(了解) Linux内核:Linux内核是一种开放源码的操作系统,由Linux Torvalds(Linux之父)负责维护,提供硬件抽象层.硬盘及文件系统控制及多任务功 ...
- linux内核和发行版本的关系,简述Linux内核和Linux发行版的区别
做服务器运维工作,要经常和Linux的版本号打交道,但一直搞不明白Linux内核和Linux发行版到底是个啥东西.其实要理解Linux内核和Linux发行版之间的关系,只要能理解下面的关系就可以了: ...
- linux内核与Linux发行版本区别
linux内核:Linux内核指的是一个由Linus Torvalds负责维护,提供硬件抽象层.硬盘及文件系统控制及多任务功能的系统核心程序. linux发行版本:Linux发行版就是由Linux内核 ...
最新文章
- 输入输出导入导出问题
- ThinkPHP 3.2 Token表单令牌
- 新年新气象,用新年的喜庆来迎接的生活
- linux常见故障处理,[转载]Linux常见操作和故障处理汇总
- Java国际化资源绑定-----示例
- ZooKeeper 概念讲的好
- 【元胞自动机】基于matlab保守策略元胞自动机三车道(不开放辅路,软件园不影响)交通流模型【含Matlab源码 1293期】
- html5颜色选择按钮,H5的input color系统颜色选择器
- 机器学习算法初识—二分k均值算法
- 2014.3 USACO月赛T1 Watering the Fields
- Lombok之@Cleanup使用
- 调用微信接口上传图片总结
- vue常用下载的依赖
- 怎么学好Web前端开发 有哪些相关书籍推荐
- 可发教育类论文的期刊《家长》简介及投稿邮箱
- 电影《驯龙高手1》中的管理知识
- 网络正常,某个网页或软件无法加载
- 小妞会装机 -- 一个装机软件的开发笔记 (二)
- 会声会影x10中文版
- Java根据txt文件数据得到list_java中如何将一个txt文件中的数字读取到一个ArrayList集合中?...
热门文章
- duilib消息机制的介绍
- Verilog HDL语言实现ROM、RAM+有限状态机
- Metasploit
- C++学习之路 | PTA乙级—— 1045 快速排序 (25 分)(精简)
- java函数和构造函数_JAVA的构造器和C++的构造函数有什么区别?
- java栈编程题_Java实现栈和队列面试题
- git php自动发布,使用 Git Hooks 实现自动部署PHP项目
- 系统鸿蒙生态链,任正非透露鸿蒙系统细节,比安卓速度快60%,两三年建好生态链...
- 获取显示器的唯一编号_宝马奔驰才配拥有的HUD抬头显示器,买菜车也能无损安装!...
- JAVA入门级教学之(对象和引用)