summaryrefslogtreecommitdiffstats
path: root/qemu/roms/SLOF/board-js2x/llfw/stage_s.S
blob: 202350f67dc278614be27992f0eb2dda2443cbbb (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
/******************************************************************************
 * Copyright (c) 2004, 2008 IBM Corporation
 * All rights reserved.
 * This program and the accompanying materials
 * are made available under the terms of the BSD License
 * which accompanies this distribution, and is available at
 * http://www.opensource.org/licenses/bsd-license.php
 *
 * Contributors:
 *     IBM Corporation - initial implementation
 *****************************************************************************/
	.text
	.org	0 /* after loading to mem this is at slaveloop_base */
#	. = 0x3f00 loaded to this addr
	.globl __stage_s_entry

__stage_s_entry:
	bl	$+4
	mflr	r4
	li	r3, 0xff
	not 	r3, r3
	and	r4, r4, r3
	li 0,1 ; std 0,0xf8(4)
	li 0,0 ; std 0,0xa0(4)
slaveloop:
	ori 28,28,0x100
	lis 0,10
	mtctr 0
	bdnz $		# do some waiting, to prevent flooding the buses
	lwz 0,0xa0(4)
	cmpw 0,28
	bne $-20	# wait for our flag

	lwz 0,0x80(4)
	lwz 3,0xc0(4)
	mtctr 0
	bctr		# jump to specified address, with specified GPR3

#	.quad	0	
#	.quad	0