summaryrefslogtreecommitdiff
path: root/driver
diff options
context:
space:
mode:
authorXin Ji <xji@analogixsemi.com>2018-06-26 11:31:08 +0800
committerchrome-bot <chrome-bot@chromium.org>2018-07-25 19:45:37 -0700
commit5110f15fa238acd2e67844531904108245517cbb (patch)
treef6d363255436a3d98874b551a6f4a54ab06db636 /driver
parent1241107ff7de1e18f80cd83d93a6cb1dc09134a3 (diff)
downloadchrome-ec-5110f15fa238acd2e67844531904108245517cbb.tar.gz
anx7447: configure VCONN OCP(Over Current Protection) threshold.
BUG=b:111813040 BRANCH=none TEST=verified on N25, Apple HDMI dongle attached monitor can display picture. Change-Id: Ib6503083c6ae1003f5451cf90482929c1c757113 Signed-off-by: Xin Ji <xji@analogixsemi.com> Reviewed-on: https://chromium-review.googlesource.com/1114396 Commit-Ready: Jett Rink <jettrink@chromium.org> Tested-by: Jett Rink <jettrink@chromium.org> Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org> Reviewed-by: Jett Rink <jettrink@chromium.org>
Diffstat (limited to 'driver')
-rw-r--r--driver/tcpm/anx7447.c8
-rw-r--r--driver/tcpm/anx7447.h7
2 files changed, 15 insertions, 0 deletions
diff --git a/driver/tcpm/anx7447.c b/driver/tcpm/anx7447.c
index c04c316cf0..f3ed1589b0 100644
--- a/driver/tcpm/anx7447.c
+++ b/driver/tcpm/anx7447.c
@@ -333,6 +333,14 @@ static int anx7447_init(int port)
if (rv)
return rv;
+ /* Set VCONN OCP(Over Current Protection) threshold */
+ rv = tcpc_read(port, ANX7447_REG_ANALOG_CTRL_8, &reg);
+ if (rv)
+ return rv;
+ reg &= ~ANX7447_REG_VCONN_OCP_MASK;
+ reg |= ANX7447_REG_VCONN_OCP_370mA;
+ rv = tcpc_write(port, ANX7447_REG_ANALOG_CTRL_8, reg);
+
/* init hpd status */
anx7447_hpd_mode_en(port);
anx7447_set_hpd_level(port, 0);
diff --git a/driver/tcpm/anx7447.h b/driver/tcpm/anx7447.h
index 89b452317f..75f9fd449c 100644
--- a/driver/tcpm/anx7447.h
+++ b/driver/tcpm/anx7447.h
@@ -31,6 +31,13 @@
#define ANX7447_REG_INTP_CTRL_0 0x9E
+#define ANX7447_REG_ANALOG_CTRL_8 0xA8
+#define ANX7447_REG_VCONN_OCP_MASK 0x0C
+#define ANX7447_REG_VCONN_OCP_240mA 0x00
+#define ANX7447_REG_VCONN_OCP_310mA 0x04
+#define ANX7447_REG_VCONN_OCP_370mA 0x08
+#define ANX7447_REG_VCONN_OCP_440mA 0x0C
+
/*
* This section of defines are only required to support the config option
* CONFIG_USB_PD_TCPM_ANX7447_OCM_ERASE_COMMAND.