|  | /* | 
|  | * ARM big.LITTLE platform's CPUFreq header file | 
|  | * | 
|  | * Copyright (C) 2013 ARM Ltd. | 
|  | * Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com> | 
|  | * | 
|  | * Copyright (C) 2013 Linaro. | 
|  | * Viresh Kumar <viresh.kumar@linaro.org> | 
|  | * | 
|  | * This program is free software; you can redistribute it and/or modify | 
|  | * it under the terms of the GNU General Public License version 2 as | 
|  | * published by the Free Software Foundation. | 
|  | * | 
|  | * This program is distributed "as is" WITHOUT ANY WARRANTY of any | 
|  | * kind, whether express or implied; without even the implied warranty | 
|  | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
|  | * GNU General Public License for more details. | 
|  | */ | 
|  | #ifndef CPUFREQ_ARM_BIG_LITTLE_H | 
|  | #define CPUFREQ_ARM_BIG_LITTLE_H | 
|  |  | 
|  | #include <linux/cpufreq.h> | 
|  | #include <linux/device.h> | 
|  | #include <linux/types.h> | 
|  |  | 
|  | struct cpufreq_arm_bL_ops { | 
|  | char name[CPUFREQ_NAME_LEN]; | 
|  |  | 
|  | /* | 
|  | * This must set opp table for cpu_dev in a similar way as done by | 
|  | * of_init_opp_table(). | 
|  | */ | 
|  | int (*init_opp_table)(struct device *cpu_dev); | 
|  |  | 
|  | /* Optional */ | 
|  | int (*get_transition_latency)(struct device *cpu_dev); | 
|  | void (*free_opp_table)(struct device *cpu_dev); | 
|  | }; | 
|  |  | 
|  | int bL_cpufreq_register(struct cpufreq_arm_bL_ops *ops); | 
|  | void bL_cpufreq_unregister(struct cpufreq_arm_bL_ops *ops); | 
|  |  | 
|  | #endif /* CPUFREQ_ARM_BIG_LITTLE_H */ |