Lines Matching +full:firmware +full:- +full:name
2 # SPDX-License-Identifier: GPL-2.0
3 # This validates the user-initiated fw upload mechanism of the firmware
4 # loader. It verifies that one or more firmware devices can be created
7 set -e
13 errors="hw-error
15 device-busy
16 invalid-file-size
17 read-write-error
18 flash-wearout"
19 error_abort="user-abort"
35 for name in $fwdevs; do
36 if [ -e "$DIR/$name" ]; then
37 echo -n "$name" > "$DIR"/upload_unregister
43 local name="$1"
46 echo 1 > "$DIR"/"$name"/loading
47 cat "$file" > "$DIR"/"$name"/data
48 echo 0 > "$DIR"/"$name"/loading
52 local name="$1"
55 echo -n "$name" > "$DIR"/config_upload_name
57 echo "$0: firmware compare for $name did not match" >&2
61 echo "$0: firmware upload for $name works" >&2
66 local name="$1"
70 echo 1 > "$DIR"/"$name"/loading
71 echo -n "inject":"$status":"$error" > "$DIR"/"$name"/data
72 echo 0 > "$DIR"/"$name"/loading
76 local name="$1"
82 while [ $i -lt 50 ]; do
83 status=$(cat "$DIR"/"$name"/status)
87 sleep 1e-03
96 local name="$1"
98 await_status "$name" "idle"
103 local name="$1"
105 local error=$(cat "$DIR"/"$name"/error)
118 local file=$(mktemp -p /tmp uploadfwXXX.bin)
125 local name="$1"
129 inject_error $name $status $error_abort
130 if ! await_status $name $status; then
134 echo 1 > "$DIR"/"$name"/cancel
136 if ! await_idle $name; then
140 if ! expect_error $name "$status":"$error_abort"; then
145 echo "$0: firmware upload cancellation works"
150 local name=$1
156 inject_error $name $status $error
158 if ! await_idle $name; then
162 if ! expect_error $name "$status":"$error"; then
168 echo "$0: firmware upload error handling works"
172 local name=$1
174 local expected="preparing:invalid-file-size"
176 upload_fw $name $fw_too_big
177 rm -f $fw_too_big
179 if ! await_idle $name; then
183 if ! expect_error $name $expected; then
187 echo "$0: oversized firmware error handling works"
190 echo -n "$fwname1" > "$DIR"/upload_register
191 echo -n "$fwname2" > "$DIR"/upload_register
192 echo -n "$fwname3" > "$DIR"/upload_register
210 echo -n "$fwname1" > "$DIR"/upload_unregister
211 echo -n "$fwname2" > "$DIR"/upload_unregister
212 echo -n "$fwname3" > "$DIR"/upload_unregister