pm.h (1063B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Copyright (c) 2005 Richard Purdie 4 */ 5 6#include <linux/suspend.h> 7 8struct pxa_cpu_pm_fns { 9 int save_count; 10 void (*save)(unsigned long *); 11 void (*restore)(unsigned long *); 12 int (*valid)(suspend_state_t state); 13 void (*enter)(suspend_state_t state); 14 int (*prepare)(void); 15 void (*finish)(void); 16}; 17 18extern struct pxa_cpu_pm_fns *pxa_cpu_pm_fns; 19 20/* sleep.S */ 21extern int pxa25x_finish_suspend(unsigned long); 22extern int pxa27x_finish_suspend(unsigned long); 23 24extern int pxa_pm_enter(suspend_state_t state); 25extern int pxa_pm_prepare(void); 26extern void pxa_pm_finish(void); 27 28extern const char pm_enter_standby_start[], pm_enter_standby_end[]; 29extern int pxa3xx_finish_suspend(unsigned long); 30 31/* NOTE: this is for PM debugging on Lubbock, it's really a big 32 * ugly, but let's keep the crap minimum here, instead of direct 33 * accessing the LUBBOCK CPLD registers in arch/arm/mach-pxa/pm.c 34 */ 35#ifdef CONFIG_ARCH_LUBBOCK 36extern void lubbock_set_hexled(uint32_t value); 37#else 38#define lubbock_set_hexled(x) 39#endif