summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
authorEric Yilun Lin <yllin@chromium.org>2022-07-28 10:22:07 +0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-08-22 03:59:21 +0000
commitc93dd8fc042768dac527c660b43445cb353cc130 (patch)
tree05b501d02bdde3ac2c0ff3aa355859b695702ab9 /driver
parent44a98389a9969e394e84f7c4218ed8b6d104390f (diff)
downloadchrome-ec-c93dd8fc042768dac527c660b43445cb353cc130.tar.gz
tcpm: add tcpc_get_bist_test_mode
Add tcpc_get_bist_test_mode which returns the BIST mode control status. BUG=b:229812911 TEST=ensure the BIST status is reported correctly BRANCH=none Change-Id: Idbec04e449c962ee1b3185aa91a324c1a5215960 Signed-off-by: Eric Yilun Lin <yllin@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3787827 Commit-Queue: Eric Yilun Lin <yllin@google.com> Reviewed-by: Abe Levkoy <alevkoy@chromium.org> Tested-by: Eric Yilun Lin <yllin@google.com>
Diffstat (limited to 'driver')
-rw-r--r--driver/tcpm/anx7688.c1
-rw-r--r--driver/tcpm/ccgxxf.c1
-rw-r--r--driver/tcpm/fusb307.c1
-rw-r--r--driver/tcpm/mt6370.c1
-rw-r--r--driver/tcpm/nct38xx.c1
-rw-r--r--driver/tcpm/ps8xxx.c1
-rw-r--r--driver/tcpm/raa489000.c1
-rw-r--r--driver/tcpm/rt1715.c1
-rw-r--r--driver/tcpm/rt1718s.c1
-rw-r--r--driver/tcpm/tcpci.c12
-rw-r--r--driver/tcpm/tusb422.c1
11 files changed, 22 insertions, 0 deletions
diff --git a/driver/tcpm/anx7688.c b/driver/tcpm/anx7688.c
index 4ee87fdaa4..70f5440e93 100644
--- a/driver/tcpm/anx7688.c
+++ b/driver/tcpm/anx7688.c
@@ -214,6 +214,7 @@ const struct tcpm_drv anx7688_tcpm_drv = {
.transmit = &tcpci_tcpm_transmit,
.tcpc_alert = &anx7688_tcpc_alert,
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
};
#ifdef CONFIG_USB_PD_TCPM_MUX
diff --git a/driver/tcpm/ccgxxf.c b/driver/tcpm/ccgxxf.c
index 2c8431f474..085367b35f 100644
--- a/driver/tcpm/ccgxxf.c
+++ b/driver/tcpm/ccgxxf.c
@@ -122,6 +122,7 @@ const struct tcpm_drv ccgxxf_tcpm_drv = {
.enter_low_power_mode = &tcpci_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#ifdef CONFIG_CMD_TCPC_DUMP
.dump_registers = &ccgxxf_dump_registers,
#endif
diff --git a/driver/tcpm/fusb307.c b/driver/tcpm/fusb307.c
index 6a865af69c..cb4e630044 100644
--- a/driver/tcpm/fusb307.c
+++ b/driver/tcpm/fusb307.c
@@ -103,4 +103,5 @@ const struct tcpm_drv fusb307_tcpm_drv = {
.drp_toggle = &tcpci_tcpc_drp_toggle,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
};
diff --git a/driver/tcpm/mt6370.c b/driver/tcpm/mt6370.c
index 15aa05bee2..b98580f950 100644
--- a/driver/tcpm/mt6370.c
+++ b/driver/tcpm/mt6370.c
@@ -216,4 +216,5 @@ const struct tcpm_drv mt6370_tcpm_drv = {
.enter_low_power_mode = &mt6370_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
};
diff --git a/driver/tcpm/nct38xx.c b/driver/tcpm/nct38xx.c
index 810f92c6f8..e01537d518 100644
--- a/driver/tcpm/nct38xx.c
+++ b/driver/tcpm/nct38xx.c
@@ -389,6 +389,7 @@ const struct tcpm_drv nct38xx_tcpm_drv = {
.enter_low_power_mode = &tcpci_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#ifdef CONFIG_USB_PD_FRS
.set_frs_enable = &nct38xx_set_frs_enable,
#endif
diff --git a/driver/tcpm/ps8xxx.c b/driver/tcpm/ps8xxx.c
index 9c51fbc910..a1557c5fc7 100644
--- a/driver/tcpm/ps8xxx.c
+++ b/driver/tcpm/ps8xxx.c
@@ -1037,6 +1037,7 @@ const struct tcpm_drv ps8xxx_tcpm_drv = {
.enter_low_power_mode = ps8xxx_enter_low_power_mode,
#endif
.set_bist_test_mode = tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#if defined(CONFIG_USB_PD_FRS) && (defined(CONFIG_USB_PD_TCPM_PS8815) || \
defined(CONFIG_USB_PD_TCPM_PS8745))
.set_frs_enable = ps8815_tcpc_fast_role_swap_enable,
diff --git a/driver/tcpm/raa489000.c b/driver/tcpm/raa489000.c
index 8bc2db4cb3..8f37b90139 100644
--- a/driver/tcpm/raa489000.c
+++ b/driver/tcpm/raa489000.c
@@ -368,6 +368,7 @@ const struct tcpm_drv raa489000_tcpm_drv = {
.wake_low_power_mode = &tcpci_wake_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
.tcpc_enable_auto_discharge_disconnect =
&tcpci_tcpc_enable_auto_discharge_disconnect,
.debug_detach = &raa489000_debug_detach,
diff --git a/driver/tcpm/rt1715.c b/driver/tcpm/rt1715.c
index f9d6cfa6cb..875c8368a1 100644
--- a/driver/tcpm/rt1715.c
+++ b/driver/tcpm/rt1715.c
@@ -257,4 +257,5 @@ const struct tcpm_drv rt1715_tcpm_drv = {
.enter_low_power_mode = &rt1715_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
};
diff --git a/driver/tcpm/rt1718s.c b/driver/tcpm/rt1718s.c
index ce9ad2ea43..319d1b14af 100644
--- a/driver/tcpm/rt1718s.c
+++ b/driver/tcpm/rt1718s.c
@@ -808,6 +808,7 @@ const struct tcpm_drv rt1718s_tcpm_drv = {
.set_frs_enable = &rt1718s_set_frs_enable,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#ifdef CONFIG_USB_PD_TCPM_SBU
.set_sbu = &rt1718s_set_sbu,
#endif
diff --git a/driver/tcpm/tcpci.c b/driver/tcpm/tcpci.c
index 4775da6db3..98eb7c7e12 100644
--- a/driver/tcpm/tcpci.c
+++ b/driver/tcpm/tcpci.c
@@ -1107,6 +1107,17 @@ enum ec_error_list tcpci_set_bist_test_mode(const int port, const bool enable)
return rv;
}
+enum ec_error_list tcpci_get_bist_test_mode(const int port, bool *enable)
+{
+ int rv;
+ int val;
+
+ rv = tcpc_read(port, TCPC_REG_TCPC_CTRL, &val);
+ *enable = !!(val & TCPC_REG_TCPC_CTRL_BIST_TEST_MODE);
+
+ return rv;
+}
+
static int tcpci_clear_fault(int port, int fault)
{
int rv;
@@ -1860,6 +1871,7 @@ const struct tcpm_drv tcpci_tcpm_drv = {
.enter_low_power_mode = &tcpci_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#ifdef CONFIG_CMD_TCPC_DUMP
.dump_registers = &tcpc_dump_std_registers,
#endif
diff --git a/driver/tcpm/tusb422.c b/driver/tcpm/tusb422.c
index b2ca8ef83f..398ea78fea 100644
--- a/driver/tcpm/tusb422.c
+++ b/driver/tcpm/tusb422.c
@@ -187,6 +187,7 @@ const struct tcpm_drv tusb422_tcpm_drv = {
.enter_low_power_mode = &tcpci_enter_low_power_mode,
#endif
.set_bist_test_mode = &tcpci_set_bist_test_mode,
+ .get_bist_test_mode = &tcpci_get_bist_test_mode,
#ifdef CONFIG_USB_PD_FRS_TCPC
.set_frs_enable = &tusb422_set_frs_enable,
#endif