Changes since RFC: *Changed the cpu cooling registration/unregistration API's to instance based *Changed the STATE_ACTIVE trip type to pass correct instance id *Adding support to restore back the policy->max_freq after doing frequency clipping. *Moved the trip cooling stats from sysfs node to debugfs node as suggested by Greg KH greg@kroah.com *Incorporated several review comments from eduardo.valentin@ti.com

Todo: *Report time spent in each trip point along with the cooling statistics *Add opp library support in cpufreq cooling api's

2) This patchset adds a new trip type THERMAL_TRIP_STATE_ACTIVE which passescooling device instance number and may be helpful for cpufreq cooling devicesto take the correct cooling action.

3) This patchset adds generic cpu cooling low level implementation throughfrequency clipping and cpu hotplug. In future, other cpu related coolingdevices may be added here. An ACPI version of this already exists(drivers/acpi/processor_thermal.c). But this will be useful for platformslike ARM using the generic thermal interface along with the generic cpucooling devices. The cooling device registration API's return cooling devicepointers which can be easily binded with the thermal zone trip points.

4)This patchset provides a simple way of reporting cooling achieved in atrip type. This will help in fine cooling the cooling devices attached.