Add support for 16-bit invalid Elan product IDs

The Elan touch FW auto-updating script has several exceptions and
caviats for fw corruptions that were possible in early versions of their
products.  These are no longer necessary for modern units, but must be
kept around to support old models.  Recently I've seen reports of
the script failing because when the touch controller gets a corrupted
product ID it's reporting it as a 16-bit number of all 1's (65535)
instead of an 8-bit number like it used to (255).  This is almost
certainly due to driver changes and nothing functional in the FW.

This CL just expands the criteria for a "corrupted product_id" to
include this additional value as well as 255.

BUG=chromium:616394
TEST=build and test on a Kip.  Try corrupting the FW (cut power abruptly
during a touch FW update) and rebooting to make sure it recovers
cleanly.

Change-Id: I198bd98cb05db0eeac30c193581c77b6c560606e
Signed-off-by: Charlie Mooney <charliemooney@google.com>
Reviewed-on: https://chromium-review.googlesource.com/568459
Commit-Ready: Andrew de los Reyes <adlr@chromium.org>
Tested-by: Andrew de los Reyes <adlr@chromium.org>
Reviewed-by: Andrew de los Reyes <adlr@chromium.org>
1 file changed
tree: f81e330374489fd44a8024cf1162e56454167e4b
  1. host_scripts/
  2. policies/
  3. scripts/
  4. LICENSE
  5. OWNERS
  6. README