2002-11-01 Joel Sherrill <joel@OARcorp.com>

* console/console.c, start/start.c, startup/efi68k_wd.c:
This commit is contained in:
Joel Sherrill
2002-11-01 23:10:45 +00:00
parent a8d0dbd305
commit 4269a4366f
3 changed files with 31 additions and 31 deletions

View File

@@ -42,26 +42,26 @@ static volatile char _tx_stop = 0;
/* _catchUARTint is the interrupt front-end */
extern void _catchUARTint();
asm(" .text
.align 2
.globl _catchUARTint
_catchUARTint:
lea %sp@(4),%sp /* pop return address */
moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */
jbsr uart_interrupt
moveml %sp@+,%d0-%d7/%a0-%a6
rte
asm(" .text\n\
.align 2\n\
.globl _catchUARTint\n\
_catchUARTint:\n\
lea %sp@(4),%sp /* pop return address */\n\
moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */\n\
jbsr uart_interrupt\n\
moveml %sp@+,%d0-%d7/%a0-%a6 \n\
rte\n\
");
/* _fake_trap_1 will continue the UART interrupt (%sr *still*
UART_ISR_LEVEL) as a trap #1 to enter the debugger */
asm(" .text
.align 2
_fake_trap_1:
unlk %a6 /* clear interrupt frame */
lea %sp@(4),%sp /* remove jbsr instruction */
moveml %sp@+,%d0-%d7/%a0-%a6 /* pop registers */
jmp (33*6-12+_VBR) /* jump exception 1 */
asm(" .text\n\
.align 2\n\
_fake_trap_1:\n\
unlk %a6 /* clear interrupt frame */\n\
lea %sp@(4),%sp /* remove jbsr instruction */\n\
moveml %sp@+,%d0-%d7/%a0-%a6 /* pop registers */\n\
jmp (33*6-12+_VBR) /* jump exception 1 */\n\
");
/* dispatch UART interrupt */

View File

@@ -25,15 +25,15 @@ void boot_card();
/* We need to by-pass the link instruction since the RAM chip-
select pins are not yet configured. */
asm volatile ( ".global start ;
asm volatile ( ".global start ;\n\
start:");
/* disable interrupts, load stack pointer */
asm volatile ( "oriw #0x0700, %sr;
movel #end, %d0;
addl " STACK_SIZE ",%d0;
movel %d0,%sp;
link %a6, #0"
asm volatile ( "oriw #0x0700, %sr;\n\
movel #end, %d0;\n\
addl " STACK_SIZE ",%d0;\n\
movel %d0,%sp;\n\
link %a6, #0"\n\
);
/*
* Initialize RAM by copying the .data section out of ROM (if

View File

@@ -29,15 +29,15 @@ void wd_interrupt(void) {
/* _catchWDint is the interrupt front-end */
extern void _catchWDint();
asm(" .text
.align 2
.globl _catchWDint
_catchWDint:
lea %sp@(4),%sp /* pop return address */
moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */
jbsr wd_interrupt
moveml %sp@+,%d0-%d7/%a0-%a6
rte
asm(" .text\n\
.align 2\n\
.globl _catchWDint\n\
_catchWDint:\n\
lea %sp@(4),%sp /* pop return address */\n\
moveml %d0-%d7/%a0-%a6,%sp@- /* save registers */\n\
jbsr wd_interrupt\n\
moveml %sp@+,%d0-%d7/%a0-%a6 \n\
rte\n\
");
void watch_dog_init(void) {