Message ID | 20221212141010.1043724-1-dimitri.ledkov@canonical.com |
---|---|
State | New |
Headers | show |
Series | [kernel-snaps-uc22/main] trim-firmware: copy pnvm settings | expand |
Applied to uc22 repository, main branch. On Mon, 12 Dec 2022 at 14:10, Dimitri John Ledkov <dimitri.ledkov@canonical.com> wrote: > > BugLink: https://bugs.launchpad.net/bugs/1999396 > > iwlwifi driver loads pnvm settings from a UEFI variable, and if > absent, fallsback to loading settings from a firmware file. At the > moment these are not declared by the module. Add custom logic to check > and copy pnvm settings for any matching iwlwifi ucode files. > > Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com> > --- > trim-firmware | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/trim-firmware b/trim-firmware > index c590aa2114..148c964572 100755 > --- a/trim-firmware > +++ b/trim-firmware > @@ -100,6 +100,16 @@ if [ -d "${DESTDIR}"/modules/*/kernel/sound/soc/sof/intel/ ] && \ > cp -r "${DESTDIR}"/firmware/intel/sof-tplg "${DESTDIR}"/firmware.new/intel/ > fi > > +# Undeclared PNVM fallback settings LP: #1999396 > +for ucode in "${DESTDIR}"/firmware/iwlwifi-*.ucode; do > + if [ -e $ucode ]; then > + pnvm_file=$(basename $ucode | sed -n 's/\(iwlwifi-.*\)-[0-9]*.ucode/\1.pnvm/p') > + if [ -e "${DESTDIR}"/firmware/$pnvm_file ]; then > + cp "${DESTDIR}"/firmware/$pnvm_file "${DESTDIR}"/firmware.new/$pnvm_file > + fi > + fi > +done > + > # Switch to the new firmware directory > rm -rf "${DESTDIR}"/firmware > mv "${DESTDIR}"/firmware.new "${DESTDIR}"/firmware > -- > 2.34.1 >
diff --git a/trim-firmware b/trim-firmware index c590aa2114..148c964572 100755 --- a/trim-firmware +++ b/trim-firmware @@ -100,6 +100,16 @@ if [ -d "${DESTDIR}"/modules/*/kernel/sound/soc/sof/intel/ ] && \ cp -r "${DESTDIR}"/firmware/intel/sof-tplg "${DESTDIR}"/firmware.new/intel/ fi +# Undeclared PNVM fallback settings LP: #1999396 +for ucode in "${DESTDIR}"/firmware/iwlwifi-*.ucode; do + if [ -e $ucode ]; then + pnvm_file=$(basename $ucode | sed -n 's/\(iwlwifi-.*\)-[0-9]*.ucode/\1.pnvm/p') + if [ -e "${DESTDIR}"/firmware/$pnvm_file ]; then + cp "${DESTDIR}"/firmware/$pnvm_file "${DESTDIR}"/firmware.new/$pnvm_file + fi + fi +done + # Switch to the new firmware directory rm -rf "${DESTDIR}"/firmware mv "${DESTDIR}"/firmware.new "${DESTDIR}"/firmware
BugLink: https://bugs.launchpad.net/bugs/1999396 iwlwifi driver loads pnvm settings from a UEFI variable, and if absent, fallsback to loading settings from a firmware file. At the moment these are not declared by the module. Add custom logic to check and copy pnvm settings for any matching iwlwifi ucode files. Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@canonical.com> --- trim-firmware | 10 ++++++++++ 1 file changed, 10 insertions(+)