Files
OpenCellular/include/temp_sensor.h
Vic Yang 23d9defb2b Disable thermal thresholds for TMP006 sensor near CPU
This sensor doesn't provide accurate case temperature. Let's
disable thermal thresholds for the object tempearture reading from this
sensor.

BUG=chrome-os-partner:9599
TEST=Build success. System works fine.

Change-Id: I9408de59a3349f944c5e215085da93f23965ebc9
Reviewed-on: https://gerrit.chromium.org/gerrit/25824
Reviewed-by: Vincent Palatin <vpalatin@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Commit-Ready: Vic Yang <victoryang@chromium.org>
Tested-by: Vic Yang <victoryang@chromium.org>
2012-06-22 11:12:43 -07:00

58 lines
1.5 KiB
C

/* Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
/* Temperature sensor module for Chrome EC */
#ifndef __CROS_EC_TEMP_SENSOR_H
#define __CROS_EC_TEMP_SENSOR_H
#include "common.h"
#include "board.h"
#define TEMP_SENSOR_POWER_NONE 0x0
#define TEMP_SENSOR_POWER_VS 0x1
#define TEMP_SENSOR_POWER_CPU 0x2
/* "enum temp_sensor_id" must be defined for each board in board.h. */
enum temp_sensor_id;
/* Type of temperature sensors. */
enum temp_sensor_type {
/* Ignore this temperature sensor. */
TEMP_SENSOR_TYPE_IGNORED = -1,
/* CPU temperature sensors. */
TEMP_SENSOR_TYPE_CPU = 0,
/* Other on-board temperature sensors. */
TEMP_SENSOR_TYPE_BOARD,
/* Case temperature sensors. */
TEMP_SENSOR_TYPE_CASE,
TEMP_SENSOR_TYPE_COUNT
};
struct temp_sensor_t {
const char* name;
/* Flags indicating power needed by temp sensor. */
int8_t power_flags;
/* Temperature sensor type. */
enum temp_sensor_type type;
/* Read sensor value and return temperature in K. */
int (*read)(int idx);
/* Index among the same kind of sensors. */
int idx;
/* Delay between reading temperature and taking action about it,
* in seconds. */
int action_delay_sec;
};
/* Return the most recently measured temperature for the sensor in K,
* or -1 if error. */
int temp_sensor_read(enum temp_sensor_id id);
/* Return non-zero if sensor is powered. */
int temp_sensor_powered(enum temp_sensor_id id);
#endif /* __CROS_EC_TEMP_SENSOR_H */