aboutsummaryrefslogtreecommitdiff
path: root/drivers/cpufreq/vexpress_bL_cpufreq.c
diff options
context:
space:
mode:
authorJon Medhurst <tixy@linaro.org>2012-07-25 15:08:04 +0100
committerJon Medhurst <tixy@linaro.org>2013-04-29 09:43:51 +0100
commit6192413a24d15cf475f34da8bab9f476a461de9b (patch)
treeefca0c80fd70792db7c18137b7a2ce58d210cbc2 /drivers/cpufreq/vexpress_bL_cpufreq.c
parentea8df6bcc2219a4854d38e33bfb085f532b9c88d (diff)
cpufreq: vexpress: Check for presence of SPC driver
The cpufreq driver requires SPC hardware, so check for its presence before initialising the driver. This enables the cpufreq driver to safely exist in kernels run on hardware without SPC support. Signed-off-by: Jon Medhurst <tixy@linaro.org>
Diffstat (limited to 'drivers/cpufreq/vexpress_bL_cpufreq.c')
-rw-r--r--drivers/cpufreq/vexpress_bL_cpufreq.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/cpufreq/vexpress_bL_cpufreq.c b/drivers/cpufreq/vexpress_bL_cpufreq.c
index 1fffaef366a..2c71b2480d7 100644
--- a/drivers/cpufreq/vexpress_bL_cpufreq.c
+++ b/drivers/cpufreq/vexpress_bL_cpufreq.c
@@ -264,6 +264,11 @@ static struct cpufreq_driver vexpress_cpufreq_driver = {
static int __init vexpress_cpufreq_modinit(void)
{
+ if (!vexpress_spc_check_loaded()) {
+ pr_info("vexpress cpufreq not initialised because no SPC found\n");
+ return -ENODEV;
+ }
+
return cpufreq_register_driver(&vexpress_cpufreq_driver);
}