summaryrefslogtreecommitdiffstats
path: root/do_fault_read.S
blob: 566fd6398c6a093ae1533d30ed936e003ebd30b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
.macro ventry label
	.align	7
	b	\label
.endm

	adr	x0, vectors
	msr	vbar_el1, x0
	isb

	adr	x0, ram
1:	ldr	x3, [x0]
	mov	x30, x0
	add	x0, x0, #4096
	tst	x0, #(1 << 30) // 1GB
	b.eq	1b

die:
	mov	x0, #0x84000000
	add	x0, x0, #8
	hvc	#0
	b	.

	.align	11
vectors:
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die
	ventry	die

	.align	12
ram: