linux/arch/riscv/kernel/reset.c

39 lines
585 B
C
Raw Normal View History

// SPDX-License-Identifier: GPL-2.0-only
/*
* Copyright (C) 2012 Regents of the University of California
*/
#include <linux/reboot.h>
#include <linux/pm.h>
static void default_power_off(void)
{
while (1)
wait_for_interrupt();
}
void (*pm_power_off)(void) = NULL;
EXPORT_SYMBOL(pm_power_off);
void machine_restart(char *cmd)
{
do_kernel_restart(cmd);
while (1);
}
void machine_halt(void)
{
if (pm_power_off != NULL)
pm_power_off();
else
default_power_off();
}
void machine_power_off(void)
{
if (pm_power_off != NULL)
pm_power_off();
else
default_power_off();
}