mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 15:14:43 +00:00
dfu:tests: Modify dfu_gadget_test.sh to accept USB device vendor:product ID
dfu-util allows filtering on USB device vendor:product ID by using the -d flag (-d 0451:d022). Such option is very handy when many DFU devices are connected to a single host PC. This commit allows testing when above situation emerges. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Lukasz Majewski <l.majewski@majess.pl> Test HW - AM335x Beagle Bone Black NOTE: Max size of file to transfer: 2MiB
This commit is contained in:
parent
58f99df448
commit
33a6103578
2 changed files with 19 additions and 8 deletions
|
@ -26,12 +26,19 @@ Example usage:
|
|||
setenv dfu_alt_info dfu_test.bin fat 0 6\;dfudummy.bin fat 0 6
|
||||
dfu 0 mmc 0
|
||||
2. On the host:
|
||||
test/dfu/dfu_gadget_test.sh X Y [test file name]
|
||||
test/dfu/dfu_gadget_test.sh X Y [test file name] [usb device vendor:product]
|
||||
e.g. test/dfu/dfu_gadget_test.sh 0 1
|
||||
or
|
||||
e.g. test/dfu/dfu_gadget_test.sh 0 1 ./dat_960.img
|
||||
or
|
||||
e.g. test/dfu/dfu_gadget_test.sh 0 1 0451:d022
|
||||
or
|
||||
e.g. test/dfu/dfu_gadget_test.sh 0 1 ./dat_960.img 0451:d022
|
||||
|
||||
... where X and Y are dfu_test.bin's and dfudummy.bin's alt setting numbers.
|
||||
They can be obtained from dfu-util -l or $dfu_alt_info.
|
||||
It is also possible to pass optional [test file name] to force the script to
|
||||
test one particular file.
|
||||
If many DFU devices are connected, it may be useful to filter on USB
|
||||
vendor/product ID (0451:d022).
|
||||
One can get them by running "lsusb" command on a host PC.
|
||||
|
|
|
@ -45,18 +45,18 @@ dfu_test_file () {
|
|||
printf "$COLOUR_GREEN ========================================================================================= $COLOUR_DEFAULT\n"
|
||||
printf "File:$COLOUR_GREEN %s $COLOUR_DEFAULT\n" $1
|
||||
|
||||
dfu-util -D $1 -a $TARGET_ALT_SETTING >> $LOG_FILE 2>&1 || die $?
|
||||
dfu-util $USB_DEV -D $1 -a $TARGET_ALT_SETTING >> $LOG_FILE 2>&1 || die $?
|
||||
|
||||
echo -n "TX: "
|
||||
calculate_md5sum $1
|
||||
|
||||
MD5_TX=$MD5SUM
|
||||
|
||||
dfu-util -D ${DIR}/dfudummy.bin -a $TARGET_ALT_SETTING_B >> $LOG_FILE 2>&1 || die $?
|
||||
dfu-util $USB_DEV -D ${DIR}/dfudummy.bin -a $TARGET_ALT_SETTING_B >> $LOG_FILE 2>&1 || die $?
|
||||
|
||||
N_FILE=$DIR$RCV_DIR${1:2}"_rcv"
|
||||
|
||||
dfu-util -U $N_FILE -a $TARGET_ALT_SETTING >> $LOG_FILE 2>&1 || die $?
|
||||
dfu-util $USB_DEV -U $N_FILE -a $TARGET_ALT_SETTING >> $LOG_FILE 2>&1 || die $?
|
||||
|
||||
echo -n "RX: "
|
||||
calculate_md5sum $N_FILE
|
||||
|
@ -89,13 +89,17 @@ fi
|
|||
TARGET_ALT_SETTING=$1
|
||||
TARGET_ALT_SETTING_B=$2
|
||||
|
||||
if [ -n "$3" ]
|
||||
file=$3
|
||||
[[ $3 == *':'* ]] && USB_DEV="-d $3" && file=""
|
||||
[ $# -eq 4 ] && USB_DEV="-d $4"
|
||||
|
||||
if [ -n "$file" ]
|
||||
then
|
||||
dfu_test_file $3
|
||||
dfu_test_file $file
|
||||
else
|
||||
for file in $DIR*.$SUFFIX
|
||||
for f in $DIR*.$SUFFIX
|
||||
do
|
||||
dfu_test_file $file
|
||||
dfu_test_file $f
|
||||
done
|
||||
fi
|
||||
|
||||
|
|
Loading…
Reference in a new issue