2012-07-04 19:28:43 +04:00
|
|
|
/*
|
|
|
|
* Copyright 2012, Haiku, Inc. All Rights Reserved.
|
|
|
|
* Distributed under the terms of the MIT License.
|
|
|
|
*/
|
|
|
|
#ifndef _CPUIDLE_MODULE_H
|
|
|
|
#define _CPUIDLE_MODULE_H
|
|
|
|
|
|
|
|
|
|
|
|
#include <module.h>
|
|
|
|
|
2013-12-18 02:26:37 +04:00
|
|
|
#include <scheduler.h>
|
|
|
|
|
2012-07-04 19:28:43 +04:00
|
|
|
|
2013-11-26 02:50:27 +04:00
|
|
|
#define CPUIDLE_MODULES_PREFIX "power/cpuidle"
|
2012-07-04 19:28:43 +04:00
|
|
|
|
|
|
|
|
2013-11-26 02:50:27 +04:00
|
|
|
typedef struct cpuidle_module_info {
|
|
|
|
module_info info;
|
2012-07-04 19:28:43 +04:00
|
|
|
|
2013-11-26 02:50:27 +04:00
|
|
|
float rank;
|
2012-07-04 19:28:43 +04:00
|
|
|
|
2013-12-18 02:26:37 +04:00
|
|
|
void (*cpuidle_set_scheduler_mode)(enum scheduler_mode mode);
|
|
|
|
|
|
|
|
void (*cpuidle_idle)(void);
|
|
|
|
void (*cpuidle_wait)(int32* variable, int32 test);
|
2013-11-26 02:50:27 +04:00
|
|
|
} cpuidle_module_info;
|
2012-07-04 19:28:43 +04:00
|
|
|
|
|
|
|
|
|
|
|
#endif // _CPUIDLE_MODULE_H
|