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 42 int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain); 43 int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id); 44 int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id); 45 int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id); 46 int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id); 47 #else 48 static inline 49 int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain) 50 { 51 return 0; 52 } 53 54 static inline 55 int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id) 56 { 57 return 0; 58 } 59 60 static inline 61 int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id) 62 { 63 return 0; 64 } 65 66 static inline 67 int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id) 68 { 69 return 0; 70 } 71 72 static inline 73 int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id) 74 { 75 return 0; 76 } 77 #endif 78 #endif 79