summaryrefslogtreecommitdiff
path: root/driver/usb_mux/ps8743.c
diff options
context:
space:
mode:
Diffstat (limited to 'driver/usb_mux/ps8743.c')
-rw-r--r--driver/usb_mux/ps8743.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/driver/usb_mux/ps8743.c b/driver/usb_mux/ps8743.c
index 264b79fecc..68bb0428d3 100644
--- a/driver/usb_mux/ps8743.c
+++ b/driver/usb_mux/ps8743.c
@@ -23,6 +23,28 @@ int ps8743_write(const struct usb_mux *me, uint8_t reg, uint8_t val)
reg, val);
}
+int ps8743_check_chip_id(const struct usb_mux *me, int *val)
+{
+ int id1;
+ int id2;
+ int res;
+
+ /*
+ * Verify chip ID registers.
+ */
+ res = ps8743_read(me, PS8743_REG_CHIP_ID1, &id1);
+ if (res)
+ return res;
+
+ res = ps8743_read(me, PS8743_REG_CHIP_ID2, &id2);
+ if (res)
+ return res;
+
+ *val = (id2 << 8) + id1;
+
+ return EC_SUCCESS;
+}
+
static int ps8743_init(const struct usb_mux *me)
{
int id1;