root/arch/mips/dec/reset.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. back_to_prom
  2. dec_machine_restart
  3. dec_machine_halt
  4. dec_machine_power_off
  5. dec_intr_halt

   1 // SPDX-License-Identifier: GPL-2.0
   2 /*
   3  * Reset a DECstation machine.
   4  *
   5  * Copyright (C) 199x  the Anonymous
   6  * Copyright (C) 2001, 2002, 2003  Maciej W. Rozycki
   7  */
   8 #include <linux/interrupt.h>
   9 #include <linux/linkage.h>
  10 
  11 #include <asm/addrspace.h>
  12 
  13 typedef void __noreturn (* noret_func_t)(void);
  14 
  15 static inline void __noreturn back_to_prom(void)
  16 {
  17         noret_func_t func = (void *)CKSEG1ADDR(0x1fc00000);
  18 
  19         func();
  20 }
  21 
  22 void __noreturn dec_machine_restart(char *command)
  23 {
  24         back_to_prom();
  25 }
  26 
  27 void __noreturn dec_machine_halt(void)
  28 {
  29         back_to_prom();
  30 }
  31 
  32 void __noreturn dec_machine_power_off(void)
  33 {
  34     /* DECstations don't have a software power switch */
  35         back_to_prom();
  36 }
  37 
  38 irqreturn_t dec_intr_halt(int irq, void *dev_id)
  39 {
  40         dec_machine_halt();
  41 }

/* [<][>][^][v][top][bottom][index][help] */