From b5985cbfba303e69f126cc4c6b137ec2f1459965 Mon Sep 17 00:00:00 2001
From: Anton Kolesov <anton.kolesov@synopsys.com>
Date: Sun, 27 Oct 2013 19:45:39 +0400
Subject: [PATCH] Change standard_reboot return value

Procedure standard_reboot should return 1 instead of an empty string to
comply with ${board}_reboot defined in config/base-config.exp and common
practice.

Add a comment to remote_reboot explaining its return value.
---
 ChangeLog      |  6 ++++++
 doc/ref.xml    | 11 +++++++++--
 lib/remote.exp | 11 +++++++++--
 3 files changed, 24 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index a8ab512..66a57b5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-10-27  Anton Kolesov  <anton.kolesov@synopsys.com>
+
+	* lib/remote.exp (standard_reboot): Return 1 instead of an empty string.
+	(remote_reboot): Add comment explaining return value of this procedure.
+	* doc/ref.xml (remote_reboot, standard_reboot): Document prodcedures.
+
 2013-10-05  Jose E. Marchesi  <jose.marchesi@oracle.com>
 
 	* baseboards/unix.exp: Add gdb settings to not use hardware
diff --git a/doc/ref.xml b/doc/ref.xml
index 18ae3bc..3b0fb3b 100644
--- a/doc/ref.xml
+++ b/doc/ref.xml
@@ -1725,7 +1725,10 @@
 	<sect4 id="remotereboot" xreflabel="remote_reboot procedure">
 	  <title>Remote_reboot Procedure</title>
 
-	  <para></para>
+	  <para>Return value of this function depends on actual implementation
+	      of reboot that will be used, in practice it is expected that
+	      <function>remote_reboot</function> returns <emphasis>1</emphasis>
+	      on success and <emphasis>0</emphasis> on failure.</para>
 
 	<funcsynopsis role="tcl">
           <funcprototype>
@@ -2013,7 +2016,11 @@
 	<sect4 id="standardreboot" xreflabel="standard_reboot procedure">
 	  <title>Standard_reboot Procedure</title>
 
-	  <para></para>
+	  <para>It looks like that this procedure is never called, instead
+	      <function>${board}_reboot</function> defined in
+	      <filename>base-config.exp</filename> will be used because it has
+	      higher priority and <filename>base-config.exp</filename> is
+	      always imported by <command>runtest<command>.</para>
 
 	<funcsynopsis role="tcl">
           <funcprototype>
diff --git a/lib/remote.exp b/lib/remote.exp
index 5cfe43a..ed176ad 100644
--- a/lib/remote.exp
+++ b/lib/remote.exp
@@ -344,7 +344,10 @@ proc remote_raw_binary { host } {
 }
 
 
-
+# Return value of this function depends on actual implementation of reboot that
+# will be used, in practice it is expected that remote_reboot returns 1 on
+# success and 0 on failure.
+#
 proc remote_reboot { host } {
     clone_output "\nRebooting ${host}\n"
     # FIXME: don't close the host connection, or all the remote
@@ -360,8 +363,12 @@ proc remote_reboot { host } {
     return $status
 }
 
+# It looks like that this proc is never called, instead ${board}_reboot defined
+# in base-config.exp will be used because it has higher priority and
+# base-config.exp is always imported by runtest.
+#
 proc standard_reboot { host } {
-    return ""
+    return 1
 }
 #
 # Download file FILE to DEST. If the optional DESTFILE is specified,
-- 
1.8.4.1

