Subversion Repositories HelenOS

Rev

Rev 2200 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2200 Rev 2264
1
#
1
#
2
# Copyright (c) 2003-2004 Jakub Jermar
2
# Copyright (c) 2003-2004 Jakub Jermar
3
# All rights reserved.
3
# All rights reserved.
4
#
4
#
5
# Redistribution and use in source and binary forms, with or without
5
# Redistribution and use in source and binary forms, with or without
6
# modification, are permitted provided that the following conditions
6
# modification, are permitted provided that the following conditions
7
# are met:
7
# are met:
8
#
8
#
9
# - Redistributions of source code must retain the above copyright
9
# - Redistributions of source code must retain the above copyright
10
#   notice, this list of conditions and the following disclaimer.
10
#   notice, this list of conditions and the following disclaimer.
11
# - Redistributions in binary form must reproduce the above copyright
11
# - Redistributions in binary form must reproduce the above copyright
12
#   notice, this list of conditions and the following disclaimer in the
12
#   notice, this list of conditions and the following disclaimer in the
13
#   documentation and/or other materials provided with the distribution.
13
#   documentation and/or other materials provided with the distribution.
14
# - The name of the author may not be used to endorse or promote products
14
# - The name of the author may not be used to endorse or promote products
15
#   derived from this software without specific prior written permission.
15
#   derived from this software without specific prior written permission.
16
#
16
#
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
#
27
#
28
 
28
 
29
.text
29
.text
30
 
30
 
31
.global calibrate_delay_loop
31
.global calibrate_delay_loop
32
.global asm_delay_loop
32
.global asm_delay_loop
33
.global dummy
33
.global dummy
34
 
34
 
35
#.global arch_grab_console
35
#.global arch_grab_console
36
#.global arch_release_console
36
#.global arch_release_console
37
 
37
 
38
.global cpu_halt
38
.global cpu_halt
39
.global fpu_context_restore
39
.global fpu_context_restore
40
.global fpu_context_save
40
.global fpu_context_save
41
.global fpu_enable
41
.global fpu_enable
42
.global fpu_init
42
.global fpu_init
43
 
43
 
44
#.global interrupts_disable
44
#.global interrupts_disable
45
#.global interrupts_enable
45
#.global interrupts_enable
46
#.global interrupts_read
46
#.global interrupts_read
47
#.global interrupts_restore
47
#.global interrupts_restore
48
#.global memcpy
48
#.global memcpy
49
#.global memcpy_from_uspace
49
#.global memcpy_from_uspace
50
#.global memcpy_to_uspace
50
#.global memcpy_to_uspace
51
#.global memsetb
51
#.global memsetb
52
 
52
 
53
.global panic_printf
53
.global panic_printf
54
.global symbol_table
54
.global symbol_table
55
.global sys_tls_set
55
.global sys_tls_set
56
 
56
 
57
#.global tlb_invalidate_asid
57
#.global tlb_invalidate_asid
58
#.global tlb_invalidate_pages
58
#.global tlb_invalidate_pages
59
 
59
 
60
.global userspace
60
.global userspace
61
	
61
	
62
calibrate_delay_loop:
62
calibrate_delay_loop:
63
	# stop gxemul
63
	# stop gxemul
64
    ldr r1, =0x10000010
64
    ldr r1, =0x10000010
65
    eor r2, r2
65
    eor r2, r2
66
    strb   r3, [r1, r2]    
66
    strb   r3, [r1, r2]    
67
    bkpt	
67
    bkpt	
68
 
68
 
69
asm_delay_loop:
69
asm_delay_loop:
70
	mov	pc, lr // ret
70
	mov	pc, lr // ret
71
 
71
 
72
cpu_halt:
72
cpu_halt:
73
	bkpt
73
	bkpt
74
 
74
 
75
fpu_context_restore:
75
fpu_context_restore:
76
	bkpt
76
	bkpt
77
    
77
    
78
fpu_context_save:
78
fpu_context_save:
79
	bkpt
79
	bkpt
80
    
80
    
81
fpu_enable:
81
fpu_enable:
82
	bkpt
82
	bkpt
83
 
83
 
84
fpu_init:
84
fpu_init:
85
    bkpt
85
    bkpt
86
    
86
    
87
panic_printf:
87
panic_printf:
88
	bl aux_printf
88
	bl debug_printf
89
	# stop gxemul
89
	# stop gxemul
90
    ldr r1, =0x10000010
90
    ldr r1, =0x10000010
91
    eor r2, r2
91
    eor r2, r2
92
    strb   r3, [r1, r2]    
92
    strb   r3, [r1, r2]    
93
    bkpt	
93
    bkpt	
94
 
94
 
95
symbol_table:
95
symbol_table:
96
	bkpt
96
	bkpt
97
 
97
 
98
sys_tls_set:
98
sys_tls_set:
99
	bkpt
99
	bkpt
100
 
100
 
101
userspace:
101
userspace:
102
	bkpt
102
	bkpt
103
 
103
 
104
dummy:
104
dummy:
105
 
105
 
106
0:
106
0:
107
	bkpt
107
	bkpt
108
 
108