power.c
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  *  arch/mips/philips/nino/power.c
  3.  *
  4.  *  Copyright (C) 2000 Jim Pick <jim@jimpick.com>
  5.  *  Copyright (C) 2001 Steven J. Hill (sjhill@realitydiluted.com)
  6.  *
  7.  * This program is free software; you can redistribute it and/or modify
  8.  * it under the terms of the GNU General Public License version 2 as
  9.  * published by the Free Software Foundation.
  10.  *
  11.  *  Power management routines for the Philips Nino
  12.  */
  13. #include <asm/io.h>
  14. #include <asm/tx3912.h>
  15. void nino_wait(void)
  16. {
  17. /* We stop the CPU to conserve power */
  18. outl(inl(TX3912_POWER_CTRL) | TX3912_POWER_CTRL_STOPCPU,
  19.  TX3912_POWER_CTRL);
  20. /* 
  21.  * We wait until an interrupt happens...
  22.  */
  23. /* We resume here */
  24. outl(inl(TX3912_POWER_CTRL) & ~TX3912_POWER_CTRL_STOPCPU,
  25.  TX3912_POWER_CTRL);
  26. /* Give ourselves a little delay */
  27. __asm__ __volatile__(
  28. "nopnt"
  29. "nopnt"
  30. "nopnt"
  31. "nopnt"
  32. "nopnt"
  33. "nopnt"
  34. "nopnt");
  35. }