[u-boot-test-hooks PATCH 4/7] Add wait_raw_device for common code

Simon Glass sjg at chromium.org
Sat Oct 30 20:25:36 CEST 2021


This code is duplicated in two scripts. Put it into a new wait_raw_device
to avoid this. Also rename the 'done' variable to 'complete' to void
confusing it with the end of the for loop.

Signed-off-by: Simon Glass <sjg at chromium.org>
---

 bin/flash.sdwire_digital-loggers_raw | 15 +-----------
 bin/flash.sdwire_poweroff_raw        | 15 +-----------
 bin/wait_raw_device                  | 34 ++++++++++++++++++++++++++++
 3 files changed, 36 insertions(+), 28 deletions(-)
 create mode 100644 bin/wait_raw_device

diff --git a/bin/flash.sdwire_digital-loggers_raw b/bin/flash.sdwire_digital-loggers_raw
index 7d5fbc9..f9956f7 100644
--- a/bin/flash.sdwire_digital-loggers_raw
+++ b/bin/flash.sdwire_digital-loggers_raw
@@ -33,20 +33,7 @@ curl --data ${power_port}=OFF -o /dev/null --silent \
 # Switch over to get USB card access
 sd-mux-ctrl --device-serial ${sdwire_serial} --ts
 
-# Wait for the device to become available
-done=false
-for i in {0..9}; do
-    if dd if=${raw_device} of=/dev/null count=1 >/dev/null 2>&1; then
-        done=true
-        break
-    fi
-
-    sleep 1
-done
-if [[ $done = false ]]; then
-    echo "Failed to access ${raw_device} after 10 tries"
-    exit 1
-fi
+. wait_raw_device
 
 writer.${flash_writer} ${raw_device} ${U_BOOT_BUILD_DIR}
 
diff --git a/bin/flash.sdwire_poweroff_raw b/bin/flash.sdwire_poweroff_raw
index 28fa096..d82a3ef 100644
--- a/bin/flash.sdwire_poweroff_raw
+++ b/bin/flash.sdwire_poweroff_raw
@@ -34,20 +34,7 @@ mount_dir=/media/${mount_point}
 # Switch over to get USB card access
 sd-mux-ctrl --device-serial ${sdwire_serial} --ts
 
-# Wait for the device to become available
-done=false
-for i in {0..9}; do
-    if dd if=${raw_device} of=/dev/null count=1 >/dev/null 2>&1; then
-        done=true
-        break
-    fi
-
-    sleep 1
-done
-if [[ $done = false ]]; then
-    echo "Failed to access ${raw_device} after 10 tries"
-    exit 1
-fi
+. wait_raw_device
 
 writer.${flash_writer} ${raw_device} ${U_BOOT_BUILD_DIR}
 
diff --git a/bin/wait_raw_device b/bin/wait_raw_device
new file mode 100644
index 0000000..c292114
--- /dev/null
+++ b/bin/wait_raw_device
@@ -0,0 +1,34 @@
+# Copyright 2021 Google LLC
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
+
+# Wait for the device ${raw_device} to become available
+complete=false
+for i in {0..9}; do
+    if dd if=${raw_device} of=/dev/null count=1 >/dev/null 2>&1; then
+        complete=true
+        break
+    fi
+
+    sleep 1
+done
+if [[ $complete = false ]]; then
+    echo "Failed to access ${raw_device} after 10 tries"
+    exit 1
+fi
-- 
2.33.1.1089.g2158813163f-goog



More information about the U-Boot mailing list