From: Lukasz Majewski <l.majewski@samsung.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] test: dfu: script enhancements
Date: Thu, 12 Jun 2014 11:51:26 +0200 [thread overview]
Message-ID: <20140612115126.3df1808b@amdc2363> (raw)
In-Reply-To: <1402439290-32731-1-git-send-email-swarren@wwwdotorg.org>
Hi Stephen,
> From: Stephen Warren <swarren@nvidia.com>
>
> Various misc enhancements to dfu_gadget_test.sh:
>
> * After every write (download), perform a write to a different file
> with different data. This ensures that the DFU buffer's content is
> replaced, so that if the read (upload) succeeds, we know that the
> correct data was actually read from the storage device, rather than
> simply being left over in the DFU buffer. This requires two alt
> setting names to be passed to the script, and a dummy data file to
> be generated by dfu_gadget_test_init.sh.
>
> * Fix the assumption that dfu_gadget_test.sh is run from the directory
> that contains it, by cd'ing to that directory before invoking
> ./dfu_gadget_test_init.sh.
>
> * Use $DIR$RCV_DIR consistently, rather than using plain $RCV_DIR in
> some places.
>
> * Add 959, 961 test file sizes, to be consistent with having one
> more than and one less than all the other "round" sizes 64, 128, and
> 4096.
>
> * Remove references to $BKP_DIR from dfu_gadget_test_init.sh, since it
> isn't used.
>
Thanks for enhancements Stephen - a lot of issues addressed.
However, I'm a bit puzzled, since this patch applies on top of patch
which wasn't accepted (yet) to mainline.
If Simon who had a minor comments agrees, I would opt for adding the
initial commit with this script to ML:
http://patchwork.ozlabs.org/patch/355283/
And on top apply this one.
Afterwards other comments would be addressed as well.
I would like to avoid sending many patches for base code which is still
floating on the ML.
> Signed-off-by: Stephen Warren <swarren@nvidia.com>
> ---
> test/dfu/README | 31 +++++++++++++++++--------------
> test/dfu/dfu_gadget_test.sh | 13 +++++++++----
> test/dfu/dfu_gadget_test_init.sh | 9 +++------
> 3 files changed, 29 insertions(+), 24 deletions(-)
>
> diff --git a/test/dfu/README b/test/dfu/README
> index f8f5a430807b..c817ad1ffeb6 100644
> --- a/test/dfu/README
> +++ b/test/dfu/README
> @@ -1,27 +1,30 @@
> DFU TEST CASE DESCRIPTION:
>
> The prerequisites for running this script are assured by
> -dfu_gadget_test_init.sh script.
> +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
> -Moreover, on a target device the "dfu_alt_info" env variable should
> be extended -to have "dfu_test.bin fat 0 6;" \ entry ([1]). For
> reference please consult the -config file for TRATS/TRATS2 devices
> (./include/configs/trats{2}.h) +On the target device, environment
> variable "dfu_alt_info" must contain at +least:
>
> -One can use fat, ext4 or any other supported file system, which can
> be -created in a convenient way with exporting partitions via UMS
> (ums 0 mmc 0) -and using standard tools on host (like mkfs.ext4).
> + 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:
> - env default -a
> + setenv dfu_alt_info dfu_test.bin fat 0 6\;dfudummy.bin fat 0 6
> dfu 0 mmc 0
> 2. On the host:
> - ./dfu_gadget_test.sh 11
> -
> -where 11 is the mumber of alt setting corresponding to entry [1].
> + test/dfu/dfu_gadget_test.sh dfu_test.bin dfudummy.bin
>
> -The number of the alt setting entry can be obtained with dfu-util -l
> command. -In its output one should look for the
> 'name="dfu_test1.bin"' and corresponding -alt=11.
> +... where dfu_test.bin and dfudummy.bin are the names of the alt
> settings from +$dfu_alt_info.
> diff --git a/test/dfu/dfu_gadget_test.sh b/test/dfu/dfu_gadget_test.sh
> index 8abd8e7de727..a33a71e47cfa 100755
> --- a/test/dfu/dfu_gadget_test.sh
> +++ b/test/dfu/dfu_gadget_test.sh
> @@ -1,4 +1,5 @@
> #! /bin/bash
> +
> set -e # any command return if not equal to zero
> clear
>
> @@ -11,10 +12,11 @@ SUFFIX=img
> RCV_DIR=rcv/
> LOG_FILE=./log/log-`date +%d-%m-%Y_%H-%M-%S`
>
> +cd `dirname $0`
> ./dfu_gadget_test_init.sh
>
> cleanup () {
> - rm -rf $RCV_DIR
> + rm -rf $DIR$RCV_DIR
> }
>
> die () {
> @@ -40,6 +42,8 @@ dfu_test_file () {
>
> MD5_TX=$MD5SUM
>
> + dfu-util -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 $? @@ -62,7 +66,7 @@ printf
> "$COLOR_GREEN============================================================
> echo "DFU EP0 transmission test program" echo "Trouble shoot ->
> disable DBG (even the KERN_DEBUG) in the UDC driver" echo "@ ->
> TRATS2 # dfu 0 mmc 0" -mkdir -p $RCV_DIR
> +mkdir -p $DIR$RCV_DIR
> touch $LOG_FILE
>
> if [ $# -eq 0 ]
> @@ -72,10 +76,11 @@ then
> fi
>
> TARGET_ALT_SETTING=$1
> +TARGET_ALT_SETTING_B=$2
>
> -if [ -n "$2" ]
> +if [ -n "$3" ]
> then
> - dfu_test_file $2
> + dfu_test_file $3
> else
> for file in $DIR*.$SUFFIX
> do
> diff --git a/test/dfu/dfu_gadget_test_init.sh
> b/test/dfu/dfu_gadget_test_init.sh index ea2f715b8834..1f3634f065f5
> 100755 --- a/test/dfu/dfu_gadget_test_init.sh
> +++ b/test/dfu/dfu_gadget_test_init.sh
> @@ -1,4 +1,5 @@
> #! /bin/bash
> +
> set -e # any command return if not equal to zero
> clear
>
> @@ -7,9 +8,8 @@ COLOR_GREEN="\33[32m"
> COLOR_DEFAULT="\33[0m"
>
> LOG_DIR="./log"
> -BKP_DIR="./bkp"
>
> -TEST_FILES_SIZES="127 128 129 8M 4095 4096 4097 63 64 65 960"
> +TEST_FILES_SIZES="63 64 65 127 128 129 4095 4096 4097 959 960 961 8M"
>
> printf "Init script for generating data necessary for DFU test
> script"
> @@ -17,10 +17,6 @@ if [ ! -d $LOG_DIR ]; then
> `mkdir $LOG_DIR`
> fi
>
> -if [ ! -d $BKP_DIR ]; then
> - `mkdir $BKP_DIR`
> -fi
> -
> for size in $TEST_FILES_SIZES
> do
> FILE="./dat_$size.img"
> @@ -28,6 +24,7 @@ do
> dd if=/dev/urandom of="./dat_$size.img" bs=$size count=1
> > /dev/null 2>&1 || exit $? fi
> done
> +dd if=/dev/urandom of="./dfudummy.bin" bs=1024 count=1 > /dev/null
> 2>&1 || exit $?
> printf "$COLOR_GREEN OK $COLOR_DEFAULT \n"
>
--
Best regards,
Lukasz Majewski
Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
next prev parent reply other threads:[~2014-06-12 9:51 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-10 22:28 [U-Boot] [PATCH] test: dfu: script enhancements Stephen Warren
2014-06-12 9:51 ` Lukasz Majewski [this message]
2014-06-12 15:29 ` Stephen Warren
2014-06-20 16:00 ` Lukasz Majewski
2014-06-20 16:05 ` Stephen Warren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140612115126.3df1808b@amdc2363 \
--to=l.majewski@samsung.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.