]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blob - arch/riscv/kernel/reset.c
timekeeping: Repair ktime_get_coarse*() granularity
[mirror_ubuntu-jammy-kernel.git] / arch / riscv / kernel / reset.c
1 /*
2 * Copyright (C) 2012 Regents of the University of California
3 *
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation, version 2.
7 *
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
12 */
13
14 #include <linux/reboot.h>
15 #include <asm/sbi.h>
16
17 static void default_power_off(void)
18 {
19 sbi_shutdown();
20 while (1);
21 }
22
23 void (*pm_power_off)(void) = default_power_off;
24
25 void machine_restart(char *cmd)
26 {
27 do_kernel_restart(cmd);
28 while (1);
29 }
30
31 void machine_halt(void)
32 {
33 pm_power_off();
34 }
35
36 void machine_power_off(void)
37 {
38 pm_power_off();
39 }