Vadim Bendebury 3b1c3ba36f usb_updater: retransmit upgrade blocks if target does not reply
When the target is running upgrade protocol version 2, it is capable
of processing multiple transfer attempts of the same block.

This patch allows timeouts when expecting the target acknowledges. If
the acknowledge does not arrive in time, the host reports the timeout
on the console and retransmits the same block to the target.

BRANCH=none
BUG=chrome-os-partner:52856
TEST=it is now possible to successfully upgrade cr50 on Kevin in one go:
      $  ./extra/usb_updater/usb_updater build/cr50/ec.bin
      read 0x80000 bytes from build/cr50/ec.bin
      open_device 18d1:5014
      found interface 4 endpoint 5, chunk_len 64
      READY
      -------
      erase
      Target running protocol version 2
      Updating at offset 0x00004000
      sending 0x29620/0x3c000 bytes
      Timeout!
      Timeout!
      Timeout!
      Timeout!
      -------
      update complete
      reboot
      bye

Change-Id: Ib1c3179cb3a02c0ae6e5e949476553ae28b6a295
Signed-off-by: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/341583
Reviewed-by: Mary Ruthven <mruthven@chromium.org>
2016-05-02 17:35:46 -07:00
2016-05-01 20:06:01 -07:00
2016-04-27 18:12:25 -07:00
2015-05-07 00:00:47 +00:00
2016-04-29 16:07:13 -07:00
2012-05-11 09:11:52 -07:00
2014-04-02 19:58:53 +00:00
2015-12-08 20:05:05 -08:00

For an overview of the Embedded Controller firmware, refer to

http://www.chromium.org/chromium-os/2014-firmware-summit

For instructions on building from source, refer to

http://www.chromium.org/chromium-os/ec-development/getting-started-building-ec-images-quickly
Description
No description provided
Readme 1.4 GiB
Languages
C 64.7%
Lasso 20.7%
ASL 3.6%
JavaScript 3.2%
C# 2.9%
Other 4.6%