diff --git a/common/usb_pd_tcpc.c b/common/usb_pd_tcpc.c index 5ca80bb147..e38d9e24db 100644 --- a/common/usb_pd_tcpc.c +++ b/common/usb_pd_tcpc.c @@ -1252,9 +1252,6 @@ static int tcpc_i2c_read(int port, int reg, uint8_t *payload) case TCPC_REG_POWER_STATUS_MASK: payload[0] = pd[port].power_status_mask; return 1; - case TCPC_REG_TX_BYTE_CNT: - payload[0] = PD_HEADER_CNT(pd[port].tx_head); - return 1; case TCPC_REG_TX_HDR: payload[0] = pd[port].tx_head & 0xff; payload[1] = (pd[port].tx_head >> 8) & 0xff; diff --git a/driver/tcpm/tcpci.c b/driver/tcpm/tcpci.c index acc61e70c4..2d268a961a 100644 --- a/driver/tcpm/tcpci.c +++ b/driver/tcpm/tcpci.c @@ -173,7 +173,8 @@ int tcpm_transmit(int port, enum tcpm_transmit_type type, uint16_t header, int reg = TCPC_REG_TX_DATA; int rv, cnt = 4*PD_HEADER_CNT(header); - rv = tcpc_write(port, TCPC_REG_TX_BYTE_CNT, cnt); + /* TX_BYTE_CNT includes 2 bytes for message header */ + rv = tcpc_write(port, TCPC_REG_TX_BYTE_CNT, cnt + 2); rv |= tcpc_write16(port, TCPC_REG_TX_HDR, header);