3 # Copyright (C) 2014 Samsung Electronics
4 # Lukasz Majewski <l.majewski@samsung.com>
6 # UMS operation test script
8 # SPDX-License-Identifier: GPL-2.0+
13 COLOUR_GREEN="\33[32m"
14 COLOUR_ORANGE="\33[33m"
15 COLOUR_DEFAULT="\33[0m"
20 LOG_FILE=./log/log-`date +%d-%m-%Y_%H-%M-%S`
23 ../dfu/dfu_gadget_test_init.sh 33M 97M
26 rm -rf $RCV_DIR $MNT_DIR
30 # run if user hits control-c
32 echo -en "\n*** CTRL+C ***\n"
38 # trap keyboard interrupt (control-c)
42 printf " $COLOUR_RED FAILED $COLOUR_DEFAULT \n"
49 MD5SUM=`echo $MD5SUM | cut -d ' ' -f1`
54 printf "$COLOUR_GREEN========================================================================================= $COLOUR_DEFAULT\n"
55 printf "File:$COLOUR_GREEN %s $COLOUR_DEFAULT\n" $1
57 mount /dev/$MEM_DEV $MNT_DIR
58 if [ -f $MNT_DIR/dat_* ]; then
65 umount $MNT_DIR > /dev/null 2>&1
69 printf "$COLOUR_ORANGE\tSleeping to wait for umount...$COLOUR_DEFAULT\n"
78 N_FILE=$DIR$RCV_DIR${1:2}"_rcv"
80 mount /dev/$MEM_DEV $MNT_DIR
81 cp $MNT_DIR/$1 $N_FILE || die $?
86 calculate_md5sum $N_FILE
89 if [ "$MD5_TX" == "$MD5_RX" ]; then
90 printf " $COLOUR_GREEN -------> OK $COLOUR_DEFAULT \n"
92 printf " $COLOUR_RED -------> FAILED $COLOUR_DEFAULT \n"
98 printf "$COLOUR_GREEN========================================================================================= $COLOUR_DEFAULT\n"
99 echo "U-boot UMS test program"
101 if [ $EUID -ne 0 ]; then
102 echo "You must be root to do this." 1>&2
106 if [ $# -lt 3 ]; then
107 echo "Wrong number of arguments"
109 echo "sudo ./ums_gadget_test.sh VID PID PART_NUM [-f ext4] [test_file]"
113 MNT_DIR="/mnt/tmp-ums-test"
119 if [ "$1" == "-f" ]; then
121 FS_TO_FORMAT=$1; shift
126 for f in `find /sys -type f -name idProduct`; do
128 if [ `cat ${d}/idVendor` != "${VID}" ]; then
131 if [ `cat ${d}/idProduct` != "${PID}" ]; then
138 if [ -z "${USB_DEV}" ]; then
139 echo "Connect target"
140 echo "e.g. ums 0 mmc 0"
144 MEM_DEV=`find $USB_DEV -type d -name "sd[a-z]" | awk -F/ '{print $(NF)}' -`
147 if [ ! -d $MNT_DIR ]; then
151 if [ "$PART_NUM" == "-" ]; then
154 MEM_DEV=$MEM_DEV$PART_NUM
156 if [ -n "$FS_TO_FORMAT" ]; then
157 echo -n "Formatting partition /dev/$MEM_DEV to $FS_TO_FORMAT"
158 mkfs -t $FS_TO_FORMAT /dev/$MEM_DEV > /dev/null 2>&1
159 if [ $? -eq 0 ]; then
160 printf " $COLOUR_GREEN DONE $COLOUR_DEFAULT \n"
166 printf "Mount: /dev/$MEM_DEV \n"
168 if [ -n "$TEST_FILE" ]; then
169 if [ ! -e $TEST_FILE ]; then
170 echo "No file: $TEST_FILE"
173 ums_test_file $TEST_FILE
175 for file in $DIR*.$SUFFIX