#define pr_fmt(fmt) …
#include <linux/clk.h>
#include <linux/clk-provider.h>
#include <linux/cpufreq.h>
#include <linux/errno.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/mutex.h>
#include <linux/of.h>
#include <linux/slab.h>
#include <linux/smp.h>
#include <linux/platform_device.h>
struct cpu_data { … };
struct soc_data { … };
static u32 get_bus_freq(void)
{ … }
static struct clk *cpu_to_clk(int cpu)
{ … }
static void set_affected_cpus(struct cpufreq_policy *policy)
{ … }
static void freq_table_redup(struct cpufreq_frequency_table *freq_table,
int count)
{ … }
static void freq_table_sort(struct cpufreq_frequency_table *freq_table,
int count)
{ … }
static int qoriq_cpufreq_cpu_init(struct cpufreq_policy *policy)
{ … }
static void qoriq_cpufreq_cpu_exit(struct cpufreq_policy *policy)
{ … }
static int qoriq_cpufreq_target(struct cpufreq_policy *policy,
unsigned int index)
{ … }
static struct cpufreq_driver qoriq_cpufreq_driver = …;
static const struct of_device_id qoriq_cpufreq_blacklist[] = …;
static int qoriq_cpufreq_probe(struct platform_device *pdev)
{ … }
static void qoriq_cpufreq_remove(struct platform_device *pdev)
{ … }
static struct platform_driver qoriq_cpufreq_platform_driver = …;
module_platform_driver(…) …;
MODULE_ALIAS(…) …;
MODULE_LICENSE(…) …;
MODULE_AUTHOR(…) …;
MODULE_DESCRIPTION(…) …;