ARM: cpuidle: silence error on driver registration failure
authorSudeep Holla <Sudeep.Holla@arm.com>
Mon, 18 Jun 2018 14:34:22 +0000 (15:34 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 25 Jun 2018 07:33:34 +0000 (09:33 +0200)
It's perfectly fine to have multiple cpuidle driver compiled in the
build configuration. However, it's not good to throw error on driver
registration failure if some other driver is already initialised and
assigned. In such cases, __cpuidle_register_driver returns -EBUSY and
we can check for such error before throwing the error.

Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/cpuidle/cpuidle-arm.c

index e07bc7ace774c9cb9a57d1bcbeafe2009a2214d3..073557f433eb1be630a7f64b8cfc9930771eff2a 100644 (file)
@@ -105,7 +105,8 @@ static int __init arm_idle_init_cpu(int cpu)
 
        ret = cpuidle_register_driver(drv);
        if (ret) {
-               pr_err("Failed to register cpuidle driver\n");
+               if (ret != -EBUSY)
+                       pr_err("Failed to register cpuidle driver\n");
                goto out_kfree_drv;
        }