diff options
Diffstat (limited to 'driver/usb_mux/ps8743.c')
-rw-r--r-- | driver/usb_mux/ps8743.c | 22 |
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; |