|
@@ -222,7 +222,10 @@ int __init omap4_idle_init(void)
|
|
|
if (!cpu_clkdm[0] || !cpu_clkdm[1])
|
|
|
return -ENODEV;
|
|
|
|
|
|
- cpuidle_register_driver(&omap4_idle_driver);
|
|
|
+ if (cpuidle_register_driver(&omap4_idle_driver)) {
|
|
|
+ pr_err("%s: CPUidle driver register failed\n", __func__);
|
|
|
+ return -EIO;
|
|
|
+ }
|
|
|
|
|
|
for_each_cpu(cpu_id, cpu_online_mask) {
|
|
|
dev = &per_cpu(omap4_idle_dev, cpu_id);
|
|
@@ -232,6 +235,7 @@ int __init omap4_idle_init(void)
|
|
|
#endif
|
|
|
if (cpuidle_register_device(dev)) {
|
|
|
pr_err("%s: CPUidle register failed\n", __func__);
|
|
|
+ cpuidle_unregister_driver(&omap4_idle_driver);
|
|
|
return -EIO;
|
|
|
}
|
|
|
}
|