Skip to content

Commit 9ae698c

Browse files
committed
Add test script to validate USB HID
The shell script verifies the enumeration of USB Human Interface Devices. Signed-off-by: Aanchal Chaurasia <achauras@qti.qualcomm.com>
1 parent b48d636 commit 9ae698c

1 file changed

Lines changed: 8 additions & 11 deletions

File tree

  • Runner/suites/Kernel/Baseport/usb_hid

Runner/suites/Kernel/Baseport/usb_hid/run.sh

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ fi
2727
if [ -z "$__INIT_ENV_LOADED" ]; then
2828
# shellcheck disable=SC1090
2929
. "$INIT_ENV"
30+
__INIT_ENV_LOADED=1
3031
fi
3132
# Always source functestlib.sh, using $TOOLS exported by init_env
3233
# shellcheck disable=SC1090,SC1091
@@ -42,20 +43,16 @@ log_info "----------------------------------------------------------------------
4243
log_info "-------------------Starting $TESTNAME Testcase----------------------------"
4344
log_info "=== Test Initialization ==="
4445

45-
# Check if lsusb is installed, else skip test
46-
check_dependencies lsusb grep || {
47-
log_skip "$TESTNAME SKIP - lsusb is missing"
48-
echo "$TESTNAME SKIP" >"$RES_FILE"
49-
exit 0
50-
}
46+
# Check if grep is installed, else skip test
47+
deps_list="grep"
48+
check_dependencies "$deps_list"
5149

50+
# Count interfaces with bInterfaceClass = 03 (HID) under /sys/bus/usb/devices
51+
hid_iface_count=0
5252
log_info "=== USB HID device Detection ==="
53-
hid_iface_count="$(lsusb -v 2>/dev/null | grep -i 'Human Interface Device' | wc -l)"
53+
hid_iface_count="$(cat /sys/bus/usb/devices/*/bInterfaceClass 2>/dev/null | grep -i '03' | wc -l)"
5454

55-
echo "lsusb -v HID descriptors:"
56-
lsusb -v 2>/dev/null | grep -i 'Human Interface Device' || true
57-
58-
echo "Number of HID interfaces found: $hid_iface_count"
55+
printf "Number of HID interfaces found: $hid_iface_count"
5956

6057
if [ "$hid_iface_count" -gt 0 ]; then
6158
log_pass "$TESTNAME : Test Passed - USB HID interface(s) detected"

0 commit comments

Comments
 (0)