|  | CPU cooling APIs How To | 
|  | =================================== | 
|  |  | 
|  | Written by Amit Daniel Kachhap <amit.kachhap@linaro.org> | 
|  |  | 
|  | Updated: 12 May 2012 | 
|  |  | 
|  | Copyright (c)  2012 Samsung Electronics Co., Ltd(http://www.samsung.com) | 
|  |  | 
|  | 0. Introduction | 
|  |  | 
|  | The generic cpu cooling(freq clipping) provides registration/unregistration APIs | 
|  | to the caller. The binding of the cooling devices to the trip point is left for | 
|  | the user. The registration APIs returns the cooling device pointer. | 
|  |  | 
|  | 1. cpu cooling APIs | 
|  |  | 
|  | 1.1 cpufreq registration/unregistration APIs | 
|  | 1.1.1 struct thermal_cooling_device *cpufreq_cooling_register( | 
|  | struct cpumask *clip_cpus) | 
|  |  | 
|  | This interface function registers the cpufreq cooling device with the name | 
|  | "thermal-cpufreq-%x". This api can support multiple instances of cpufreq | 
|  | cooling devices. | 
|  |  | 
|  | clip_cpus: cpumask of cpus where the frequency constraints will happen. | 
|  |  | 
|  | 1.1.2 void cpufreq_cooling_unregister(struct thermal_cooling_device *cdev) | 
|  |  | 
|  | This interface function unregisters the "thermal-cpufreq-%x" cooling device. | 
|  |  | 
|  | cdev: Cooling device pointer which has to be unregistered. |