File 0613-dracut-init.sh-Support-xz-compressed-firmware-files.patch of Package dracut.28355
From 95e4849e0eaa492fe27fbaea626cf3ab310b853a Mon Sep 17 00:00:00 2001
From: Daniel Molkentin <dmolkentin@suse.com>
Date: Mon, 30 Sep 2019 14:48:19 +0200
Subject: [PATCH] dracut-init.sh: Support xz compressed firmware files
Reference: boo#1151552
---
dracut-init.sh | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/dracut-init.sh b/dracut-init.sh
index 74e2086d..93c03a5f 100644
--- a/dracut-init.sh
+++ b/dracut-init.sh
@@ -913,16 +913,22 @@ install_kmod_with_fw() {
for _fw in $(modinfo -k $kernel -F firmware $1 2>/dev/null); do
_found=''
for _fwdir in $fw_dir; do
- [[ -d $_fwdir && -f $_fwdir/$_fw ]] || continue
- inst_simple "$_fwdir/$_fw" "/lib/firmware/$_fw"
+ if [[ -d $_fwdir ]]; then
+ if [[ -f $_fwdir/$_fw ]]; then
+ inst_simple "$_fwdir/$_fw" "/lib/firmware/$_fw"
+ else
+ [[ -f $_fwdir/$_fw.xz ]] || continue
+ inst_simple "$_fwdir/$_fw.xz" "/lib/firmware/$_fw.xz"
+ fi
+ fi
_found=yes
done
if [[ $_found != yes ]]; then
if ! [[ -d $(echo /sys/module/${_modname//-/_}|{ read a b; echo $a; }) ]]; then
- dinfo "Possible missing firmware \"${_fw}\" for kernel module" \
+ dinfo "Possible missing firmware \"${_fw}\" or \"${_fw}.xz\" for kernel module" \
"\"${_modname}.ko\""
else
- dwarn "Possible missing firmware \"${_fw}\" for kernel module" \
+ dwarn "Possible missing firmware \"${_fw}\" or \"${_fw}\.xz\" for kernel module" \
"\"${_modname}.ko\""
fi
fi
--
2.16.4