aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/cpuidle
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/cpuidle')
-rw-r--r--drivers/cpuidle/cpuidle.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c
index 588b44aa1de4..8ffef26ffdcf 100644
--- a/drivers/cpuidle/cpuidle.c
+++ b/drivers/cpuidle/cpuidle.c
@@ -285,6 +285,9 @@ int cpuidle_enable_device(struct cpuidle_device *dev)
285 int ret, i; 285 int ret, i;
286 struct cpuidle_driver *drv = cpuidle_get_driver(); 286 struct cpuidle_driver *drv = cpuidle_get_driver();
287 287
288 if (!dev)
289 return -EINVAL;
290
288 if (dev->enabled) 291 if (dev->enabled)
289 return 0; 292 return 0;
290 if (!drv || !cpuidle_curr_governor) 293 if (!drv || !cpuidle_curr_governor)
@@ -369,8 +372,6 @@ static int __cpuidle_register_device(struct cpuidle_device *dev)
369 struct device *cpu_dev = get_cpu_device((unsigned long)dev->cpu); 372 struct device *cpu_dev = get_cpu_device((unsigned long)dev->cpu);
370 struct cpuidle_driver *cpuidle_driver = cpuidle_get_driver(); 373 struct cpuidle_driver *cpuidle_driver = cpuidle_get_driver();
371 374
372 if (!dev)
373 return -EINVAL;
374 if (!try_module_get(cpuidle_driver->owner)) 375 if (!try_module_get(cpuidle_driver->owner))
375 return -EINVAL; 376 return -EINVAL;
376 377
@@ -395,6 +396,9 @@ int cpuidle_register_device(struct cpuidle_device *dev)
395{ 396{
396 int ret; 397 int ret;
397 398
399 if (!dev)
400 return -EINVAL;
401
398 mutex_lock(&cpuidle_lock); 402 mutex_lock(&cpuidle_lock);
399 403
400 if ((ret = __cpuidle_register_device(dev))) { 404 if ((ret = __cpuidle_register_device(dev))) {