1 445936f9SDaniel Lezcano /* SPDX-License-Identifier: GPL-2.0 */ 2 445936f9SDaniel Lezcano #ifndef __THERMAL_THRESHOLDS_H__ 3 445936f9SDaniel Lezcano #define __THERMAL_THRESHOLDS_H__ 4 445936f9SDaniel Lezcano 5 445936f9SDaniel Lezcano struct user_threshold { 6 445936f9SDaniel Lezcano struct list_head list_node; 7 445936f9SDaniel Lezcano int temperature; 8 445936f9SDaniel Lezcano int direction; 9 445936f9SDaniel Lezcano }; 10 445936f9SDaniel Lezcano 11 445936f9SDaniel Lezcano int thermal_thresholds_init(struct thermal_zone_device *tz); 12 445936f9SDaniel Lezcano void thermal_thresholds_exit(struct thermal_zone_device *tz); 13 445936f9SDaniel Lezcano void thermal_thresholds_handle(struct thermal_zone_device *tz, int *low, int *high); 14 *17735728SDaniel Lezcano void thermal_thresholds_flush(struct thermal_zone_device *tz); 15 445936f9SDaniel Lezcano int thermal_thresholds_add(struct thermal_zone_device *tz, int temperature, int direction); 16 445936f9SDaniel Lezcano int thermal_thresholds_delete(struct thermal_zone_device *tz, int temperature, int direction); 17 445936f9SDaniel Lezcano int thermal_thresholds_for_each(struct thermal_zone_device *tz, 18 445936f9SDaniel Lezcano int (*cb)(struct user_threshold *, void *arg), void *arg); 19 445936f9SDaniel Lezcano #endif 20