mirror of
https://github.com/ARM-software/devlib.git
synced 2025-09-09 13:31:53 +01:00
modules/flash: Add a connect
parameter to the flash method
Adds a `connect` parameter to the flash method to specifiy whether devlib should attempt to connect to the target after flashing has completed.
This commit is contained in:
@@ -91,7 +91,7 @@ class FlashModule(Module):
|
||||
|
||||
kind = 'flash'
|
||||
|
||||
def __call__(self, image_bundle=None, images=None, boot_config=None):
|
||||
def __call__(self, image_bundle=None, images=None, boot_config=None, connect=True):
|
||||
raise NotImplementedError()
|
||||
|
||||
|
||||
|
@@ -54,7 +54,7 @@ class FastbootFlashModule(FlashModule):
|
||||
def probe(target):
|
||||
return target.os == 'android'
|
||||
|
||||
def __call__(self, image_bundle=None, images=None, bootargs=None):
|
||||
def __call__(self, image_bundle=None, images=None, bootargs=None, connect=True):
|
||||
if bootargs:
|
||||
raise ValueError('{} does not support boot configuration'.format(self.name))
|
||||
self.prelude_done = False
|
||||
@@ -67,7 +67,8 @@ class FastbootFlashModule(FlashModule):
|
||||
self.logger.debug('flashing {}'.format(partition))
|
||||
self._flash_image(self.target, partition, expand_path(image_path))
|
||||
fastboot_command('reboot')
|
||||
self.target.connect(timeout=180)
|
||||
if connect:
|
||||
self.target.connect(timeout=180)
|
||||
|
||||
def _validate_image_bundle(self, image_bundle):
|
||||
if not tarfile.is_tarfile(image_bundle):
|
||||
|
@@ -325,7 +325,7 @@ class VersatileExpressFlashModule(FlashModule):
|
||||
self.timeout = timeout
|
||||
self.short_delay = short_delay
|
||||
|
||||
def __call__(self, image_bundle=None, images=None, bootargs=None):
|
||||
def __call__(self, image_bundle=None, images=None, bootargs=None, connect=True):
|
||||
self.target.hard_reset()
|
||||
with open_serial_connection(port=self.target.platform.serial_port,
|
||||
baudrate=self.target.platform.baudrate,
|
||||
@@ -346,7 +346,8 @@ class VersatileExpressFlashModule(FlashModule):
|
||||
msg = 'Could not deploy images to {}; got: {}'
|
||||
raise TargetStableError(msg.format(self.vemsd_mount, e))
|
||||
self.target.boot()
|
||||
self.target.connect(timeout=30)
|
||||
if connect:
|
||||
self.target.connect(timeout=30)
|
||||
|
||||
def _deploy_image_bundle(self, bundle):
|
||||
self.logger.debug('Validating {}'.format(bundle))
|
||||
|
Reference in New Issue
Block a user