diff options
Diffstat (limited to 'bsps/powerpc/motorola_powerpc/start/bspreset.c')
-rw-r--r-- | bsps/powerpc/motorola_powerpc/start/bspreset.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/bsps/powerpc/motorola_powerpc/start/bspreset.c b/bsps/powerpc/motorola_powerpc/start/bspreset.c new file mode 100644 index 0000000000..0931badae4 --- /dev/null +++ b/bsps/powerpc/motorola_powerpc/start/bspreset.c @@ -0,0 +1,28 @@ +#include <bsp.h> +#include <rtems/bspIo.h> +#include <libcpu/stackTrace.h> +#include <bsp/bootcard.h> + +/*-------------------------------------------------------------------------+ +| Function: bsp_reset +| Description: Reboot the PC. +| Global Variables: None. +| Arguments: None. +| Returns: Nothing. ++--------------------------------------------------------------------------*/ +void bsp_reset(void) +{ + printk("Printing a stack trace for your convenience :-)\n"); + CPU_print_stack(); + /* shutdown and reboot */ + +#if defined(mvme2100) + *(unsigned char*)0xffe00000 |= 0x80; +#else + /* Memory-mapped Port 92 PIB device access + *(unsigned char*)0x80000092 |= 0x01; + */ + outb(1, 0x92); + +#endif +} /* bsp_reset */ |