Rockchip Clock

一:概述

1、时钟子系统

本章节所指的时钟是给SOC各个组件提供时钟的树状框架,而非内核使用的时钟。和其他模块一样,CLOCK也有框架,用以适配不同的平台。适配层之上是客户代码和接口,也就是各模块(如需要时钟信号的外设)的驱动。适配层之下是具体的SOC的时钟操作细节。

2、时钟树结构

可运行LINUX的主流处理器平台,都有非常复杂的时钟树(CLOCK TREE),由CLOCK相关的器件,以及这些器件输出的CLOCK组成。

3、相关器件

CLOCK相关的器件包括:用于生产CLOCK的有源振荡器(也称谐振荡器)或者无源振荡器(也称晶振);用于倍频的PLL(锁相环);用于分频的Divider;用于多路选择的MUX;用于CLOCK ENABLE控制的与门;使用CLOCK的硬件模块等等。

4、总体流程

主要内容包括:

  1. Enable/Disable Clock
  2. 设置Clock的频率
  3. 选择Clock的Parent

Rockchip Clock_第1张图片

5、代码结构

CLOCK的软件框架由CLOCK的Device Tree(CLOCK的寄存器描述,CLOCK之间的树状关系等),Device driver的CLOCK配置和CLOCK API三部分构成。

你可能感兴趣的:(Rockchip,Linux,Device,Drivers,linux)