dracut-install: Add support for compressed firmware files
The upcoming kernel will have a support for loading compressed firmware files, and this patch corresponds to that kernel change. When a firmware file with the extra .xz extension is found, dracut copies to initrd as fallback. Since initrd itself is compressed, the file is uncompressed in initrd beforehand.master
parent
9f96bb4c73
commit
dc86c12c45
|
@ -917,8 +917,16 @@ install_kmod_with_fw() {
|
||||||
for _fw in $(modinfo -k $kernel -F firmware $1 2>/dev/null); do
|
for _fw in $(modinfo -k $kernel -F firmware $1 2>/dev/null); do
|
||||||
_found=''
|
_found=''
|
||||||
for _fwdir in $fw_dir; do
|
for _fwdir in $fw_dir; do
|
||||||
[[ -d $_fwdir && -f $_fwdir/$_fw ]] || continue
|
[[ -d $_fwdir ]] || continue
|
||||||
inst_simple "$_fwdir/$_fw" "/lib/firmware/$_fw"
|
if [[ -f $_fwdir/$_fw ]]; then
|
||||||
|
inst_simple "$_fwdir/$_fw" "/lib/firmware/$_fw"
|
||||||
|
elif [[ -f $_fwdir/$_fw.xz ]]; then
|
||||||
|
inst_simple "$_fwdir/$_fw.xz" "/lib/firmware/$_fw.xz"
|
||||||
|
rm -f "${initdir}/lib/firmware/$_fw"
|
||||||
|
unxz -f "${initdir}/lib/firmware/$_fw.xz"
|
||||||
|
else
|
||||||
|
continue
|
||||||
|
fi
|
||||||
_found=yes
|
_found=yes
|
||||||
done
|
done
|
||||||
if [[ $_found != yes ]]; then
|
if [[ $_found != yes ]]; then
|
||||||
|
|
Loading…
Reference in New Issue