summaryrefslogtreecommitdiff
path: root/util/comm-dev.c
diff options
context:
space:
mode:
authorBill Richardson <wfrichar@chromium.org>2013-06-19 16:00:03 -0700
committerChromeBot <chrome-bot@google.com>2013-06-20 16:47:06 -0700
commite493e7a01333fb0894cbcbc41cd1ec70906a2081 (patch)
tree30692c39979929f5785f44dbbd58e36df2612105 /util/comm-dev.c
parentb839e6524193b61bad0f5ce935b45f48e26d23c0 (diff)
downloadchrome-ec-e493e7a01333fb0894cbcbc41cd1ec70906a2081.tar.gz
Add EC_CMD_TEST_PROTOCOL to fake certain responses.
This lets us force the EC to return various error codes, so that we can be sure we're seeing them. BUG=chromium:242706 BRANCH=none TEST=none Trigger various errors like so: ectool test 0 14 ectool test 1 14 ectool test 5 14 ectool test 8 14 ectool test 0 33 Change-Id: Ia951cd7afacdcce6c8ec7d35d3bfb5b113dea694 Signed-off-by: Bill Richardson <wfrichar@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/59327 Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'util/comm-dev.c')
-rw-r--r--util/comm-dev.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/util/comm-dev.c b/util/comm-dev.c
index 2802aeca24..4dae913a82 100644
--- a/util/comm-dev.c
+++ b/util/comm-dev.c
@@ -24,6 +24,7 @@ static int ec_command_dev(int command, int version,
void *indata, int insize)
{
struct cros_ec_command s_cmd;
+ int r;
s_cmd.command = command;
s_cmd.version = version;
@@ -33,8 +34,14 @@ static int ec_command_dev(int command, int version,
s_cmd.insize = insize;
s_cmd.indata = indata;
- if (ioctl(fd, CROS_EC_DEV_IOCXCMD, &s_cmd))
- return -1;
+ r = ioctl(fd, CROS_EC_DEV_IOCXCMD, &s_cmd);
+ if (r < 0) {
+ fprintf(stderr, "ioctl %d, errno %d (%s), EC result %d\n",
+ r, errno, strerror(errno), s_cmd.result);
+ return r;
+ }
+ if (s_cmd.result != EC_RES_SUCCESS)
+ fprintf(stderr, "EC result %d\n", s_cmd.result);
return s_cmd.insize;
}