Linux Audio

Check our new training course

Loading...
v6.13.7
  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 */
v6.8
  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
 
 
 
 
 
 
 
 
 
 
 
 
 
 13struct thermal_zone_device;
 14struct thermal_trip;
 15struct thermal_cooling_device;
 16
 17/* Netlink notification function */
 18#ifdef CONFIG_THERMAL_NETLINK
 19int __init thermal_netlink_init(void);
 20void __init thermal_netlink_exit(void);
 
 
 
 21int thermal_notify_tz_create(const struct thermal_zone_device *tz);
 22int thermal_notify_tz_delete(const struct thermal_zone_device *tz);
 23int thermal_notify_tz_enable(const struct thermal_zone_device *tz);
 24int thermal_notify_tz_disable(const struct thermal_zone_device *tz);
 25int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
 26				const struct thermal_trip *trip);
 27int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
 28			      const struct thermal_trip *trip);
 29int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
 30				  const struct thermal_trip *trip);
 31int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
 32				     int state);
 33int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev);
 34int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev);
 35int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
 36				 const char *name);
 37int thermal_genl_sampling_temp(int id, int temp);
 38int thermal_genl_cpu_capability_event(int count,
 39				      struct thermal_genl_cpu_caps *caps);
 
 
 
 
 
 
 
 40#else
 41static inline int thermal_netlink_init(void)
 42{
 43	return 0;
 44}
 45
 46static inline int thermal_notify_tz_create(const struct thermal_zone_device *tz)
 47{
 48	return 0;
 49}
 50
 
 
 
 
 
 
 
 
 
 
 51static inline int thermal_notify_tz_delete(const struct thermal_zone_device *tz)
 52{
 53	return 0;
 54}
 55
 56static inline int thermal_notify_tz_enable(const struct thermal_zone_device *tz)
 57{
 58	return 0;
 59}
 60
 61static inline int thermal_notify_tz_disable(const struct thermal_zone_device *tz)
 62{
 63	return 0;
 64}
 65
 66static inline int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
 67					      const struct thermal_trip *trip)
 68{
 69	return 0;
 70}
 71
 72static inline int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
 73					    const struct thermal_trip *trip)
 74{
 75	return 0;
 76}
 77
 78static inline int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
 79						const struct thermal_trip *trip)
 80{
 81	return 0;
 82}
 83
 84static inline int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
 85						   int state)
 86{
 87	return 0;
 88}
 89
 90static inline int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev)
 91{
 92	return 0;
 93}
 94
 95static inline int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev)
 96{
 97	return 0;
 98}
 99
100static inline int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
101					       const char *name)
102{
103	return 0;
104}
105
106static inline int thermal_genl_sampling_temp(int id, int temp)
107{
108	return 0;
109}
110
111static inline int thermal_genl_cpu_capability_event(int count, struct thermal_genl_cpu_caps *caps)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
112{
113	return 0;
114}
115
116static inline void __init thermal_netlink_exit(void) {}
117
118#endif /* CONFIG_THERMAL_NETLINK */