Linux Audio

Check our new training course

Loading...
Note: File does not exist in v3.1.
  1/* SPDX-License-Identifier: GPL-2.0 */
  2/*
  3 *  Copyright (C) Linaro Ltd 2020
  4 *  Author: Daniel Lezcano <daniel.lezcano@linaro.org>
  5 */
  6
  7struct thermal_genl_cpu_caps {
  8	int cpu;
  9	int performance;
 10	int efficiency;
 11};
 12
 13enum thermal_genl_multicast_groups {
 14	THERMAL_GENL_SAMPLING_GROUP = 0,
 15	THERMAL_GENL_EVENT_GROUP = 1,
 16	THERMAL_GENL_MAX_GROUP = THERMAL_GENL_EVENT_GROUP,
 17};
 18
 19#define THERMAL_NOTIFY_BIND	0
 20#define THERMAL_NOTIFY_UNBIND	1
 21
 22struct thermal_genl_notify {
 23	int mcgrp;
 24};
 25
 26struct thermal_zone_device;
 27struct thermal_trip;
 28struct thermal_cooling_device;
 29
 30/* Netlink notification function */
 31#ifdef CONFIG_THERMAL_NETLINK
 32int __init thermal_netlink_init(void);
 33void __init thermal_netlink_exit(void);
 34int thermal_genl_register_notifier(struct notifier_block *nb);
 35int thermal_genl_unregister_notifier(struct notifier_block *nb);
 36
 37int thermal_notify_tz_create(const struct thermal_zone_device *tz);
 38int thermal_notify_tz_delete(const struct thermal_zone_device *tz);
 39int thermal_notify_tz_enable(const struct thermal_zone_device *tz);
 40int thermal_notify_tz_disable(const struct thermal_zone_device *tz);
 41int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
 42				const struct thermal_trip *trip);
 43int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
 44			      const struct thermal_trip *trip);
 45int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
 46				  const struct thermal_trip *trip);
 47int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
 48				     int state);
 49int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev);
 50int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev);
 51int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
 52				 const char *name);
 53int thermal_genl_sampling_temp(int id, int temp);
 54int thermal_genl_cpu_capability_event(int count,
 55				      struct thermal_genl_cpu_caps *caps);
 56int thermal_notify_threshold_add(const struct thermal_zone_device *tz,
 57				 int temperature, int direction);
 58int thermal_notify_threshold_delete(const struct thermal_zone_device *tz,
 59				    int temperature, int direction);
 60int thermal_notify_threshold_flush(const struct thermal_zone_device *tz);
 61int thermal_notify_threshold_down(const struct thermal_zone_device *tz);
 62int thermal_notify_threshold_up(const struct thermal_zone_device *tz);
 63#else
 64static inline int thermal_netlink_init(void)
 65{
 66	return 0;
 67}
 68
 69static inline int thermal_notify_tz_create(const struct thermal_zone_device *tz)
 70{
 71	return 0;
 72}
 73
 74static inline int thermal_genl_register_notifier(struct notifier_block *nb)
 75{
 76	return 0;
 77}
 78
 79static inline int thermal_genl_unregister_notifier(struct notifier_block *nb)
 80{
 81	return 0;
 82}
 83
 84static inline int thermal_notify_tz_delete(const struct thermal_zone_device *tz)
 85{
 86	return 0;
 87}
 88
 89static inline int thermal_notify_tz_enable(const struct thermal_zone_device *tz)
 90{
 91	return 0;
 92}
 93
 94static inline int thermal_notify_tz_disable(const struct thermal_zone_device *tz)
 95{
 96	return 0;
 97}
 98
 99static inline int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
100					      const struct thermal_trip *trip)
101{
102	return 0;
103}
104
105static inline int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
106					    const struct thermal_trip *trip)
107{
108	return 0;
109}
110
111static inline int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
112						const struct thermal_trip *trip)
113{
114	return 0;
115}
116
117static inline int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
118						   int state)
119{
120	return 0;
121}
122
123static inline int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev)
124{
125	return 0;
126}
127
128static inline int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev)
129{
130	return 0;
131}
132
133static inline int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
134					       const char *name)
135{
136	return 0;
137}
138
139static inline int thermal_genl_sampling_temp(int id, int temp)
140{
141	return 0;
142}
143
144static inline int thermal_genl_cpu_capability_event(int count, struct thermal_genl_cpu_caps *caps)
145{
146	return 0;
147}
148
149static inline int thermal_notify_threshold_add(const struct thermal_zone_device *tz,
150					       int temperature, int direction)
151{
152	return 0;
153}
154
155static inline int thermal_notify_threshold_delete(const struct thermal_zone_device *tz,
156						  int temperature, int direction)
157{
158	return 0;
159}
160
161static inline int thermal_notify_threshold_flush(const struct thermal_zone_device *tz)
162{
163	return 0;
164}
165
166static inline int thermal_notify_threshold_down(const struct thermal_zone_device *tz)
167{
168	return 0;
169}
170
171static inline int thermal_notify_threshold_up(const struct thermal_zone_device *tz)
172{
173	return 0;
174}
175
176static inline void __init thermal_netlink_exit(void) {}
177
178#endif /* CONFIG_THERMAL_NETLINK */