summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--driver/tcpm/ps8xxx.c5
-rw-r--r--driver/tcpm/ps8xxx.h8
2 files changed, 13 insertions, 0 deletions
diff --git a/driver/tcpm/ps8xxx.c b/driver/tcpm/ps8xxx.c
index 798fe266d6..570b002a1c 100644
--- a/driver/tcpm/ps8xxx.c
+++ b/driver/tcpm/ps8xxx.c
@@ -674,6 +674,9 @@ __maybe_unused static void ps8815_disable_rp_detect_workaround_check(int port)
ps8815_disable_rp_detect[port] = true;
}
+__overridable void board_ps8xxx_tcpc_init(int port)
+{}
+
static int ps8xxx_tcpm_init(int port)
{
int status;
@@ -685,6 +688,8 @@ static int ps8xxx_tcpm_init(int port)
ps8815_disable_rp_detect_workaround_check(port);
}
+ board_ps8xxx_tcpc_init(port);
+
status = tcpci_tcpm_init(port);
if (status != EC_SUCCESS)
return status;
diff --git a/driver/tcpm/ps8xxx.h b/driver/tcpm/ps8xxx.h
index 933ec53ba9..573fffba70 100644
--- a/driver/tcpm/ps8xxx.h
+++ b/driver/tcpm/ps8xxx.h
@@ -117,4 +117,12 @@ int ps8805_gpio_set_level(int port, enum ps8805_gpio signal, int level);
*/
int ps8805_gpio_get_level(int port, enum ps8805_gpio signal, int *level);
+/*
+ * Allow boards to customize for PS8XXX initial if board has
+ * specific settings.
+ *
+ * @param port: The Type-C port number.
+ */
+__override_proto void board_ps8xxx_tcpc_init(int port);
+
#endif /* defined(__CROS_EC_USB_PD_TCPM_PS8XXX_H) */