Hi all,

I have played usbtest and g_zero (f_sourcesink & f_loopback) to do
the tests between two boards these days, and have found some restrictions,
I list them here, and to see if they are common problems and can
be improved or not.

- Test 13 will fail due to there is pending IN request (f_sourcesink
will queue a request unconditionally at its completion), and udc driver
will run out error if that. udc driver must do that if it wants to
pass USB CV2.0 MSC TEST. (othwerwise, "Command Set Test - Device Configured"
will fail)

- The parameter 'vary' must be the same with 'length' when do bulk/iso
READ test, the host's packet size can't be smaller than device's.
And 'vary' must be smaller than 'length' when do ctrl test.

- When using pattern = 1 as module parameters to compare the data, the
packet size must be same between host and device's.

So, I do the test, I need to write customize commands for kinds of tests

Eg: below are two module parameters:
modprobe usbtest pattern=1 alt=1  (host side)
modprobe g_zero pattern=1 buflen=512 isoc_interval=1 isoc_mult=2 (device
side)

The test script is like below:

counter = 0

while [ 1 ]
do

        i=0;
        while [ "$i" -lt 14 ]
                do
                ./testusb -a -t $i
                i=$(( $i + 1 ))
                done

        ./testusb -a -t 14 -v 128 
        ./testusb -a -t 15
        ./testusb -a -t 16 -s 3072
        ./testusb -a -t 17
        ./testusb -a -t 18
        ./testusb -a -t 19
        ./testusb -a -t 20
        ./testusb -a -t 21 -v 128 
        ./testusb -a -t 22
        ./testusb -a -t 23 -s 3072
        ./testusb -a -t 24
        counter=$(( $counter + 1 ))
        echo "loop $counter th ends\n"
done

Thanks.

-- 

Best Regards,
Peter Chen
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to