Skip to content

Commit 7a38783

Browse files
authored
Merge pull request #252 from ARMmbed/forced_timeout_for_grm
handle force_reset_timeout in grm plugin
2 parents 5f4843d + d47b897 commit 7a38783

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

src/mbed_os_tools/test/host_tests_conn_proxy/conn_primitive_remote.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# See the License for the specific language governing permissions and
1414
# limitations under the License.
1515

16+
import time
1617
from .. import DEFAULT_BAUD_RATE
1718
from .conn_primitive import ConnectorPrimitive
1819

@@ -30,6 +31,7 @@ def __init__(self, name, config, importer=__import__):
3031
self.platform_name = config.get('platform_name', None)
3132
self.baudrate = config.get('baudrate', DEFAULT_BAUD_RATE)
3233
self.image_path = config.get('image_path', None)
34+
self.forced_reset_timeout = config.get('forced_reset_timeout', 0)
3335
self.allocate_requirements = {
3436
"platform_name": self.platform_name,
3537
"power_on": True,
@@ -83,7 +85,7 @@ def __remote_init(self, importer):
8385
try:
8486
self.__remote_flashing(self.image_path, forceflash=True)
8587
self.__remote_connect(baudrate=self.baudrate)
86-
self.__remote_reset()
88+
self.__remote_reset(delay=self.forced_reset_timeout)
8789
except Exception as error:
8890
self.logger.prn_err(str(error))
8991
self.__remote_release()
@@ -111,7 +113,7 @@ def __remote_disconnect(self):
111113
except Exception as error:
112114
self.logger.prn_err("RemoteConnectorPrimitive.disconnect() failed, reason: " + str(error))
113115

114-
def __remote_reset(self):
116+
def __remote_reset(self, delay=0):
115117
"""! Use GRM remote API to reset DUT """
116118
self.logger.prn_inf("remote resources reset...")
117119
if not self.selected_resource:
@@ -123,6 +125,11 @@ def __remote_reset(self):
123125
self.logger.prn_inf("reset() failed")
124126
raise
125127

128+
# Post-reset sleep
129+
if delay:
130+
self.logger.prn_inf("waiting %.2f sec after reset"% delay)
131+
time.sleep(delay)
132+
126133
def __remote_flashing(self, filename, forceflash=False):
127134
"""! Use GRM remote API to flash DUT """
128135
self.logger.prn_inf("remote resources flashing with '%s'..." % filename)
@@ -184,7 +191,7 @@ def finish(self):
184191
self.__remote_release()
185192

186193
def reset(self):
187-
self.__remote_reset()
194+
self.__remote_reset(delay=self.forced_reset_timeout)
188195

189196
def __del__(self):
190197
self.finish()

0 commit comments

Comments
 (0)