u-boot/test/dfu
Lukasz Majewski 33a6103578 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
2015-09-07 13:41:03 +02:00
..
dfu_gadget_test.sh dfu:tests: Modify dfu_gadget_test.sh to accept USB device vendor:product ID 2015-09-07 13:41:03 +02:00
dfu_gadget_test_init.sh test: dfu: cosmetic: Add missing license information to DFU test scripts 2014-08-20 13:10:33 +02:00
README dfu:tests: Modify dfu_gadget_test.sh to accept USB device vendor:product ID 2015-09-07 13:41:03 +02:00

DFU TEST CASE DESCRIPTION:

The prerequisites for running this script are assured by
dfu_gadget_test_init.sh, which is automatically invoked by dfu_gadget_test.sh.
In this file user is able to generate their own set of test files by altering
the default set of TEST_FILES_SIZES variable.
The dfu_gadget_test_init.sh would generate test images only if they are not
already generated.

On the target device, environment variable "dfu_alt_info" must contain at
least:

    dfu_test.bin fat 0 6;dfudummy.bin fat 0 6

Depending on your device, you may need to replace "fat" with
"ext4", and "6" with the relevant partition number. For reference please
consult the config file for TRATS/TRATS2 devices
(../../include/configs/trats{2}.h)

One can use fat, ext4 or any other supported file system supported by U-Boot.
These can be created by exporting storage devices via UMS (ums 0 mmc 0) and
using standard tools on host (like mkfs.ext4).

Example usage:
1. On the target:
   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] [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.