时间子系统
文章平均质量分 91
Linux时间子系统
程序猿Ricky的日常干货
擅长扫地、打杂、开车。。
展开
-
watchdog分析(高通平台)
看门狗是一个定时器,它存在的主要目的是防止CPU跑飞导致的无法恢复的问题。它的原理是,设定一个定时时间,然后启动定时器,CPU定时去重设看门狗定时器,当定时器到期后,会直接输出信号给CPU,这个信号可以是一个CPU上的中断引脚,也可以直接输出给CPU的RST引脚。当看门狗定时器输出的信号给到CPU的中断时,CPU一般需要以最高优先级去处理该中断,在中断处理程序中执行恢复或者重启操作;当看门狗定时...原创 2019-12-02 20:53:39 · 9485 阅读 · 0 评论 -
Linux内核中的定时器
jiffies操作函数include/linux/jiffies.h:#define time_after(a,b) \ (typecheck(unsigned long, a) && \ typecheck(unsigned long, b) && \ ((long)((b) - (a)) < 0))#define...原创 2019-08-05 16:58:49 · 1375 阅读 · 0 评论 -
Linux内核中的时间函数
ktime时间函数基于ktime_t格式的时间ktime_t ktime_get(void);获取基于CLOCK_MONOTONIC的当前时间,返回ktime_t格式的数据类型。ktime_t ktime_get_boottime(void);获取基于CLOCK_BOOTTIME的当前时间,返回ktime_t格式的数据类型。ktime_t ktime_get_real(void...原创 2019-08-05 16:52:08 · 18712 阅读 · 0 评论 -
linux clk驱动框架
内核中提供了clk common framework子系统,用来完成对clock的统一管理。 我们将从如下几个方面来介绍clk子系统的内容:1. clk framework简介2. clk framework的实现3. clk和device tree4. 如何添加自己的clock一、 clk framework简介 clk framework是内核中用来统一管理clock的子原创 2016-06-14 16:25:41 · 18079 阅读 · 6 评论 -
内核时间子系统开发
内核的时间子系统,我们从功能上来划分,可以分为两种设备,一种叫做clocksource设备,另一种叫clockevent设备。对于一个MP Core SOC来说,一般和时间子系统相关的有两种器件,一种是free running的system counter设备,它是向系统提供时间的硬件,属于clocksource设备。另一种就是timer定时器设备,不管是CPU内部私有的还是CPU外部公共的,都属于原创 2016-06-06 14:10:22 · 1403 阅读 · 0 评论 -
linux clockevent
转自蜗窝科技 http://www.wowotech.net/timer_subsystem/clock-event.html 一、clock event控制的通用逻辑 1、产生clock event的设备 各种系统的timer硬件形形色色,不过在general clock event device layer,struct clock_event_device转载 2016-06-02 19:38:04 · 683 阅读 · 0 评论 -
linux clocksource
转自转自蜗窝科技 http://www.wowotech.net/linux_kenrel/clocksource.html 一、前言 和洋葱一样,软件也是有层次的,内核往往需要对形形色色的某类型的驱动进行抽象,屏蔽掉其具体的特质,获取该类驱动共同的逻辑,而又根据这些逻辑撰写该类驱动的抽象层。嵌入式系统总是会提供timer的硬件block,软件需要对time转载 2016-06-02 19:35:15 · 921 阅读 · 0 评论 -
ARM generic timer驱动代码分析
转自蜗窝科技 http://www.wowotech.net/linux_kenrel/arm-generic-timer.html一、前言 关注ARM平台上timer driver(clocksource chip driver和clockevent chip driver)的驱动工程师应该会注意到timer硬件的演化过程。在单核时代,各个SOC vendor厂商购买转载 2016-06-02 18:24:10 · 2909 阅读 · 0 评论 -
内核时间子系统的配置
内核中的时间子系统主要向上层提供两种功能,一个就是时间功能,另一个就是timer定时器功能。时间功能: 时间功能是由内核中的timekeeper模块来负责维护,该模块需要clocksource的支持。内核中的模块划分为如下: Timekeeper—>clocksource—>hardware定时器功能: 从原理上说,定时器需要有一个定期到来的tick来驱动它运行,每个tick到来时检查一下定时原创 2016-06-02 13:26:30 · 3214 阅读 · 0 评论