add cpu frequency scaling to the gigabeat. default/normal: 100MHz, boosted: 300MHz

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12023 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Marcoen Hirschberg 2007-01-16 15:49:29 +00:00
parent 0fedaa205c
commit 6309eabc64
3 changed files with 33 additions and 2 deletions

View file

@ -68,4 +68,26 @@ void system_init(void)
}
void set_cpu_frequency(long frequency)
{
if (frequency == CPUFREQ_MAX)
{
/* FCLK: 300MHz, HCLK: 100MHz, PCLK: 50MHz */
/* MDIV: 97, PDIV: 1, SDIV: 2 */
/* HDIV: 3, PDIV: 1 */
MPLLCON = (97 << 12) | (1 << 4) | 2;
CLKDIVN = (3 << 1) | 1;
FREQ = CPUFREQ_MAX;
}
else
{
/* FCLK: 200MHz, HCLK: 100MHz, PCLK: 50MHz */
/* MDIV: 62, PDIV: 1, SDIV: 2 */
/* HDIV: 1, PDIV: 1 */
MPLLCON = (62 << 12) | (1 << 4) | 3;
CLKDIVN = (0 << 1) | 1;
FREQ = CPUFREQ_NORMAL;
}
}