Add servo_serial property in servo module.
Also propagate servo serial number to flashrom programmer.
BUG=none
TEST=manually tested on my DUT
Change-Id: I1106221913ffd7adeb8d1f4118699ecc18bcf4ef
Reviewed-on: https://chromium-review.googlesource.com/196419
Reviewed-by: Vic Yang <victoryang@chromium.org>
Commit-Queue: Ricky Liang <jcliang@chromium.org>
Tested-by: Ricky Liang <jcliang@chromium.org>
diff --git a/server/cros/servo/firmware_programmer.py b/server/cros/servo/firmware_programmer.py
index 682f071..314e115 100644
--- a/server/cros/servo/firmware_programmer.py
+++ b/server/cros/servo/firmware_programmer.py
@@ -103,11 +103,14 @@
try:
vpd_sections = [('RW_VPD', self._rw_vpd), ('RO_VPD', self._ro_vpd)]
gbb_section = [('GBB', self._gbb)]
+ ft2232_programmer = 'ft2232_spi:type=servo-v2'
+ if self._servo.servo_serial:
+ ft2232_programmer += ',serial=%s' % self._servo.servo_serial
# Save needed sections from current firmware
for section in vpd_sections + gbb_section:
self._servo.system(' '.join([
- 'flashrom', '-V', '-p', 'ft2232_spi:type=servo-v2',
+ 'flashrom', '-V', '-p', ft2232_programmer,
'-r', self._fw_main, '-i', '%s:%s' % section]))
# Pack the saved VPD into new firmware
@@ -134,7 +137,7 @@
# Flash the new firmware
self._servo.system(' '.join([
- 'flashrom', '-V', '-p', 'ft2232_spi:type=servo-v2',
+ 'flashrom', '-V', '-p', ft2232_programmer,
'-w', self._fw_main]))
finally:
self._restore_servo_state()