1 /* $NetBSD: bugstart.s,v 1.1 2000/12/05 21:54:33 scw Exp $ */
4 #include <machine/prom.h>
6 #include <machine/asm.h>
12 .space MVMEPROM_ARGS_MAX*4
17 .long _C_LABEL(start) - 0x10
20 #define BUG_ARG(which) _C_LABEL(bugargs) + (which)
22 ENTRY_NOPROFILE
(_start
)
23 ENTRY_NOPROFILE
(start
)
25 lea _C_LABEL
(edata
),%a0
26 movl
#_C_LABEL(end) - 4,%d0
32 movl MVMEPROM_REG_DEVLUN
, BUG_ARG
(MVMEPROM_ARGS_DEVLUN
)
33 movl MVMEPROM_REG_CTRLLUN
, BUG_ARG
(MVMEPROM_ARGS_CTRLLUN
)
34 movl MVMEPROM_REG_FLAGS
, BUG_ARG
(MVMEPROM_ARGS_FLAGS
)
35 movl MVMEPROM_REG_CTRLADDR
, BUG_ARG
(MVMEPROM_ARGS_CTRLADDR
)
36 movl MVMEPROM_REG_ENTRY
, BUG_ARG
(MVMEPROM_ARGS_ENTRY
)
37 movl MVMEPROM_REG_CONFBLK
, BUG_ARG
(MVMEPROM_ARGS_CONFBLK
)
38 movl MVMEPROM_REG_NBARGSTART
, BUG_ARG
(MVMEPROM_ARGS_NBARGSTART
)
39 movl MVMEPROM_REG_NBARGEND
, BUG_ARG
(MVMEPROM_ARGS_NBARGEND
)
40 movl MVMEPROM_REG_ARGSTART
, BUG_ARG
(MVMEPROM_ARGS_ARGSTART
)
41 movl MVMEPROM_REG_ARGEND
, BUG_ARG
(MVMEPROM_ARGS_ARGEND
)
42 jmp _C_LABEL
(_bugstart
)
44 ENTRY_NOPROFILE
(bugexec
)
46 movl BUG_ARG
(MVMEPROM_ARGS_DEVLUN
), MVMEPROM_REG_DEVLUN
47 movl BUG_ARG
(MVMEPROM_ARGS_CTRLLUN
), MVMEPROM_REG_CTRLLUN
48 movl BUG_ARG
(MVMEPROM_ARGS_FLAGS
), MVMEPROM_REG_FLAGS
49 movl BUG_ARG
(MVMEPROM_ARGS_CTRLADDR
), MVMEPROM_REG_CTRLADDR
50 movl BUG_ARG
(MVMEPROM_ARGS_ENTRY
), MVMEPROM_REG_ENTRY
51 movl BUG_ARG
(MVMEPROM_ARGS_CONFBLK
), MVMEPROM_REG_CONFBLK
52 movl BUG_ARG
(MVMEPROM_ARGS_NBARGSTART
), MVMEPROM_REG_NBARGSTART
53 movl BUG_ARG
(MVMEPROM_ARGS_NBARGEND
), MVMEPROM_REG_NBARGEND
54 movl BUG_ARG
(MVMEPROM_ARGS_ARGSTART
), MVMEPROM_REG_ARGSTART
55 movl BUG_ARG
(MVMEPROM_ARGS_ARGEND
), MVMEPROM_REG_ARGEND
56 ENTRY_NOPROFILE
(__main
)