syscore_ops.h (633B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * syscore_ops.h - System core operations. 4 * 5 * Copyright (C) 2011 Rafael J. Wysocki <rjw@sisk.pl>, Novell Inc. 6 */ 7 8#ifndef _LINUX_SYSCORE_OPS_H 9#define _LINUX_SYSCORE_OPS_H 10 11#include <linux/list.h> 12 13struct syscore_ops { 14 struct list_head node; 15 int (*suspend)(void); 16 void (*resume)(void); 17 void (*shutdown)(void); 18}; 19 20extern void register_syscore_ops(struct syscore_ops *ops); 21extern void unregister_syscore_ops(struct syscore_ops *ops); 22#ifdef CONFIG_PM_SLEEP 23extern int syscore_suspend(void); 24extern void syscore_resume(void); 25#endif 26extern void syscore_shutdown(void); 27 28#endif