diff options
author | Catalin Patulea <cat@vv.carleton.ca> | 2007-09-25 04:45:49 +0000 |
---|---|---|
committer | Catalin Patulea <cat@vv.carleton.ca> | 2007-09-25 04:45:49 +0000 |
commit | 2a0ae89c26c4b7220072f6aa87df6f919f6bf08d (patch) | |
tree | 5064907e363df487fa34d3ca850d6b6c3d0cca8c /firmware/target/arm/olympus | |
parent | 7e891aa4d398b85c05c43eaa7792935f6df56a94 (diff) | |
download | rockbox-2a0ae89c26c4b7220072f6aa87df6f919f6bf08d.tar.gz rockbox-2a0ae89c26c4b7220072f6aa87df6f919f6bf08d.zip |
m:robe 500i port: Get interrupts firing and the timer ticking
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14853 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/olympus')
-rwxr-xr-x | firmware/target/arm/olympus/mrobe-500/crt0.S | 5 | ||||
-rw-r--r-- | firmware/target/arm/olympus/mrobe-500/kernel-mr500.c | 2 | ||||
-rw-r--r-- | firmware/target/arm/olympus/mrobe-500/system-mr500.c | 3 |
3 files changed, 9 insertions, 1 deletions
diff --git a/firmware/target/arm/olympus/mrobe-500/crt0.S b/firmware/target/arm/olympus/mrobe-500/crt0.S index a7c1131367..193470fd4a 100755 --- a/firmware/target/arm/olympus/mrobe-500/crt0.S +++ b/firmware/target/arm/olympus/mrobe-500/crt0.S | |||
@@ -48,6 +48,11 @@ start: | |||
48 | str r0, [r1, #28] | 48 | str r0, [r1, #28] |
49 | #endif | 49 | #endif |
50 | 50 | ||
51 | /* Disable high vectors (at 0xffff0000 instead of 0x00000000) */ | ||
52 | mrc p15, 0, r0, c1, c0 | ||
53 | and r0, r0, #~(1<<13) | ||
54 | mcr p15, 0, r0, c1, c0 | ||
55 | |||
51 | #if !defined(BOOTLOADER) | 56 | #if !defined(BOOTLOADER) |
52 | 57 | ||
53 | #if !defined(STUB) | 58 | #if !defined(STUB) |
diff --git a/firmware/target/arm/olympus/mrobe-500/kernel-mr500.c b/firmware/target/arm/olympus/mrobe-500/kernel-mr500.c index 487bc2d7d2..be2b14b3cb 100644 --- a/firmware/target/arm/olympus/mrobe-500/kernel-mr500.c +++ b/firmware/target/arm/olympus/mrobe-500/kernel-mr500.c | |||
@@ -59,5 +59,5 @@ void TIMER1(void) | |||
59 | 59 | ||
60 | current_tick++; | 60 | current_tick++; |
61 | 61 | ||
62 | IO_INTC_IRQ0 |= 1<<IRQ_TIMER1; | 62 | IO_INTC_IRQ0 = 1<<IRQ_TIMER1; |
63 | } | 63 | } |
diff --git a/firmware/target/arm/olympus/mrobe-500/system-mr500.c b/firmware/target/arm/olympus/mrobe-500/system-mr500.c index 7be44f6242..913850ddb8 100644 --- a/firmware/target/arm/olympus/mrobe-500/system-mr500.c +++ b/firmware/target/arm/olympus/mrobe-500/system-mr500.c | |||
@@ -167,6 +167,9 @@ void system_init(void) | |||
167 | IO_INTC_FISEL1 = 0; | 167 | IO_INTC_FISEL1 = 0; |
168 | IO_INTC_FISEL2 = 0; | 168 | IO_INTC_FISEL2 = 0; |
169 | 169 | ||
170 | IO_INTC_ENTRY_TBA0 = | ||
171 | IO_INTC_ENTRY_TBA1 = 0; | ||
172 | |||
170 | /* set GIO26 (reset pin) to output and low */ | 173 | /* set GIO26 (reset pin) to output and low */ |
171 | IO_GIO_BITCLR1=(1<<10); | 174 | IO_GIO_BITCLR1=(1<<10); |
172 | IO_GIO_DIR1&=~(1<<10); | 175 | IO_GIO_DIR1&=~(1<<10); |