blob: 7b364934bda644a68e4198a201882928695c5365 [file] [log] [blame]
Ram Chandrasekar64603922013-11-08 16:33:58 -07001#ifndef _MSM_THERMAL_IOCTL_H
2#define _MSM_THERMAL_IOCTL_H
3
4#include <linux/ioctl.h>
5
6#define MSM_THERMAL_IOCTL_NAME "msm_thermal_query"
7
8struct __attribute__((__packed__)) cpu_freq_arg {
9 uint32_t cpu_num;
10 uint32_t freq_req;
11};
12
13struct __attribute__((__packed__)) msm_thermal_ioctl {
14 uint32_t size;
15 union {
16 struct cpu_freq_arg cpu_freq;
17 };
18};
19
20enum {
21 /*Set CPU Frequency*/
22 MSM_SET_CPU_MAX_FREQ = 0x00,
23 MSM_SET_CPU_MIN_FREQ = 0x01,
24
25 MSM_CMD_MAX_NR,
26};
27
28#define MSM_THERMAL_MAGIC_NUM 0xCA /*Unique magic number*/
29
30#define MSM_THERMAL_SET_CPU_MAX_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM,\
31 MSM_SET_CPU_MAX_FREQ, struct msm_thermal_ioctl)
32
33#define MSM_THERMAL_SET_CPU_MIN_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM,\
34 MSM_SET_CPU_MIN_FREQ, struct msm_thermal_ioctl)
35
36#ifdef __KERNEL__
37extern int msm_thermal_ioctl_init(void);
38extern void msm_thermal_ioctl_cleanup(void);
39#endif
40
41#endif