1 /* SPDX-License-Identifier: GPL-2.0
2  *
3  * Copyright (c) 2006 Andriy Skulysh <askulsyh@gmail.com>
4  */
5 
6 #include <linux/linkage.h>
7 #include <cpu/mmu_context.h>
8 
9 /*
10  * Kernel mode register usage:
11  *	k0	scratch
12  *	k1	scratch
13  * For more details, please have a look at entry.S
14  */
15 
16 #define k0	r0
17 #define k1	r1
18 
19 ENTRY(wakeup_start)
20 ! clear STBY bit
21 	mov	#-126, k1
22    	and	#127, k0
23 	mov.b	k0, @k1
24 ! enable refresh
25 	mov.l	5f, k1
26 	mov.w	6f, k0
27   	mov.w	k0, @k1
28 ! jump to handler
29 	mov.l	4f, k1
30 	jmp	@k1
31 	 nop
32 
33 	.align	2
34 4:	.long	handle_interrupt
35 5:	.long	0xffffff68
36 6:	.word	0x0524
37 
38 ENTRY(wakeup_end)
39 	nop
40