114e067c1SJean-Sebastien A. Beaudry /* 214e067c1SJean-Sebastien A. Beaudry * am33xx-restart.c - Code common to all AM33xx machines. 314e067c1SJean-Sebastien A. Beaudry * 414e067c1SJean-Sebastien A. Beaudry * This program is free software; you can redistribute it and/or modify 514e067c1SJean-Sebastien A. Beaudry * it under the terms of the GNU General Public License version 2 as 614e067c1SJean-Sebastien A. Beaudry * published by the Free Software Foundation. 714e067c1SJean-Sebastien A. Beaudry */ 814e067c1SJean-Sebastien A. Beaudry #include <linux/kernel.h> 97b6d864bSRobin Holt #include <linux/reboot.h> 1014e067c1SJean-Sebastien A. Beaudry 1114e067c1SJean-Sebastien A. Beaudry #include "common.h" 12*61c8621eSTero Kristo #include "prm.h" 1314e067c1SJean-Sebastien A. Beaudry 1414e067c1SJean-Sebastien A. Beaudry /** 1514e067c1SJean-Sebastien A. Beaudry * am3xx_restart - trigger a software restart of the SoC 1614e067c1SJean-Sebastien A. Beaudry * @mode: the "reboot mode", see arch/arm/kernel/{setup,process}.c 1714e067c1SJean-Sebastien A. Beaudry * @cmd: passed from the userspace program rebooting the system (if provided) 1814e067c1SJean-Sebastien A. Beaudry * 1914e067c1SJean-Sebastien A. Beaudry * Resets the SoC. For @cmd, see the 'reboot' syscall in 2014e067c1SJean-Sebastien A. Beaudry * kernel/sys.c. No return value. 2114e067c1SJean-Sebastien A. Beaudry */ 227b6d864bSRobin Holt void am33xx_restart(enum reboot_mode mode, const char *cmd) 2314e067c1SJean-Sebastien A. Beaudry { 2414e067c1SJean-Sebastien A. Beaudry /* TODO: Handle mode and cmd if necessary */ 2514e067c1SJean-Sebastien A. Beaudry 26*61c8621eSTero Kristo omap_prm_reset_system(); 2714e067c1SJean-Sebastien A. Beaudry } 28