Commit 234ed6f5 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

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: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Acked-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Reviewed-by: default avatarLukasz Luba <lukasz.luba@arm.com>
parent 78869767
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -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);
+4 −3
Original line number Diff line number Diff line
@@ -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;
	}