summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDevin Lu <devin.lu@quantatw.com>2019-11-25 13:47:48 +0800
committerCommit Bot <commit-bot@chromium.org>2020-01-22 20:03:56 +0000
commit0195a23ec69c08bc1ed5adea270776b33b1731bf (patch)
treeca29b6422b89b5e0711d66c84c04f43e3a57fe30
parenteba8651a8536c7dabc52f9a2cae4eccb440aa808 (diff)
downloadchrome-ec-0195a23ec69c08bc1ed5adea270776b33b1731bf.tar.gz
jinlon: enable OTI502 IR temperature sensor
BUG=b:141259174 BRANCH=hatch TEST=ec console "temps" to check OTI502 IR temperature sensor can be read. Change-Id: I03254e850809d6968b59ca9d0fbcc45443f097af Signed-off-by: Devin Lu <Devin.Lu@quantatw.com> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1933789 Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
-rw-r--r--baseboard/hatch/baseboard.c3
-rw-r--r--board/jinlon/board.c6
-rw-r--r--board/jinlon/board.h2
-rw-r--r--board/jinlon/gpio.inc3
4 files changed, 14 insertions, 0 deletions
diff --git a/baseboard/hatch/baseboard.c b/baseboard/hatch/baseboard.c
index 209dbb9bf7..7b0456ab8d 100644
--- a/baseboard/hatch/baseboard.c
+++ b/baseboard/hatch/baseboard.c
@@ -77,6 +77,9 @@ const struct i2c_port_t i2c_ports[] = {
#ifdef BOARD_AKEMI
{"thermal", I2C_PORT_THERMAL, 400, GPIO_I2C4_SCL, GPIO_I2C4_SDA},
#endif
+#ifdef BOARD_JINLON
+ {"thermal", I2C_PORT_THERMAL, 100, GPIO_I2C4_SCL, GPIO_I2C4_SDA},
+#endif
{"power", I2C_PORT_POWER, 100, GPIO_I2C5_SCL, GPIO_I2C5_SDA},
{"eeprom", I2C_PORT_EEPROM, 100, GPIO_I2C7_SCL, GPIO_I2C7_SDA},
};
diff --git a/board/jinlon/board.c b/board/jinlon/board.c
index 9e9b948fd3..64ea23dddc 100644
--- a/board/jinlon/board.c
+++ b/board/jinlon/board.c
@@ -17,6 +17,7 @@
#include "driver/ppc/sn5s330.h"
#include "driver/tcpm/ps8xxx.h"
#include "driver/tcpm/tcpci.h"
+#include "driver/temp_sensor/oti502.h"
#include "ec_commands.h"
#include "extpower.h"
#include "fan.h"
@@ -337,6 +338,11 @@ const struct temp_sensor_t temp_sensors[] = {
.read = get_temp_3v3_30k9_47k_4050b,
.idx = ADC_TEMP_SENSOR_3,
.action_delay_sec = 1},
+ [TEMP_SENSOR_4] = {.name = "IR Sensor",
+ .type = TEMP_SENSOR_TYPE_BOARD,
+ .read = oti502_get_val,
+ .idx = OTI502_IDX_OBJECT,
+ .action_delay_sec = 1},
};
BUILD_ASSERT(ARRAY_SIZE(temp_sensors) == TEMP_SENSOR_COUNT);
diff --git a/board/jinlon/board.h b/board/jinlon/board.h
index 79f367c132..b39bb4c8e6 100644
--- a/board/jinlon/board.h
+++ b/board/jinlon/board.h
@@ -87,6 +87,7 @@
#define CONFIG_FANS 2
#undef CONFIG_FAN_INIT_SPEED
#define CONFIG_FAN_INIT_SPEED 50
+#define CONFIG_TEMP_SENSOR_OTI502
#define CONFIG_TEMP_SENSOR_POWER_GPIO GPIO_EN_A_RAILS
#define CONFIG_THERMISTOR
#define CONFIG_THROTTLE_AP
@@ -160,6 +161,7 @@ enum temp_sensor_id {
TEMP_SENSOR_1,
TEMP_SENSOR_2,
TEMP_SENSOR_3,
+ TEMP_SENSOR_4,
TEMP_SENSOR_COUNT
};
diff --git a/board/jinlon/gpio.inc b/board/jinlon/gpio.inc
index 7170f3dc01..f57a331436 100644
--- a/board/jinlon/gpio.inc
+++ b/board/jinlon/gpio.inc
@@ -104,6 +104,8 @@ GPIO(I2C2_SCL, PIN(9, 2), GPIO_INPUT) /* EC_I2C_USB_C1
GPIO(I2C2_SDA, PIN(9, 1), GPIO_INPUT) /* EC_I2C_USB_C1_PD_SDA */
GPIO(I2C3_SCL, PIN(D, 1), GPIO_INPUT) /* EC_I2C_USB_C0_TCPC_SDA */
GPIO(I2C3_SDA, PIN(D, 0), GPIO_INPUT) /* EC_I2C_USB_C0_TCPC_SCL */
+GPIO(I2C4_SCL, PIN(F, 3), GPIO_INPUT) /* EC_I2C_THERMAL_SENSOR_SCL */
+GPIO(I2C4_SDA, PIN(F, 2), GPIO_INPUT) /* EC_I2C_THERMAL_SENSOR_SDA */
GPIO(I2C5_SCL, PIN(3, 3), GPIO_INPUT) /* EC_I2C_POWER_SCL */
GPIO(I2C5_SDA, PIN(3, 6), GPIO_INPUT) /* EC_I2C_POWER_SDA */
GPIO(I2C7_SCL, PIN(B, 3), GPIO_INPUT) /* EC_I2C_EEPROM_SCL */
@@ -124,6 +126,7 @@ ALTERNATE(PIN_MASK(B, 0x30), 0, MODULE_I2C, (GPIO_INPUT | GPIO_SEL_1P8V)) /* I2
ALTERNATE(PIN_MASK(9, 0x07), 0, MODULE_I2C, 0) /* I2C1 SCL / I2C2 */
ALTERNATE(PIN_MASK(8, 0x80), 0, MODULE_I2C, 0) /* I2C1 SDA */
ALTERNATE(PIN_MASK(D, 0x03), 0, MODULE_I2C, 0) /* I2C3 */
+ALTERNATE(PIN_MASK(F, 0x0C), 0, MODULE_I2C, 0) /* I2C4 */
ALTERNATE(PIN_MASK(3, 0x48), 0, MODULE_I2C, 0) /* I2C5 */
ALTERNATE(PIN_MASK(B, 0x0C), 0, MODULE_I2C, 0) /* I2C7 */