1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * OMAP thermal definitions
4 *
5 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/
6 * Contact:
7 * Eduardo Valentin <eduardo.valentin@ti.com>
8 */
9#ifndef __TI_THERMAL_H
10#define __TI_THERMAL_H
11
12#include "ti-bandgap.h"
13
14/* PCB sensor calculation constants */
15#define OMAP_GRADIENT_SLOPE_W_PCB_4430 0
16#define OMAP_GRADIENT_CONST_W_PCB_4430 20000
17#define OMAP_GRADIENT_SLOPE_W_PCB_4460 1142
18#define OMAP_GRADIENT_CONST_W_PCB_4460 -393
19#define OMAP_GRADIENT_SLOPE_W_PCB_4470 1063
20#define OMAP_GRADIENT_CONST_W_PCB_4470 -477
21
22#define OMAP_GRADIENT_SLOPE_W_PCB_5430_CPU 100
23#define OMAP_GRADIENT_CONST_W_PCB_5430_CPU 484
24#define OMAP_GRADIENT_SLOPE_W_PCB_5430_GPU 464
25#define OMAP_GRADIENT_CONST_W_PCB_5430_GPU -5102
26
27#define DRA752_GRADIENT_SLOPE_W_PCB 0
28#define DRA752_GRADIENT_CONST_W_PCB 2000
29
30/* trip points of interest in milicelsius (at hotspot level) */
31#define OMAP_TRIP_COLD 100000
32#define OMAP_TRIP_HOT 110000
33#define OMAP_TRIP_SHUTDOWN 125000
34#define OMAP_TRIP_NUMBER 2
35#define OMAP_TRIP_STEP \
36 ((OMAP_TRIP_SHUTDOWN - OMAP_TRIP_HOT) / (OMAP_TRIP_NUMBER - 1))
37
38/* Update rates */
39#define FAST_TEMP_MONITORING_RATE 250
40
41#ifdef CONFIG_TI_THERMAL
42int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain);
43int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id);
44int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id);
45int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id);
46int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id);
47#else
48static inline
49int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain)
50{
51 return 0;
52}
53
54static inline
55int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id)
56{
57 return 0;
58}
59
60static inline
61int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id)
62{
63 return 0;
64}
65
66static inline
67int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id)
68{
69 return 0;
70}
71
72static inline
73int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id)
74{
75 return 0;
76}
77#endif
78#endif
79

source code of linux/drivers/thermal/ti-soc-thermal/ti-thermal.h