确实是在uboot中有设置
在/cpu/arm926ejs/davinci/lovwlevel_init.S文件中进行了设置:
/* Program the PLL Multiplier */
ldr r6, PLL2_PLLM
mov r2, $0x17 /* 162 MHz */
str r2, [r6]
/* Program the PLL2 Divisor Value */
ldr r6, PLL2_DIV1
mov r4, $0x0b /* 54 MHz */
str r4, [r6]
可以看到上面两段代码对倍频寄存器(PLL2_PLLM)和分频寄存器进行了设置(PLL2_DIV1)。楼主可以对应你的datasheet进行修改。
在/cpu/arm926ejs/davinci/cpu.c中有这样一个函数
int print_cpuinfo(void)
{
/* REVISIT fetch and display CPU ID and revision information
* too ... that will matter as more revisions appear.
*/
printf("Cores: ARM %d MHz",
pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, ARM_PLLDIV));
#ifdef DSP_PLLDIV
printf(", DSP %d MHz",
pll_sysclk_mhz(DAVINCI_PLL_CNTRL0_BASE, DSP_PLLDIV));
#endif
printf("nDDR: %d MHzn",
/* DDR PHY uses an x2 input clock */
pll_sysclk_mhz(DAVINCI_PLL_CNTRL1_BASE, DDR_PLLDIV)
/ 2);
return 0;
}
该函数负责在输出ARM,DDR的频率