mirror of
https://github.com/szehl/ath9k-hmac.git
synced 2025-03-14 16:27:04 +00:00
75 lines
2.0 KiB
C
Executable File
75 lines
2.0 KiB
C
Executable File
#ifndef __BACKPORT_PM_H
|
|
#define __BACKPORT_PM_H
|
|
#include_next <linux/pm.h>
|
|
|
|
#ifndef PM_EVENT_AUTO
|
|
#define PM_EVENT_AUTO 0x0400
|
|
#endif
|
|
|
|
#ifndef PM_EVENT_SLEEP
|
|
#define PM_EVENT_SLEEP (PM_EVENT_SUSPEND)
|
|
#endif
|
|
|
|
#ifndef PMSG_IS_AUTO
|
|
#define PMSG_IS_AUTO(msg) (((msg).event & PM_EVENT_AUTO) != 0)
|
|
#endif
|
|
|
|
#if LINUX_VERSION_CODE == KERNEL_VERSION(2,6,32)
|
|
#undef SIMPLE_DEV_PM_OPS
|
|
#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
|
|
const struct dev_pm_ops name = { \
|
|
.suspend = suspend_fn, \
|
|
.resume = resume_fn, \
|
|
.freeze = suspend_fn, \
|
|
.thaw = resume_fn, \
|
|
.poweroff = suspend_fn, \
|
|
.restore = resume_fn, \
|
|
}
|
|
#endif /* 2.6.32 */
|
|
|
|
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)
|
|
/*
|
|
* dev_pm_ops is only available on kernels >= 2.6.29, for
|
|
* older kernels we rely on reverting the work to old
|
|
* power management style stuff. On 2.6.29 the pci calls
|
|
* weren't included yet though, so include them here.
|
|
*/
|
|
#if LINUX_VERSION_CODE == KERNEL_VERSION(2,6,29)
|
|
#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
|
|
struct dev_pm_ops name = { \
|
|
.suspend = suspend_fn ## _compat, \
|
|
.resume = resume_fn ## _compat, \
|
|
.freeze = suspend_fn ## _compat, \
|
|
.thaw = resume_fn ## _compat, \
|
|
.poweroff = suspend_fn ## _compat, \
|
|
.restore = resume_fn ## _compat, \
|
|
}
|
|
#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,30)
|
|
#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
|
|
struct dev_pm_ops name = { \
|
|
.suspend = suspend_fn, \
|
|
.resume = resume_fn, \
|
|
.freeze = suspend_fn, \
|
|
.thaw = resume_fn, \
|
|
.poweroff = suspend_fn, \
|
|
.restore = resume_fn, \
|
|
}
|
|
#else
|
|
#define ___BACKPORT_PASTE(a, b) a##b
|
|
#define __BACKPORT_PASTE(a, b) ___BACKPORT_PASTE(a,b)
|
|
#define SIMPLE_DEV_PM_OPS(name, suspend_fn, resume_fn) \
|
|
struct {} __maybe_unused __BACKPORT_PASTE(__backport_avoid_warning_, __LINE__)
|
|
#endif /* >= 2.6.29 */
|
|
#endif /* < 2.6.32 */
|
|
|
|
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,30)
|
|
enum dpm_order {
|
|
DPM_ORDER_NONE,
|
|
DPM_ORDER_DEV_AFTER_PARENT,
|
|
DPM_ORDER_PARENT_BEFORE_DEV,
|
|
DPM_ORDER_DEV_LAST,
|
|
};
|
|
#endif
|
|
|
|
#endif /* __BACKPORT_PM_H */
|