[Sound-open-firmware] [PATCH] soft: kmod_scripts: initial import

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Thu Feb 15 02:30:57 CET 2018


set of basic bash scripts to remove/insert SOF Linux kernel modules in
the right order.  This is typically used to avoid rebooting every time
the SOF image or topology are updated - and detect leaks on remove.

sof_remove.sh: remove all SOF modules
sof_insert.sh: probe SOF modules
sof_bootone.sh: combination of remove/insert in one shot
sof_bootloop.sh: boot loop to see if firmware boot is reliable over
time

This can probably be enhanced to remove spurious "module is not
currently loaded" logs.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com>
---
 kmod_scripts/sof_bootloop.sh | 11 +++++++++++
 kmod_scripts/sof_bootone.sh  | 19 +++++++++++++++++++
 kmod_scripts/sof_insert.sh   | 12 ++++++++++++
 kmod_scripts/sof_remove.sh   | 27 +++++++++++++++++++++++++++
 4 files changed, 69 insertions(+)
 create mode 100755 kmod_scripts/sof_bootloop.sh
 create mode 100755 kmod_scripts/sof_bootone.sh
 create mode 100755 kmod_scripts/sof_insert.sh
 create mode 100755 kmod_scripts/sof_remove.sh

diff --git a/kmod_scripts/sof_bootloop.sh b/kmod_scripts/sof_bootloop.sh
new file mode 100755
index 0000000..f1bc99b
--- /dev/null
+++ b/kmod_scripts/sof_bootloop.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+MAXLOOPS=100
+COUNTER=0
+
+while [ $COUNTER -lt $MAXLOOPS ]; do
+    echo "test $COUNTER"
+    ./sof_bootone.sh
+    dmesg > boot_$COUNTER.bootlog
+    let COUNTER+=1
+done
diff --git a/kmod_scripts/sof_bootone.sh b/kmod_scripts/sof_bootone.sh
new file mode 100755
index 0000000..6bc5f27
--- /dev/null
+++ b/kmod_scripts/sof_bootone.sh
@@ -0,0 +1,19 @@
+#!/bin/bash
+
+dmesg -C
+./sof_remove.sh
+./sof_insert.sh
+sleep 1
+
+unset FW_BOOT
+unset ERROR
+FW_BOOT=$(dmesg | grep sof-audio | grep "boot complete")
+ERROR=$(dmesg | grep sof-audio | grep "error")
+
+if [ ! -z "$ERROR" ] || [ -z "$FW_BOOT" ]
+then
+   echo "boot failed"
+else
+    echo "boot success"
+fi
+       
diff --git a/kmod_scripts/sof_insert.sh b/kmod_scripts/sof_insert.sh
new file mode 100755
index 0000000..93b2242
--- /dev/null
+++ b/kmod_scripts/sof_insert.sh
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+modprobe snd_soc_rt5670
+modprobe snd_soc_rt5645
+modprobe snd_soc_rt5651
+modprobe snd_soc_rt5640
+modprobe snd_soc_da7213
+
+modprobe sof_acpi_dev
+modprobe sof_pci_dev
+
+
diff --git a/kmod_scripts/sof_remove.sh b/kmod_scripts/sof_remove.sh
new file mode 100755
index 0000000..1ea0598
--- /dev/null
+++ b/kmod_scripts/sof_remove.sh
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+rmmod sof_pci_dev
+rmmod sof_acpi_dev
+rmmod snd_soc_acpi_intel_match
+rmmod snd_sof_intel_byt
+rmmod snd_sof_intel_hsw
+rmmod snd_sof_intel_bdw
+rmmod snd_sof_intel_apl
+rmmod snd_sof_intel_cnl
+rmmod snd_sof_intel_hda_common
+rmmod snd_sof
+
+rmmod snd_soc_sst_bytcr_rt5640
+rmmod snd_soc_sst_bytcr_rt5651
+rmmod snd_soc_sst_cht_bsw_rt5645
+rmmod snd_soc_sst_cht_bsw_rt5670
+rmmod snd_soc_sst_byt_cht_da7213
+
+rmmod snd_soc_rt5670
+rmmod snd_soc_rt5645
+rmmod snd_soc_rt5651
+rmmod snd_soc_rt5640
+rmmod snd_soc_rl6231
+rmmod snd_soc_da7213
+
+rmmod snd_soc_acpi
-- 
2.14.1



More information about the Sound-open-firmware mailing list