summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ec/google/chromeec/ec.c18
-rw-r--r--src/ec/google/chromeec/ec.h7
2 files changed, 25 insertions, 0 deletions
diff --git a/src/ec/google/chromeec/ec.c b/src/ec/google/chromeec/ec.c
index e66e3b16c9..40285dc81d 100644
--- a/src/ec/google/chromeec/ec.c
+++ b/src/ec/google/chromeec/ec.c
@@ -1539,3 +1539,21 @@ int google_chromeec_get_keybd_config(struct ec_response_keybd_config *keybd)
return 0;
}
+
+int google_chromeec_ap_reset(void)
+{
+ struct chromeec_command cmd = {
+ .cmd_code = EC_CMD_AP_RESET,
+ .cmd_version = 0,
+ .cmd_data_in = NULL,
+ .cmd_size_in = 0,
+ .cmd_data_out = NULL,
+ .cmd_size_out = 0,
+ .cmd_dev_index = 0,
+ };
+
+ if (google_chromeec_command(&cmd))
+ return -1;
+
+ return 0;
+}
diff --git a/src/ec/google/chromeec/ec.h b/src/ec/google/chromeec/ec.h
index aead5f7fa8..9d4e58842e 100644
--- a/src/ec/google/chromeec/ec.h
+++ b/src/ec/google/chromeec/ec.h
@@ -337,6 +337,13 @@ int google_chromeec_get_pd_port_caps(int port,
*/
int google_chromeec_get_keybd_config(struct ec_response_keybd_config *keybd);
+/**
+ * Send EC command to perform AP reset
+ *
+ * @return 0 on success, -1 on error
+ */
+int google_chromeec_ap_reset(void);
+
#if CONFIG(HAVE_ACPI_TABLES)
/**
* Writes USB Type-C PD related information to the SSDT