summaryrefslogtreecommitdiff
path: root/baseboard/zork/variant_dalboz.c
diff options
context:
space:
mode:
authorZick Wei <zick.wei@quanta.corp-partner.google.com>2020-07-29 15:31:11 +0800
committerCommit Bot <commit-bot@chromium.org>2020-08-03 22:16:15 +0000
commitce93a01527aa9214b6b023f4543209dd7612b80a (patch)
tree3d8a45c19b236ca3a25e76b0c919d15ca17c6dda /baseboard/zork/variant_dalboz.c
parentbc064edfa739ab1b56ef0873467329f0d0456a94 (diff)
downloadchrome-ec-ce93a01527aa9214b6b023f4543209dd7612b80a.tar.gz
zork: move board_get_temp to variant
This patch rename thermal sensor name by placement for morphius, and move board_get_temp from baseboard to variant BUG=b:162325433 BRANCH=none TEST=verify that thermal sensor name change in EC console Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I46dfe5c8ebef29ed6ee7fdf342cfad9d39fe6ca3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2325496 Reviewed-by: Edward Hill <ecgh@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org>
Diffstat (limited to 'baseboard/zork/variant_dalboz.c')
-rw-r--r--baseboard/zork/variant_dalboz.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/baseboard/zork/variant_dalboz.c b/baseboard/zork/variant_dalboz.c
index a9ce52daf1..6e76034ced 100644
--- a/baseboard/zork/variant_dalboz.c
+++ b/baseboard/zork/variant_dalboz.c
@@ -6,6 +6,7 @@
#include "adc.h"
#include "adc_chip.h"
#include "charger.h"
+#include "chipset.h"
#include "common.h"
#include "driver/charger/isl9241.h"
#include "driver/temp_sensor/sb_tsi.h"
@@ -14,6 +15,7 @@
#include "i2c.h"
#include "power.h"
#include "temp_sensor.h"
+#include "thermistor.h"
const struct power_signal_info power_signal_list[] = {
[X86_SLP_S3_N] = {
@@ -39,6 +41,37 @@ const struct power_signal_info power_signal_list[] = {
};
BUILD_ASSERT(ARRAY_SIZE(power_signal_list) == POWER_SIGNAL_COUNT);
+int board_get_temp(int idx, int *temp_k)
+{
+ int mv;
+ int temp_c;
+ enum adc_channel channel;
+
+ /* idx is the sensor index set in board temp_sensors[] */
+ switch (idx) {
+ case TEMP_SENSOR_CHARGER:
+ channel = ADC_TEMP_SENSOR_CHARGER;
+ break;
+ case TEMP_SENSOR_SOC:
+ /* thermistor is not powered in G3 */
+ if (chipset_in_state(CHIPSET_STATE_HARD_OFF))
+ return EC_ERROR_NOT_POWERED;
+
+ channel = ADC_TEMP_SENSOR_SOC;
+ break;
+ default:
+ return EC_ERROR_INVAL;
+ }
+
+ mv = adc_read_channel(channel);
+ if (mv < 0)
+ return EC_ERROR_INVAL;
+
+ temp_c = thermistor_linear_interpolate(mv, &thermistor_info);
+ *temp_k = C_TO_K(temp_c);
+ return EC_SUCCESS;
+}
+
const struct adc_t adc_channels[] = {
[ADC_TEMP_SENSOR_CHARGER] = {
.name = "CHARGER",