cpufreq: db8500: Register as a platform driver

To fetch the mfd child device we register the cpufreq driver
as a platform driver.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Acked-by: Jonas Aaberg <jonas.aberg@stericsson.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
This commit is contained in:
Ulf Hansson 2012-10-10 13:42:24 +02:00 committed by Mike Turquette
parent c280f45fb8
commit b468944471

View File

@ -8,10 +8,12 @@
* Author: Jonas Aaberg <jonas.aberg@stericsson.com> * Author: Jonas Aaberg <jonas.aberg@stericsson.com>
* *
*/ */
#include <linux/module.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/cpufreq.h> #include <linux/cpufreq.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/platform_device.h>
#include <linux/mfd/dbx500-prcmu.h> #include <linux/mfd/dbx500-prcmu.h>
#include <mach/id.h> #include <mach/id.h>
@ -159,12 +161,28 @@ static struct cpufreq_driver db8500_cpufreq_driver = {
.attr = db8500_cpufreq_attr, .attr = db8500_cpufreq_attr,
}; };
static int db8500_cpufreq_probe(struct platform_device *pdev)
{
return cpufreq_register_driver(&db8500_cpufreq_driver);
}
static struct platform_driver db8500_cpufreq_plat_driver = {
.driver = {
.name = "cpufreq-u8500",
.owner = THIS_MODULE,
},
.probe = db8500_cpufreq_probe,
};
static int __init db8500_cpufreq_register(void) static int __init db8500_cpufreq_register(void)
{ {
if (!cpu_is_u8500_family()) if (!cpu_is_u8500_family())
return -ENODEV; return -ENODEV;
pr_info("cpufreq for DB8500 started\n"); pr_info("cpufreq for DB8500 started\n");
return cpufreq_register_driver(&db8500_cpufreq_driver); return platform_driver_register(&db8500_cpufreq_plat_driver);
} }
device_initcall(db8500_cpufreq_register); device_initcall(db8500_cpufreq_register);
MODULE_LICENSE("GPL v2");
MODULE_DESCRIPTION("cpufreq driver for DB8500");