summaryrefslogtreecommitdiff
path: root/board/zinger
diff options
context:
space:
mode:
Diffstat (limited to 'board/zinger')
-rw-r--r--board/zinger/board.c2
-rw-r--r--board/zinger/usb_pd_policy.c8
2 files changed, 9 insertions, 1 deletions
diff --git a/board/zinger/board.c b/board/zinger/board.c
index cf703296a7..7130f68572 100644
--- a/board/zinger/board.c
+++ b/board/zinger/board.c
@@ -6,6 +6,7 @@
#include "common.h"
#include "debug.h"
+#include "ec_commands.h"
#include "registers.h"
#include "rsa.h"
#include "sha256.h"
@@ -65,6 +66,7 @@ static int check_rw_valid(void *rw_hash)
good = rsa_verify(&pkey, (void *)rw_sig, rw_hash, rsa_workbuf);
if (!good) {
debug_printf("RSA FAILED\n");
+ pd_log_event(PD_EVENT_ACC_RW_FAIL, 0, 0, NULL);
return 0;
}
diff --git a/board/zinger/usb_pd_policy.c b/board/zinger/usb_pd_policy.c
index a228712290..70258e73a5 100644
--- a/board/zinger/usb_pd_policy.c
+++ b/board/zinger/usb_pd_policy.c
@@ -7,6 +7,7 @@
#include "common.h"
#include "console.h"
#include "debug.h"
+#include "ec_commands.h"
#include "hooks.h"
#include "registers.h"
#include "system.h"
@@ -340,6 +341,7 @@ int pd_board_checks(void)
if (fault == FAULT_FAST_OCP) {
debug_printf("Fast OCP\n");
+ pd_log_event(PD_EVENT_PS_FAULT, 0, PS_FAULT_FAST_OCP, NULL);
fault = FAULT_OCP;
/* reset over-current after 1 second */
fault_deadline.val = get_time().val + OCP_TIMEOUT;
@@ -357,6 +359,7 @@ int pd_board_checks(void)
debug_printf("OCP %d mA\n",
vbus_amp * VDDA_MV / CURR_GAIN * 1000
/ R_SENSE / ADC_SCALE);
+ pd_log_event(PD_EVENT_PS_FAULT, 0, PS_FAULT_OCP, NULL);
fault = FAULT_OCP;
/* reset over-current after 1 second */
fault_deadline.val = get_time().val + OCP_TIMEOUT;
@@ -383,9 +386,11 @@ int pd_board_checks(void)
if ((output_is_enabled() && (vbus_volt > voltages[ovp_idx].ovp)) ||
(fault && (vbus_volt > voltages[ovp_idx].ovp_rec))) {
- if (!fault)
+ if (!fault) {
debug_printf("OVP %d mV\n",
ADC_TO_VOLT_MV(vbus_volt));
+ pd_log_event(PD_EVENT_PS_FAULT, 0, PS_FAULT_OVP, NULL);
+ }
fault = FAULT_OVP;
/* no timeout */
fault_deadline.val = get_time().val;
@@ -404,6 +409,7 @@ int pd_board_checks(void)
adc_enable_watchdog(ADC_CH_A_SENSE, MAX_CURRENT_FAST, 0);
debug_printf("Disch FAIL %d mV\n",
ADC_TO_VOLT_MV(vbus_volt));
+ pd_log_event(PD_EVENT_PS_FAULT, 0, PS_FAULT_DISCH, NULL);
fault = FAULT_DISCHARGE;
/* reset it after 1 second */
fault_deadline.val = get_time().val + OCP_TIMEOUT;