diff options
Diffstat (limited to 'roms/SLOF/clients/net-snk/oflib/entry.S')
| -rw-r--r-- | roms/SLOF/clients/net-snk/oflib/entry.S | 38 | 
1 files changed, 38 insertions, 0 deletions
| diff --git a/roms/SLOF/clients/net-snk/oflib/entry.S b/roms/SLOF/clients/net-snk/oflib/entry.S new file mode 100644 index 00000000..f0802676 --- /dev/null +++ b/roms/SLOF/clients/net-snk/oflib/entry.S @@ -0,0 +1,38 @@ +/****************************************************************************** + * Copyright (c) 2004, 2011 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 + *****************************************************************************/ + +#include <macros.h> + +	.section	".toc","aw"	# TOC entries are needed for relocation +.prom_entry_toc: +	.tc		_prom_entry[TC],_prom_entry + + +C_ENTRY(call_client_interface) +	ld	r4, .prom_entry_toc@toc(r2)	# Load prom entry point +	mflr	r0 +	std	r0, 16(r1) +	ld	r4, 0(r4) +	stdu	r1, -128(r1) +	std	r2,40(r1) +	mtctr	r4 +	bctrl +	ld	r2,40(r1) +	addi	r1, r1, 128 +	ld	r0, 16(r1) +	mtlr	r0 +	blr + + +C_ENTRY(rtas_call_entry) +	mtctr	r5 +	bctr | 
