linux/arch/unicore32/include/mach/pm.h
<<
>>
Prefs
   1/*
   2 * linux/arch/unicore/include/mach/pm.h
   3 *
   4 * Code specific to PKUnity SoC and UniCore ISA
   5 *
   6 * Copyright (C) 2001-2010 GUAN Xue-tao
   7 *
   8 * This program is free software; you can redistribute it and/or modify
   9 * it under the terms of the GNU General Public License version 2 as
  10 * published by the Free Software Foundation.
  11 */
  12#ifndef __PUV3_PM_H__
  13#define __PUV3_PM_H__
  14
  15#include <linux/suspend.h>
  16
  17struct puv3_cpu_pm_fns {
  18        int     save_count;
  19        void    (*save)(unsigned long *);
  20        void    (*restore)(unsigned long *);
  21        int     (*valid)(suspend_state_t state);
  22        void    (*enter)(suspend_state_t state);
  23        int     (*prepare)(void);
  24        void    (*finish)(void);
  25};
  26
  27extern struct puv3_cpu_pm_fns *puv3_cpu_pm_fns;
  28
  29/* sleep.S */
  30extern void puv3_cpu_suspend(unsigned int);
  31
  32extern void puv3_cpu_resume(void);
  33
  34extern int puv3_pm_enter(suspend_state_t state);
  35
  36/* Defined in hibernate_asm.S */
  37extern int restore_image(pgd_t *resume_pg_dir, struct pbe *restore_pblist);
  38
  39/* References to section boundaries */
  40extern const void __nosave_begin, __nosave_end;
  41
  42extern struct pbe *restore_pblist;
  43#endif
  44