简单导图如下:

clockevents设备结构体:
/**
-
struct clock_event_device - clock event device descriptor
-
@event_handler: Assigned by the framework to be called by the low
-
level handler of the event source -
@set_next_event: set next event function using a clocksource delta
-
@set_next_ktime: set next event function using a direct ktime value
-
@next_event: local storage for the next event in oneshot mode
-
@max_delta_ns: maximum delta value in ns
-
@min_delta_ns: minimum delta value in ns
-
@mult: nanosecond to cycles multiplier
-
@shift: nanoseconds to cycles divisor (power of two)
-
@state_use_accessors:current state of the device, assigned by the core code
-
@features: features
-
@retries: number of forced programming retries
-
@set_state_periodic: switch state to periodic
-
@set_state_oneshot: switch state to oneshot
-
@set_state_oneshot_stopped: switch state to oneshot_stopped
-
@set_state_shutdown: switch state to shutdown
-
@tick_resume: resume clkevt device
-
@broadcast: function to broadcast events
-
@min_delta_ticks: minimum delta value in ticks stored for reconfiguration
-
@max_delta_ticks: maximum delta value in ticks stored for reconfiguration
-
@name: ptr to clock event name
-
@rating: variable to rate clock event devices
-
@irq: IRQ number (only for non CPU local devices)
-
@bound_on: Bound on CPU
-
@cpumask: cpumask to indicate for which CPUs this device works
-
@list: list head for the management code
-
@owner: module reference
*/
struct clock_event_device {
void (*event_handler)(struct clock_event_device ); / 事件到期,产生中断后回调函数 */
int (*set_next_event)(unsigned long evt, struct clock_event_device ); / 下次时间到期时间设置(tick) */
int (*set_next_ktime)(kt

本文详细解析了Linux内核中的clockevents设备结构体及其在`brcm,kona-timer`中的初始化过程,包括配置、注册、中断处理和事件设置等功能。主要涉及clock_event_device结构、clockevents_config_and_register、clockevents_register_device等关键函数。"
122521925,5735379,Android 图片压缩与三级缓存实践,"['Android开发', '图片处理', '缓存策略', '内存管理']
最低0.47元/天 解锁文章
809

被折叠的 条评论
为什么被折叠?



