diff options
author | Vadim Bendebury <vbendeb@google.com> | 2018-02-19 13:12:40 -0800 |
---|---|---|
committer | ChromeOS Commit Bot <chromeos-commit-bot@chromium.org> | 2018-03-14 01:19:43 +0000 |
commit | 434f73992164dffff02bddb783dce9b19b3941dd (patch) | |
tree | f32d98d8b53d726f58f47bfdd6b097d8ef725f02 | |
parent | f58c3776bc5bb66b907d2eb2a6b8aea06e4beedb (diff) | |
download | chrome-ec-434f73992164dffff02bddb783dce9b19b3941dd.tar.gz |
gsctool: fix Board ID retrieval function
The function used to read or write Board ID value, when invoked for
reading, reports the value on the console, but does not save the read
value in the passed in structure.
Let's always save it in the structure so that the caller of this
function has access to the retrieved value.
BRANCH=none
BUG=chromium:812880
TEST=verified that 'gsctool -i' still operates as expected.
Change-Id: I9bc713386758ca6701e6b853e042652e2f392871
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/925692
Reviewed-by: Randall Spangler <rspangler@chromium.org>
(cherry picked from commit cd76cde2173e7e18d54865d97beece25fa2cb14e)
Reviewed-on: https://chromium-review.googlesource.com/961609
-rw-r--r-- | extra/usb_updater/gsctool.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/extra/usb_updater/gsctool.c b/extra/usb_updater/gsctool.c index 4e00c5c494..41ee9b0779 100644 --- a/extra/usb_updater/gsctool.c +++ b/extra/usb_updater/gsctool.c @@ -1609,19 +1609,17 @@ static void process_bid(struct transfer_descriptor *td, size_t response_size; if (bid_action == bid_get) { - struct board_id bid; - response_size = sizeof(bid); + response_size = sizeof(*bid); send_vendor_command(td, VENDOR_CC_GET_BOARD_ID, - &bid, sizeof(bid), - &bid, &response_size); + bid, sizeof(*bid), + bid, &response_size); - if (response_size == sizeof(bid)) { + if (response_size == sizeof(*bid)) { printf("Board ID space: %08x:%08x:%08x\n", - be32toh(bid.type), be32toh(bid.type_inv), - be32toh(bid.flags)); + be32toh(bid->type), be32toh(bid->type_inv), + be32toh(bid->flags)); return; - } fprintf(stderr, "Error reading board ID: response size %zd," " first byte %#02x\n", response_size, |