diff options
author | Jacob Garber <jgarber1@ualberta.ca> | 2019-05-24 16:48:26 -0600 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2019-05-28 21:11:14 -0700 |
commit | 0d73e46eb36455652eafcf7583f4dd8112472b92 (patch) | |
tree | 2831f1b2a1d509edddd6cce4c8bf0ef51c65206a /driver | |
parent | 79cbf4df7fc9dbe80a4b88f93e83dcc323e3ed70 (diff) | |
download | chrome-ec-0d73e46eb36455652eafcf7583f4dd8112472b92.tar.gz |
driver/tcpm: Tidy tcpci_tcpm_transmit
- Remove hardcoded message header size
- Check the return value of tcpc_write_block
- Merge unnecessary assignment
BUG=none
BRANCH=none
TEST=none
Change-Id: Ic4db769f6f9d62ffb4eb10621b15dc414c0bab26
Signed-off-by: Jacob Garber <jgarber1@ualberta.ca>
Found-by: Coverity CID 187542
Reviewed-on: https://chromium-review.googlesource.com/1629275
Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
Reviewed-by: Daisuke Nojiri <dnojiri@chromium.org>
Diffstat (limited to 'driver')
-rw-r--r-- | driver/tcpm/tcpci.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/driver/tcpm/tcpci.c b/driver/tcpm/tcpci.c index 46ab6f9e2a..a3ff61746e 100644 --- a/driver/tcpm/tcpci.c +++ b/driver/tcpm/tcpci.c @@ -512,8 +512,8 @@ int tcpci_tcpm_transmit(int port, enum tcpm_transmit_type type, int reg = TCPC_REG_TX_DATA; int rv, cnt = 4*PD_HEADER_CNT(header); - /* TX_BYTE_CNT includes 2 bytes for message header */ - rv = tcpc_write(port, TCPC_REG_TX_BYTE_CNT, cnt + 2); + /* TX_BYTE_CNT includes extra bytes for message header */ + rv = tcpc_write(port, TCPC_REG_TX_BYTE_CNT, cnt + sizeof(header)); rv |= tcpc_write16(port, TCPC_REG_TX_HDR, header); @@ -522,16 +522,14 @@ int tcpci_tcpm_transmit(int port, enum tcpm_transmit_type type, return rv; if (cnt > 0) { - tcpc_write_block(port, reg, (const uint8_t *)data, cnt); - } + rv = tcpc_write_block(port, reg, (const uint8_t *)data, cnt); - /* If tcpc read fails, return error */ - if (rv) - return rv; - - rv = tcpc_write(port, TCPC_REG_TRANSMIT, TCPC_REG_TRANSMIT_SET(type)); + /* If tcpc read fails, return error */ + if (rv) + return rv; + } - return rv; + return tcpc_write(port, TCPC_REG_TRANSMIT, TCPC_REG_TRANSMIT_SET(type)); } #ifndef CONFIG_USB_PD_TCPC_LOW_POWER |