#define pr_fmt(fmt) …
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/cpufreq.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/err.h>
#include <linux/clk.h>
#include <linux/io.h>
#include <linux/pm_opp.h>
#include <linux/cpu.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regulator/consumer.h>
#define OPP_TOLERANCE …
static struct cpufreq_frequency_table *freq_table;
static atomic_t freq_table_users = …;
static struct device *mpu_dev;
static struct regulator *mpu_reg;
static int omap_target(struct cpufreq_policy *policy, unsigned int index)
{ … }
static inline void freq_table_free(void)
{ … }
static int omap_cpu_init(struct cpufreq_policy *policy)
{ … }
static void omap_cpu_exit(struct cpufreq_policy *policy)
{ … }
static struct cpufreq_driver omap_driver = …;
static int omap_cpufreq_probe(struct platform_device *pdev)
{ … }
static void omap_cpufreq_remove(struct platform_device *pdev)
{ … }
static struct platform_driver omap_cpufreq_platdrv = …;
module_platform_driver(…) …;
MODULE_DESCRIPTION(…) …;
MODULE_LICENSE(…) …;