summaryrefslogtreecommitdiffstats
path: root/drivers/thermal/thermal_netlink.h
blob: 93a927e144d55fc51ec68c14d55bf495def0a6fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
/* SPDX-License-Identifier: GPL-2.0 */
/*
 *  Copyright (C) Linaro Ltd 2020
 *  Author: Daniel Lezcano <daniel.lezcano@linaro.org>
 */

struct thermal_genl_cpu_caps {
	int cpu;
	int performance;
	int efficiency;
};

struct thermal_zone_device;
struct thermal_trip;
struct thermal_cooling_device;

/* Netlink notification function */
#ifdef CONFIG_THERMAL_NETLINK
int __init thermal_netlink_init(void);
void __init thermal_netlink_exit(void);
int thermal_notify_tz_create(const struct thermal_zone_device *tz);
int thermal_notify_tz_delete(const struct thermal_zone_device *tz);
int thermal_notify_tz_enable(const struct thermal_zone_device *tz);
int thermal_notify_tz_disable(const struct thermal_zone_device *tz);
int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
				const struct thermal_trip *trip);
int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
			      const struct thermal_trip *trip);
int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
				  const struct thermal_trip *trip);
int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
				     int state);
int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev);
int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev);
int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
				 const char *name);
int thermal_genl_sampling_temp(int id, int temp);
int thermal_genl_cpu_capability_event(int count,
				      struct thermal_genl_cpu_caps *caps);
#else
static inline int thermal_netlink_init(void)
{
	return 0;
}

static inline int thermal_notify_tz_create(const struct thermal_zone_device *tz)
{
	return 0;
}

static inline int thermal_notify_tz_delete(const struct thermal_zone_device *tz)
{
	return 0;
}

static inline int thermal_notify_tz_enable(const struct thermal_zone_device *tz)
{
	return 0;
}

static inline int thermal_notify_tz_disable(const struct thermal_zone_device *tz)
{
	return 0;
}

static inline int thermal_notify_tz_trip_down(const struct thermal_zone_device *tz,
					      const struct thermal_trip *trip)
{
	return 0;
}

static inline int thermal_notify_tz_trip_up(const struct thermal_zone_device *tz,
					    const struct thermal_trip *trip)
{
	return 0;
}

static inline int thermal_notify_tz_trip_change(const struct thermal_zone_device *tz,
						const struct thermal_trip *trip)
{
	return 0;
}

static inline int thermal_notify_cdev_state_update(const struct thermal_cooling_device *cdev,
						   int state)
{
	return 0;
}

static inline int thermal_notify_cdev_add(const struct thermal_cooling_device *cdev)
{
	return 0;
}

static inline int thermal_notify_cdev_delete(const struct thermal_cooling_device *cdev)
{
	return 0;
}

static inline int thermal_notify_tz_gov_change(const struct thermal_zone_device *tz,
					       const char *name)
{
	return 0;
}

static inline int thermal_genl_sampling_temp(int id, int temp)
{
	return 0;
}

static inline int thermal_genl_cpu_capability_event(int count, struct thermal_genl_cpu_caps *caps)
{
	return 0;
}

static inline void __init thermal_netlink_exit(void) {}

#endif /* CONFIG_THERMAL_NETLINK */