diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2010-04-07 03:43:48 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2010-04-07 03:43:48 +0000 |
commit | 87eea33def283e23e239e716ee67093b0bdde226 (patch) | |
tree | 834f1914514735a39842e5ec69047138d28bb433 /firmware/target/arm/imx31/gigabeat-s | |
parent | 48789c5361419ebc88fe603912c139ca077b5cfb (diff) | |
download | rockbox-87eea33def283e23e239e716ee67093b0bdde226.tar.gz rockbox-87eea33def283e23e239e716ee67093b0bdde226.zip |
Gigabeat S (imx31): Begin voltage and frequency scaling code. For now, to avoid overdrive voltage, just lower core voltage to 1.35V since voltage scaling shouldn't be required for frequencies lower than 399 MHz (according to Freescale BSP, which set all working points to 1.35V for those frequencies). Perhaps battery life will improve as well (cross fingers :).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25506 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/imx31/gigabeat-s')
-rw-r--r-- | firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c | 2 | ||||
-rw-r--r-- | firmware/target/arm/imx31/gigabeat-s/system-imx31.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c b/firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c index 775f5cebf0..8e81447bd3 100644 --- a/firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/kernel-imx31.c | |||
@@ -25,6 +25,7 @@ | |||
25 | #include "mc13783.h" | 25 | #include "mc13783.h" |
26 | #include "ccm-imx31.h" | 26 | #include "ccm-imx31.h" |
27 | #include "sdma-imx31.h" | 27 | #include "sdma-imx31.h" |
28 | #include "dvfs_dptc-imx31.h" | ||
28 | #include "kernel.h" | 29 | #include "kernel.h" |
29 | #include "thread.h" | 30 | #include "thread.h" |
30 | 31 | ||
@@ -69,6 +70,7 @@ void kernel_device_init(void) | |||
69 | sdma_init(); | 70 | sdma_init(); |
70 | spi_init(); | 71 | spi_init(); |
71 | mc13783_init(); | 72 | mc13783_init(); |
73 | dvfs_dptc_start(); | ||
72 | } | 74 | } |
73 | 75 | ||
74 | #ifdef BOOTLOADER | 76 | #ifdef BOOTLOADER |
diff --git a/firmware/target/arm/imx31/gigabeat-s/system-imx31.c b/firmware/target/arm/imx31/gigabeat-s/system-imx31.c index 65299cb8d0..cd684e77ac 100644 --- a/firmware/target/arm/imx31/gigabeat-s/system-imx31.c +++ b/firmware/target/arm/imx31/gigabeat-s/system-imx31.c | |||
@@ -31,6 +31,7 @@ | |||
31 | #include "debug.h" | 31 | #include "debug.h" |
32 | #include "ccm-imx31.h" | 32 | #include "ccm-imx31.h" |
33 | #include "mc13783.h" | 33 | #include "mc13783.h" |
34 | #include "dvfs_dptc-imx31.h" | ||
34 | 35 | ||
35 | static unsigned long product_rev; | 36 | static unsigned long product_rev; |
36 | static unsigned long system_rev; | 37 | static unsigned long system_rev; |
@@ -241,6 +242,7 @@ void __attribute__((naked)) imx31_regclr32(volatile uint32_t *reg_p, | |||
241 | #ifdef BOOTLOADER | 242 | #ifdef BOOTLOADER |
242 | void system_prepare_fw_start(void) | 243 | void system_prepare_fw_start(void) |
243 | { | 244 | { |
245 | dvfs_dptc_stop(); | ||
244 | disable_interrupt(IRQ_FIQ_STATUS); | 246 | disable_interrupt(IRQ_FIQ_STATUS); |
245 | avic_disable_int(INT_ALL); | 247 | avic_disable_int(INT_ALL); |
246 | mc13783_close(); | 248 | mc13783_close(); |