基于mini2440的UBOOT时钟设置
1. S3C2440的时钟架构图
一般而言,系统的时钟通过外接晶振促发,通过内部电路(震荡电路、锁相环、分频)产生所需的时钟源。
2440时钟控制逻辑给整个芯片提供了3种时钟:
FCLK:用于CPU核
HCLK:用于AHB总线设备(高速),如CPU核、存储控制器、中断控制器、LCD控制器、DMA
PCLK:用于APB总线设备(低速),如看门狗、IIS、IIC、PWM定时器、MMC、ADC、UART、GPIO、RTC、SPI。
mini2440外接12M晶振,通过PLL(MPLL和UPLL)倍频。其中,MPLL产生主时钟,12M时钟可以倍频到400MHZ,再通过HDIVN和PDIVN分配到200M的AHB和100M的APB时钟;UPLL产生USB设备专用的48M频率。
倍频频率的设置(Fin:晶振频率 MDIV/PDIV/SDIV:寄存器的值):
2. mini2440时钟相关的寄存器
3. uboot中时钟相关设置
时钟分频设置:
代码路径:cpu/arm920t/start.S
Code:
M/P/S设置:
代码路劲:\board\xxx\mini2440\mini2440.c
Code:
获取PCLK/HCLK的相关函数:
代码路劲:arch/arm/cpu/arm920t/s3c24x0/speed.c
Code:
版权所有, 未经许可不得装载。