cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ti-thermal.h (2515B)


      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/* helper macros */
     42/**
     43 * ti_thermal_get_trip_value - returns trip temperature based on index
     44 * @i:	trip index
     45 */
     46#define ti_thermal_get_trip_value(i)					\
     47	(OMAP_TRIP_HOT + ((i) * OMAP_TRIP_STEP))
     48
     49/**
     50 * ti_thermal_is_valid_trip - check for trip index
     51 * @i:	trip index
     52 */
     53#define ti_thermal_is_valid_trip(trip)				\
     54	((trip) >= 0 && (trip) < OMAP_TRIP_NUMBER)
     55
     56#ifdef CONFIG_TI_THERMAL
     57int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain);
     58int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id);
     59int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id);
     60int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id);
     61int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id);
     62#else
     63static inline
     64int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, char *domain)
     65{
     66	return 0;
     67}
     68
     69static inline
     70int ti_thermal_remove_sensor(struct ti_bandgap *bgp, int id)
     71{
     72	return 0;
     73}
     74
     75static inline
     76int ti_thermal_report_sensor_temperature(struct ti_bandgap *bgp, int id)
     77{
     78	return 0;
     79}
     80
     81static inline
     82int ti_thermal_register_cpu_cooling(struct ti_bandgap *bgp, int id)
     83{
     84	return 0;
     85}
     86
     87static inline
     88int ti_thermal_unregister_cpu_cooling(struct ti_bandgap *bgp, int id)
     89{
     90	return 0;
     91}
     92#endif
     93#endif