JZ2440开发板(ARM920T):
在做系统时钟实验时,发现在设置LOCKTIME、CLKDIVN、异步总线模式转换和MPLLCON之间要有足够的间隔时间,否则系统时钟不能正常倍频和分频。
void clock_init(void)
{
LOCKTIME = 0x02000200;
CLKDIVN = 0x03;
/*快速总线模式转到异步总线模式*/
__asm__(
"mrc p15, 0, r1, c1, c0, 0\n"
"orr r1, r1, #0xc0000000\n"
"mcr p15, 0, r1, c1, c0, 0\n"
);
MPLLCON = (0x5c << 12) | (0x01 << 4) | (0x02 << 0);
}