git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel/arm7 - Serial works (realview-pb-a8)
[tpg/acess2.git]
/
Kernel
/
arch
/
arm7
/
start.s
diff --git
a/Kernel/arch/arm7/start.s
b/Kernel/arch/arm7/start.s
index
fb28d33
..
abfbb59
100644
(file)
--- a/
Kernel/arch/arm7/start.s
+++ b/
Kernel/arch/arm7/start.s
@@
-3,7
+3,7
@@
KERNEL_BASE = 0x80000000
.section .init
interrupt_vector_table:
b _start @ Reset
.section .init
interrupt_vector_table:
b _start @ Reset
- b .
+ b .
@ ?
b SyscallHandler @ SWI instruction
b .
b .
b SyscallHandler @ SWI instruction
b .
b .
@@
-17,13
+17,16
@@
_start:
mcr p15, 0, r0, c2, c0, 1 @ Set TTBR1 to r0
mcr p15, 0, r0, c2, c0, 0 @ Set TTBR0 to r0 too (for identity)
mcr p15, 0, r0, c2, c0, 1 @ Set TTBR1 to r0
mcr p15, 0, r0, c2, c0, 0 @ Set TTBR0 to r0 too (for identity)
-@ mov r0, #1
-@ mcr p15, 0, r0, c2, c0, 2 @ Set TTCR to 1 (50/50 split)
+ mov r0, #1
+ mcr p15, 0, r0, c2, c0, 2 @ Set TTCR to 1 (50/50 split)
+
+ mov r0, #3
+ mcr p15, 0, r0, c3, c0, 0 @ Set Domain 0 to Manager
-
@
mrc p15, 0, r0, c1, c0, 0
+
mrc p15, 0, r0, c1, c0, 0
orr r0, r0, #1
orr r0, r0, #1
-
@
orr r0, r0, #1 << 23
-
@
mcr p15, 0, r0, c1, c0, 0
+
orr r0, r0, #1 << 23
+
mcr p15, 0, r0, c1, c0, 0
ldr sp, =stack+0x10000 @ Set up stack
ldr r0, =kmain
ldr sp, =stack+0x10000 @ Set up stack
ldr r0, =kmain
@@
-41,10
+44,10
@@
SyscallHandler:
kernel_table0:
.long 0x00000002 @ Identity map the first 4 MiB
kernel_table0:
.long 0x00000002 @ Identity map the first 4 MiB
- .rept 0x801
+ .rept 0x80
0 -
1
.long 0
.endr
.long 0
.endr
- .long 0x00000002 @
Identity map the first 4 M
iB
+ .long 0x00000002 @
Map first 4 MiB to 2G
iB
.long 0x00100002 @
.long 0x00200002 @
.long 0x00300002 @
.long 0x00100002 @
.long 0x00200002 @
.long 0x00300002 @
@@
-79,9
+82,10
@@
kernel_table1_map:
.long kernel_table1_map - KERNEL_BASE + (1 << 4) + 3
.long 0
.long kernel_table1_map - KERNEL_BASE + (1 << 4) + 3
.long 0
+@ Hardware mappings
.globl hwmap_table_0
hwmap_table_0:
.globl hwmap_table_0
hwmap_table_0:
- .long 0x1
6000000 + (1 << 4) + 3 @ Serial Port
+ .long 0x1
0009000 + (1 << 4) + 3 @ UART0
.rept 1024 - 1
.long 0
.endr
.rept 1024 - 1
.long 0
.endr
UCC
git Repository :: git.ucc.asn.au