From 259c0d8133e523f1f7925442c1bb7352383975dc Mon Sep 17 00:00:00 2001 From: Edward Hill Date: Wed, 19 Aug 2020 17:39:39 -0600 Subject: Zork: Add command to print temps periodically BUG=b:162907613 BRANCH=none TEST=none Signed-off-by: Edward Hill Change-Id: Iddbba7d7955f252cacf666528195bbfc7d9718e6 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2365633 Reviewed-by: Denis Brockus --- baseboard/zork/baseboard.c | 42 ++++++++++++++++++++++++++++++++++++++++++ baseboard/zork/baseboard.h | 2 ++ 2 files changed, 44 insertions(+) (limited to 'baseboard/zork') diff --git a/baseboard/zork/baseboard.c b/baseboard/zork/baseboard.c index 378ff743c5..5bd1faf16e 100644 --- a/baseboard/zork/baseboard.c +++ b/baseboard/zork/baseboard.c @@ -38,6 +38,7 @@ #include "system.h" #include "task.h" #include "tcpci.h" +#include "temp_sensor.h" #include "thermistor.h" #include "usb_mux.h" #include "usb_pd.h" @@ -269,3 +270,44 @@ static void set_ac_prochot(void) isl9241_set_ac_prochot(CHARGER_SOLO, ZORK_AC_PROCHOT_CURRENT_MA); } DECLARE_HOOK(HOOK_INIT, set_ac_prochot, HOOK_PRIO_DEFAULT); + +DECLARE_DEFERRED(board_print_temps); +int temps_interval; + +void board_print_temps(void) +{ + int t, i; + int rv; + + cprintf(CC_THERMAL, "[%pT ", PRINTF_TIMESTAMP_NOW); + for (i = 0; i < TEMP_SENSOR_COUNT; ++i) { + rv = temp_sensor_read(i, &t); + if (rv == EC_SUCCESS) + cprintf(CC_THERMAL, "%s=%dK (%dC) ", + temp_sensors[i].name, t, K_TO_C(t)); + } + cprintf(CC_THERMAL, "]\n"); + + if (temps_interval > 0) + hook_call_deferred(&board_print_temps_data, + temps_interval * SECOND); +} + +static int command_temps_log(int argc, char **argv) +{ + char *e = NULL; + + if (argc != 2) + return EC_ERROR_PARAM_COUNT; + + temps_interval = strtoi(argv[1], &e, 0); + if (*e) + return EC_ERROR_PARAM1; + + board_print_temps(); + + return EC_SUCCESS; +} +DECLARE_CONSOLE_COMMAND(tempslog, command_temps_log, + "seconds", + "Print temp sensors periodically"); diff --git a/baseboard/zork/baseboard.h b/baseboard/zork/baseboard.h index b0a647c7c8..13e33ca007 100644 --- a/baseboard/zork/baseboard.h +++ b/baseboard/zork/baseboard.h @@ -337,6 +337,8 @@ __override_proto void ppc_interrupt(enum gpio_signal signal); void pi3hdx1204_retimer_power(void); __override_proto int check_hdmi_hpd_status(void); +void board_print_temps(void); + #endif /* !__ASSEMBLER__ */ #endif /* __CROS_EC_BASEBOARD_H */ -- cgit v1.2.1