stupdate: Rebind parent device (I2C adapter) instead of hardcoding i2c_hid.

After a touchscreen controller firmware update, the driver rebind is now
performed on the parent device (I2C adapter), and no longer hardcodes
any driver name.  Previously this hardcoded the i2c_hid_acpi and older
i2c_hid driver names.

BUG=b:177350937
TEST=Tested on 2x Atlas DUT running CrOS R94 top-of-tree with Linux
kernel 4.4 and 5.4.

Updated touchscreen FW symlink on Atlas DUT to change live version
backwards and forwards.  Verified the touchscreen FW updates succeeded,
the driver reload succeeded (from /var/log/messages), expected sysfs
entries are present, and the touchscreen works without any extra reboots
needed.

Interrupted a touchscreen FW update and then rebooted, such that the DUT
booted up without any touchscreen HID device.  Verified that the
touchscreen FW update succeeded, the driver rebind succeeded, expected
sysfs entries became present, and the touchscreen became
functional again, without needing any extra reboots.

Cq-Depend: chromium:3098026,chromium:3115669,chrome-internal:4084028
Change-Id: I0009b02eb1b2e7755e930a2e1f3475581ca55509
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/touch_updater/+/3093379
Commit-Queue: Matthew Blecker <matthewb@chromium.org>
Tested-by: Matthew Blecker <matthewb@chromium.org>
Reviewed-by: Harry Cutts <hcutts@chromium.org>
1 file changed