reset.c
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. #include <linux/kernel.h>
  2. #include <asm/system.h>
  3. #include <asm/baget/baget.h>
  4. #define R3000_RESET_VEC  0xbfc00000
  5. typedef void vector(void);
  6. static void baget_reboot(char *from_fun)
  7. {
  8. cli();
  9. baget_printk("n%s: jumping to RESET code...n", from_fun);
  10. (*(vector*)R3000_RESET_VEC)();
  11. }
  12. /* fixme: proper functionality */
  13. void baget_machine_restart(char *command)
  14. {
  15. baget_reboot("restart");
  16. }
  17. void baget_machine_halt(void)
  18. {
  19. baget_reboot("halt");
  20. }
  21. void baget_machine_power_off(void)
  22. {
  23. baget_reboot("power off");
  24. }