driver.c

来自「linux 内核源代码」· C语言 代码 · 共 57 行

C
57
字号
/* * driver.c - driver support * * (C) 2006-2007 Venkatesh Pallipadi <venkatesh.pallipadi@intel.com> *               Shaohua Li <shaohua.li@intel.com> *               Adam Belay <abelay@novell.com> * * This code is licenced under the GPL. */#include <linux/mutex.h>#include <linux/module.h>#include <linux/cpuidle.h>#include "cpuidle.h"struct cpuidle_driver *cpuidle_curr_driver;DEFINE_SPINLOCK(cpuidle_driver_lock);/** * cpuidle_register_driver - registers a driver * @drv: the driver */int cpuidle_register_driver(struct cpuidle_driver *drv){	if (!drv)		return -EINVAL;	spin_lock(&cpuidle_driver_lock);	if (cpuidle_curr_driver) {		spin_unlock(&cpuidle_driver_lock);		return -EBUSY;	}	cpuidle_curr_driver = drv;	spin_unlock(&cpuidle_driver_lock);	return 0;}EXPORT_SYMBOL_GPL(cpuidle_register_driver);/** * cpuidle_unregister_driver - unregisters a driver * @drv: the driver */void cpuidle_unregister_driver(struct cpuidle_driver *drv){	if (!drv)		return;	spin_lock(&cpuidle_driver_lock);	cpuidle_curr_driver = NULL;	spin_unlock(&cpuidle_driver_lock);}EXPORT_SYMBOL_GPL(cpuidle_unregister_driver);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?