summaryrefslogtreecommitdiff
path: root/firmware/target/arm/as3525/sansa-clip
diff options
context:
space:
mode:
authorRafaël Carré <rafael.carre@gmail.com>2009-06-08 23:05:33 +0000
committerRafaël Carré <rafael.carre@gmail.com>2009-06-08 23:05:33 +0000
commitf5041538574c039b07c4db8d261bd33ec0f3bab0 (patch)
treed4fc2f48c7209e3303b5c48abc211e3a961a7dac /firmware/target/arm/as3525/sansa-clip
parent20a78a36f36967651032ab10b4ee31412e37b69d (diff)
downloadrockbox-f5041538574c039b07c4db8d261bd33ec0f3bab0.tar.gz
rockbox-f5041538574c039b07c4db8d261bd33ec0f3bab0.zip
FS#10048 : enable MMU and data cache on Sansa AMS to give a major speed up
- cache IRAM and DRAM - map IRAM just next to DRAM to remove the need for -mlong-calls and reduce binsize - tweak delays in Fuze button code - tweak delays in Clip button code (down button sometimes doesn't respond anyway : an alternate driver is being worked on) Before reporting any problem, please check your filesystem or format your player from the OF git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21228 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/as3525/sansa-clip')
-rw-r--r--firmware/target/arm/as3525/sansa-clip/button-clip.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/target/arm/as3525/sansa-clip/button-clip.c b/firmware/target/arm/as3525/sansa-clip/button-clip.c
index b6da130d2f..2d2a3a661e 100644
--- a/firmware/target/arm/as3525/sansa-clip/button-clip.c
+++ b/firmware/target/arm/as3525/sansa-clip/button-clip.c
@@ -46,8 +46,9 @@ int button_read_device(void)
46 46
47 /* This is a keypad using C4-C6 as columns and B0-B2 as rows */ 47 /* This is a keypad using C4-C6 as columns and B0-B2 as rows */
48 GPIOC_PIN(4) = (1<<4); 48 GPIOC_PIN(4) = (1<<4);
49 asm volatile("nop\nnop\nnop\nnop\nnop\n"); /* small delay */
49 50
50 /* C4B0 is unused */ 51 (void)GPIOB_PIN(0); /* C4B0 is unused */
51 52
52 if (GPIOB_PIN(1)) 53 if (GPIOB_PIN(1))
53 result |= BUTTON_VOL_UP; 54 result |= BUTTON_VOL_UP;
@@ -58,6 +59,7 @@ int button_read_device(void)
58 GPIOC_PIN(4) = 0x00; 59 GPIOC_PIN(4) = 0x00;
59 60
60 GPIOC_PIN(5) = (1<<5); 61 GPIOC_PIN(5) = (1<<5);
62 asm volatile("nop\nnop\nnop\nnop\nnop\n"); /* small delay */
61 63
62 if (GPIOB_PIN(0)) 64 if (GPIOB_PIN(0))
63 result |= BUTTON_LEFT; 65 result |= BUTTON_LEFT;
@@ -71,6 +73,7 @@ int button_read_device(void)
71 GPIOC_PIN(5) = 0x00; 73 GPIOC_PIN(5) = 0x00;
72 74
73 GPIOC_PIN(6) = (1<<6); 75 GPIOC_PIN(6) = (1<<6);
76 asm volatile("nop\nnop\nnop\nnop\nnop\n"); /* small delay */
74 77
75 if (GPIOB_PIN(0)) 78 if (GPIOB_PIN(0))
76 result |= BUTTON_DOWN; 79 result |= BUTTON_DOWN;