[BACK]Return to loader.S CVS log [TXT][DIR] Up to [local] / funnyos / arch / testarm / boot

File: [local] / funnyos / arch / testarm / boot / loader.S (download)

Revision 1.1.1.1 (vendor branch), Tue Oct 16 08:41:04 2007 UTC (16 years, 8 months ago) by init
Branch: nbrk
CVS Tags: init
Changes since 1.1: +0 -0 lines

Initial import of funnyos; still much more work to do

/*
 * $Id: loader.S,v 1.1.1.1 2007/10/16 08:41:04 init Exp $
 */
/*
 *	FunnyOS loader
 *	for gxemul test arm machines.
 */
.text
.global _start
.global main

_start:
bl 	_vector_reset		/* reset */
bl 	_vector_undef		/* undefined insn */
bl 	_vector_swi			/* software intr handler */
bl 	_vector_dataabrt	/* data abort */
bl 	_vector_prefabrt	/* prefetch abort */
.word 0x00000000		/* [reserved] */
bl 	_vector_irq			/* IRQ */
bl 	_vector_fiq			/* Fast Interrupt Request */

_vector_reset:
	/*
		Will enter here just right after RESET.
		Set up stack and call main.
	*/

	ldr r13, Astack	/* XXX stack at the end of phys mem */

	b main
	/* NOTREACHED */

_vector_undef:
	/* Undefined insn handler */
	mov pc, r14

_vector_swi:
	mov pc, r14

_vector_dataabrt:
	/* XXX fatal */
	nop

_vector_prefabrt:
	nop

_vector_irq:
	//bl irqc_intr
	nop

_vector_fiq:
	nop

/* last word of the physical memory */
Astack:
.word 	0x01fffffc