diff options
author | Karl Kurbjun <kkurbjun@gmail.com> | 2008-11-12 04:15:34 +0000 |
---|---|---|
committer | Karl Kurbjun <kkurbjun@gmail.com> | 2008-11-12 04:15:34 +0000 |
commit | 59d4d2025c9f1b0a68b780fe6a6f0e313caf3027 (patch) | |
tree | 600746fc28046ddfc58498fd69d4afef8d40e419 /firmware/target/arm/s3c2440 | |
parent | d42041043b95617244ffdb9150c5e2f2720a8a83 (diff) | |
download | rockbox-59d4d2025c9f1b0a68b780fe6a6f0e313caf3027.tar.gz rockbox-59d4d2025c9f1b0a68b780fe6a6f0e313caf3027.zip |
Revert last commit (accidentally committed the whole tree)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19095 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/s3c2440')
-rw-r--r-- | firmware/target/arm/s3c2440/crt0.S | 16 | ||||
-rw-r--r-- | firmware/target/arm/s3c2440/debug-s3c2440.c | 39 | ||||
-rw-r--r-- | firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c | 2 | ||||
-rw-r--r-- | firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c | 121 | ||||
-rw-r--r-- | firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c | 13 |
5 files changed, 8 insertions, 183 deletions
diff --git a/firmware/target/arm/s3c2440/crt0.S b/firmware/target/arm/s3c2440/crt0.S index af0ef5bba8..ff5eafd042 100644 --- a/firmware/target/arm/s3c2440/crt0.S +++ b/firmware/target/arm/s3c2440/crt0.S | |||
@@ -49,8 +49,8 @@ vectors: | |||
49 | /* Add some strings to detect the bootloader in flash and give it a version | 49 | /* Add some strings to detect the bootloader in flash and give it a version |
50 | * number. (0x040A0028, 0x040A002C) | 50 | * number. (0x040A0028, 0x040A002C) |
51 | */ | 51 | */ |
52 | .string "ROCKBOX\0" | 52 | .string "ROCKBOX" |
53 | .string "R 03.00\0" | 53 | .word 0x0001 |
54 | 54 | ||
55 | /* | 55 | /* |
56 | * Function: word_copy | 56 | * Function: word_copy |
@@ -99,18 +99,6 @@ start: | |||
99 | cmp r0, #0xA0000 | 99 | cmp r0, #0xA0000 |
100 | bne poweron | 100 | bne poweron |
101 | 101 | ||
102 | /* Did an RTC event wake the player up? */ | ||
103 | |||
104 | mov r2, #0x4A000000 | ||
105 | ldr r1, [r2] | ||
106 | ands r1, r1, #0x40000000 | ||
107 | |||
108 | /* Woke up with the alarm - store a flag in GSTATUS3 */ | ||
109 | ldrne r2, =0x560000b8 | ||
110 | movne r1, #0x01 | ||
111 | strne r1, [r2] | ||
112 | bne poweron | ||
113 | |||
114 | /* Set GPG up to read power and menu status */ | 102 | /* Set GPG up to read power and menu status */ |
115 | ldr r2, =0x56000050 | 103 | ldr r2, =0x56000050 |
116 | ldr r1, [r2, #0x18] | 104 | ldr r1, [r2, #0x18] |
diff --git a/firmware/target/arm/s3c2440/debug-s3c2440.c b/firmware/target/arm/s3c2440/debug-s3c2440.c index 6cd6d649cf..97b7123a43 100644 --- a/firmware/target/arm/s3c2440/debug-s3c2440.c +++ b/firmware/target/arm/s3c2440/debug-s3c2440.c | |||
@@ -32,44 +32,7 @@ | |||
32 | 32 | ||
33 | bool __dbg_hw_info(void) | 33 | bool __dbg_hw_info(void) |
34 | { | 34 | { |
35 | char buf[50]; | 35 | return false; |
36 | int line, button; | ||
37 | |||
38 | char reg=0, value=0; | ||
39 | |||
40 | lcd_clear_display(); | ||
41 | lcd_setfont(FONT_SYSFIXED); | ||
42 | |||
43 | while(1) | ||
44 | { | ||
45 | line=0; | ||
46 | snprintf(buf, sizeof(buf), "reg: %08x value: %08x", reg, value); | ||
47 | lcd_puts(0, line++, buf); | ||
48 | |||
49 | button = button_get_w_tmo(HZ/10); | ||
50 | |||
51 | if (button == BUTTON_UP) | ||
52 | reg++; | ||
53 | if (button == BUTTON_DOWN) | ||
54 | reg--; | ||
55 | |||
56 | if (button == BUTTON_VOL_UP) | ||
57 | value++; | ||
58 | if (button == BUTTON_VOL_DOWN) | ||
59 | value--; | ||
60 | |||
61 | if (button == BUTTON_A) | ||
62 | { | ||
63 | // LCD_SPI_start(); | ||
64 | // LCD_SPI_setreg(reg, value); | ||
65 | // LCD_SPI_stop(); | ||
66 | } | ||
67 | |||
68 | lcd_update(); | ||
69 | |||
70 | if (button == (DEBUG_CANCEL|BUTTON_REL)) | ||
71 | return false; | ||
72 | } | ||
73 | } | 36 | } |
74 | 37 | ||
75 | bool __dbg_ports(void) | 38 | bool __dbg_ports(void) |
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c index e09f628809..ac8dc380e2 100644 --- a/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c +++ b/firmware/target/arm/s3c2440/gigabeat-fx/lcd-meg-fx.c | |||
@@ -244,7 +244,7 @@ static void LCD_SPI_init(void) | |||
244 | /* LCD init */ | 244 | /* LCD init */ |
245 | void lcd_init_device(void) | 245 | void lcd_init_device(void) |
246 | { | 246 | { |
247 | #if 0//def BOOTLOADER | 247 | #ifdef BOOTLOADER |
248 | int i; | 248 | int i; |
249 | /* When the Rockbox bootloader starts, we are changing framebuffer address, | 249 | /* When the Rockbox bootloader starts, we are changing framebuffer address, |
250 | but we don't want what's shown on the LCD to change until we do an | 250 | but we don't want what's shown on the LCD to change until we do an |
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c index d625c07cc8..544869ab6c 100644 --- a/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c +++ b/firmware/target/arm/s3c2440/gigabeat-fx/power-meg-fx.c | |||
@@ -70,11 +70,6 @@ void power_off(void) | |||
70 | _backlight_off(); | 70 | _backlight_off(); |
71 | _buttonlight_off(); | 71 | _buttonlight_off(); |
72 | sleep(HZ); | 72 | sleep(HZ); |
73 | |||
74 | /* Do this to allow the drive to properly reset when player restarts | ||
75 | * immediately without running OF shutdown. | ||
76 | */ | ||
77 | GPGCON&=~0x00300000; | ||
78 | 73 | ||
79 | /* Rockbox never properly shutdown the player. When the sleep bit is set | 74 | /* Rockbox never properly shutdown the player. When the sleep bit is set |
80 | * the player actually wakes up in some type of "zombie" state | 75 | * the player actually wakes up in some type of "zombie" state |
@@ -86,122 +81,6 @@ void power_off(void) | |||
86 | CLKCON |=(1<<3); | 81 | CLKCON |=(1<<3); |
87 | 82 | ||
88 | reboot_point(); | 83 | reboot_point(); |
89 | |||
90 | #if 0 | ||
91 | |||
92 | GPBCON=0x00015450; | ||
93 | GPBDAT=0x403; | ||
94 | GPBUP=0x3FD; | ||
95 | |||
96 | GPCCON =0xAAA054A8; | ||
97 | GPCDAT =0x0000038C; | ||
98 | GPCUP =0xFFFF; | ||
99 | |||
100 | |||
101 | GPDCON =0xAAA0AAA5; | ||
102 | GPDDAT =0x00000300; | ||
103 | GPDUP =0xFCFF; | ||
104 | |||
105 | |||
106 | GPECON =0xAA8002AA; | ||
107 | GPEDAT =0x0000FFED; | ||
108 | GPEUP =0x3817; | ||
109 | |||
110 | GPFCON =0x00000a00; | ||
111 | GPFDAT =0x000000F1; | ||
112 | GPFUP =0x000000FF; | ||
113 | |||
114 | GPGCON =0x01401002; | ||
115 | GPGDAT =0x00000180; | ||
116 | GPGUP =0x0000FF7F; | ||
117 | |||
118 | GPHCON =0x001540A5; | ||
119 | GPHDAT =0x000006FD; | ||
120 | GPHUP =0x00000187; | ||
121 | |||
122 | // mine | ||
123 | INTMSK =0xFFFFFFFF; | ||
124 | EINTMASK=0x0FFFFEF0; | ||
125 | EXTINT0 =0xFFFFFECF; | ||
126 | EXTINT1 =0x07; | ||
127 | // | ||
128 | |||
129 | // INTMSK=0xFFFFFFFF; | ||
130 | // EINTMASK=0x00200000; | ||
131 | |||
132 | // GPHDAT=0x00000004; | ||
133 | |||
134 | // EXTINT0=~0x00000130; | ||
135 | // INTMSK=(~0x00000130)+0x00000100; | ||
136 | // GPGUP=0xFFFFFFFF; | ||
137 | |||
138 | //mine | ||
139 | INTMSK =0xFFFFFFDE; | ||
140 | // | ||
141 | |||
142 | SRCPND=0xFFFFFFFF; | ||
143 | INTPND=0xFFFFFFFF; | ||
144 | GSTATUS1=0x00000600; | ||
145 | |||
146 | ADCCON=0x00000004; | ||
147 | |||
148 | // MISCCR=MISCCR&(~0x703000)|0x603000; | ||
149 | LCDCON1=0x00000000; | ||
150 | LOCKTIME=0xFFFFFFFF; | ||
151 | // REFRESH=REFRESH|0x00400000; | ||
152 | |||
153 | // MISCCR=MISCCR|0x000E0000; | ||
154 | |||
155 | // CLKCON=CLKCON|0x00004018; | ||
156 | |||
157 | /* | ||
158 | * This next piece of code was taken from the linux 2.6.17 sources: | ||
159 | * linux/arch/arm/mach-s3c2410/sleep.S | ||
160 | * | ||
161 | * Copyright (c) 2004 Simtec Electronics | ||
162 | * Ben Dooks <ben@simtec.co.uk> | ||
163 | * | ||
164 | * Based on PXA/SA1100 sleep code by: | ||
165 | * Nicolas Pitre, (c) 2002 Monta Vista Software Inc | ||
166 | * Cliff Brake, (c) 2001 | ||
167 | */ | ||
168 | |||
169 | asm volatile | ||
170 | ( | ||
171 | /* get REFRESH, MISCCR, and CLKCON (and ensure in TLB) */ | ||
172 | "ldr r4, =0x48000024 \n" | ||
173 | "ldr r5, =0x56000080 \n" | ||
174 | "ldr r6, =0x4C00000C \n" | ||
175 | "ldr r7, [ r4 ] \n" | ||
176 | "ldr r8, [ r5 ] \n" | ||
177 | "ldr r9, [ r6 ] \n" | ||
178 | |||
179 | /* Setup register writes */ | ||
180 | "ldr r2, =0x006E3000 \n" | ||
181 | "ldr r3, =0x00004018 \n" | ||
182 | "orr r7, r7, #0x00400000 \n" /* SDRAM sleep command */ | ||
183 | "orr r8, r8, r2 \n" /* SDRAM power-down signals */ | ||
184 | "orr r9, r9, r3 \n" /* power down command */ | ||
185 | |||
186 | /* first as a trial-run to load cache */ | ||
187 | "teq pc, #0 \n" | ||
188 | "bl s3c2410_do_sleep \n" | ||
189 | |||
190 | /* now do it for real */ | ||
191 | "teq r0, r0 \n" | ||
192 | "b s3c2410_do_sleep \n" | ||
193 | |||
194 | /* align next bit of code to cache line */ | ||
195 | ".align 8 \n" | ||
196 | "s3c2410_do_sleep: \n" | ||
197 | "streq r7, [ r4 ] \n" /* SDRAM sleep command */ | ||
198 | "streq r8, [ r5 ] \n" /* SDRAM power-down config */ | ||
199 | "streq r3, [ r6 ] \n" /* CPU sleep */ | ||
200 | "1: \n" | ||
201 | "beq 1b \n" | ||
202 | "bx lr \n" | ||
203 | ); | ||
204 | #endif | ||
205 | } | 84 | } |
206 | 85 | ||
207 | #else /* SIMULATOR */ | 86 | #else /* SIMULATOR */ |
diff --git a/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c b/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c index 96afa9b238..8065926e28 100644 --- a/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c +++ b/firmware/target/arm/s3c2440/gigabeat-fx/system-meg-fx.c | |||
@@ -113,14 +113,9 @@ void system_reboot(void) | |||
113 | 113 | ||
114 | static void set_page_tables(void) | 114 | static void set_page_tables(void) |
115 | { | 115 | { |
116 | /* map every memory region to itself */ | 116 | map_section(0, 0, 0x1000, CACHE_NONE); /* map every memory region to itself */ |
117 | map_section(0, 0, 0x1000, CACHE_NONE); | 117 | map_section(0x30000000, 0, 32, CACHE_ALL); /* map RAM to 0 and enable caching for it */ |
118 | 118 | map_section((int)FRAME, (int)FRAME, 1, BUFFERED); /* enable buffered writing for the framebuffer */ | |
119 | /* map RAM to 0 and enable caching for it */ | ||
120 | map_section(0x30000000, 0, 32, CACHE_ALL); | ||
121 | |||
122 | /* enable buffered writing for the framebuffer */ | ||
123 | map_section((int)FRAME, (int)FRAME, 1, BUFFERED); | ||
124 | } | 119 | } |
125 | 120 | ||
126 | void memory_init(void) { | 121 | void memory_init(void) { |
@@ -150,7 +145,7 @@ void s3c_regclr(volatile int *reg, unsigned int mask) | |||
150 | void system_init(void) | 145 | void system_init(void) |
151 | { | 146 | { |
152 | INTMSK = 0xFFFFFFFF; | 147 | INTMSK = 0xFFFFFFFF; |
153 | INTMOD = 0; | 148 | INTMOD = 0; |
154 | SRCPND = 0xFFFFFFFF; | 149 | SRCPND = 0xFFFFFFFF; |
155 | INTPND = 0xFFFFFFFF; | 150 | INTPND = 0xFFFFFFFF; |
156 | INTSUBMSK = 0xFFFFFFFF; | 151 | INTSUBMSK = 0xFFFFFFFF; |