mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-05 18:39:59 +00:00
thermal: trip: Define for_each_trip() macro
Define a new macro for_each_trip() to be used by the thermal core code and thermal governors for walking trips in a given thermal zone. Modify for_each_thermal_trip() to use this macro instead of an open- coded loop over trips. No intentional functional impact. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Acked-by: Daniel Lezcano <daniel.lezcano@linaro.org> Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
This commit is contained in:
parent
78869767f2
commit
234ed6f5fb
2 changed files with 7 additions and 3 deletions
|
@ -116,6 +116,9 @@ void __thermal_zone_device_update(struct thermal_zone_device *tz,
|
|||
enum thermal_notify_event event);
|
||||
|
||||
/* Helpers */
|
||||
#define for_each_trip(__tz, __trip) \
|
||||
for (__trip = __tz->trips; __trip - __tz->trips < __tz->num_trips; __trip++)
|
||||
|
||||
void __thermal_zone_set_trips(struct thermal_zone_device *tz);
|
||||
int __thermal_zone_get_trip(struct thermal_zone_device *tz, int trip_id,
|
||||
struct thermal_trip *trip);
|
||||
|
|
|
@ -13,10 +13,11 @@ int for_each_thermal_trip(struct thermal_zone_device *tz,
|
|||
int (*cb)(struct thermal_trip *, void *),
|
||||
void *data)
|
||||
{
|
||||
int i, ret;
|
||||
struct thermal_trip *trip;
|
||||
int ret;
|
||||
|
||||
for (i = 0; i < tz->num_trips; i++) {
|
||||
ret = cb(&tz->trips[i], data);
|
||||
for_each_trip(tz, trip) {
|
||||
ret = cb(trip, data);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue