/sof-test

Primary LanguageShellBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

SOF Test Case repo

Enviroment set up

requirments

apt packages

expect alsa-utils python3

sudo apt install expect alsa-utils python3

user group

sudo adm audio

env-check.sh

You can use this scripts to check what you missed and follow the guide to set the enviroment

Usage

test cases

call the scripts directly. -h will show the usage for the test

Example:

$ ./test-case/verify-sof-firmware-load.sh
2019-12-12 07:29:46 UTC [INFO] Checking SOF Firmware load info in kernel log
kernel: [    3.296245] sof-audio-pci 0000:00:0e.0: Firmware info: version 1:1:0-65de2
kernel: [    3.296247] sof-audio-pci 0000:00:0e.0: Firmware: ABI 3:12:0 Kernel ABI 3:12:0
kernel: [    3.296249] sof-audio-pci 0000:00:0e.0: Firmware debug build 1 on Dec  4 2019-21:17:51 - options:
kernel: [    3.296249]  GDB: disabled
kernel: [    3.296249]  lock debug: disabled
kernel: [    3.296249]  lock vdebug: disabled
2019-12-12 07:29:47 UTC [INFO] Test PASS!

tools

call the scripts directly. -h will show the usage for the tool

Example:

$ ./tools/sof-dump-status.py -p
apl

Folder description

  • case-lib
    Test case helper functions libary

  • test-case
    Test case folder holds the test cases

  • tools
    Script helper tools for setting up system.
    Can be used via the command line
    Filenames should have the "sof-" prefix

  • logs
    Records in the test-case log folder.
    It will be auto created and follow the test name
    Ordered by time tag, the last link will link to the last run result

Tools list description

  • sof-boot-once.sh
    This script writes to rc.local, which is loaded and read after reboot.
    After rc.local command is run, the command will be removed.
    example: sof-boot-once.sh reboot
    Effect: when system boots up it will auto reboot again

  • sof-dmesg-check.sh
    Check dmesg for errors
    Contains keyword lists to ensure we're stopping due to a real error.

  • tplgtool.py
    tplgtool dump info from tplg binary file.

  • sof-tplgreader.py
    tplgtool.py wrapper, it read info from tplgtool.py to analyze tplgs.

  • sof-dump-status.py
    Dump the sound card status

  • sof-process-clear.sh
    force confirm kill process

  • sof-get-default-tplg.sh
    Load the tplg file name from system log which is recorded from system bootup

  • sof-kernel-dump.sh
    catch all kernel information after system boot up from /var/log/kern.log file

  • sof-disk-usage.sh
    check current disk size for avoid system problem without enough space