public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Pavel Valena <pvalena@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/dracut] rawhide: build: batch of fixes 2026-08-14
Date: Wed, 26 Aug 2026 07:23:23 GMT [thread overview]
Message-ID: <178772900310.1.4611073920404899982.rpms-dracut-254054153d91@fedoraproject.org> (raw)
A new commit has been pushed.
Repo : rpms/dracut
Branch : rawhide
Commit : 254054153d916fe45fdc4829378baed79b2ae878
Author : Pavel Valena <pvalena@redhat.com>
Date : 2026-08-24T16:39:50+02:00
Stats : +442/-1 in 9 file(s)
URL : https://src.fedoraproject.org/rpms/dracut/c/254054153d916fe45fdc4829378baed79b2ae878?branch=rawhide
Log:
build: batch of fixes 2026-08-14
- feat(dracut): add module to load Qualcomm ADSP module pre-udev
- fix(base): escape die() message in emergency hook script
- fix(base): replace eval with safe variable indirection in splitsep and export_n
- perf(devicetree-firmware): do not call inst_multiple if there are no fw files
- refactor(devicetree-firmware): make looping over fw_dir top-level loop
- fix(devicetree-firmware): include soc specific firmwares in install_generic()
- fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares
From-source-git-commit: 8dccf18a8ff2e761fee9a26d52d3e58e6bc5a3f7
---
diff --git a/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch b/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
new file mode 100644
index 0000000..3d9f99b
--- /dev/null
+++ b/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
@@ -0,0 +1,129 @@
+From 419361fcae0929dd1e99e7ba1890a982de318039 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Fri, 13 Mar 2026 19:13:57 +0100
+Subject: [PATCH 13/16] feat(dracut): add module to load Qualcomm ADSP module
+ pre-udev
+
+Cherry picked from upstream commit 647a685d3567 ("feat(dracut): add module
+to load Qualcomm ADSP module pre-udev"). Upstream PR (merged):
+https://github.com/dracut-ng/dracut-ng/pull/2302
+
+On Qualcomm sc8280xp and x1e laptops the kernel reboots the ADSP with new
+firmware because the BIOS loads ADSP firmware with limited functionality
+without sound or battery charge/status reading support.
+
+Unfortunately the ADSP also controls the TCPM (Type-C Port Manager) and
+rebooting the ADSP also resets the TCPM, causing any USB devices connected
+over Type-C ports to get disconnected as all devices on the USB bus are
+removed and re-enumerated.
+
+This breaks booting from USB-drives as the drive gets disconnected and
+re-enumerated as a new block device, leaving any filesystems mounted
+before the ADSP reset without any backing device.
+
+To workaround this add a module to load the ADSP driver from a pre-udev
+hook so that the USB re-enumeration happens before the rootfs is mounted.
+
+Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
+---
+Changes in v5:
+- Sort `inst_multiple` arguments alphabetically
+
+Changes in v4:
+- Change host-only check to [[ $hostonly_mode == "strict" ]] so that
+ 30-qcom-adsp-pre-udev.sh gets installed in sloppy hostonly mode
+- Add modprobe to list of binaries to install from install()
+
+Changes in v3:
+- Add "inst grep" to install()
+
+Changes in v2:
+- Directly use $DRACUT_ARCH instead of defining _arch local var
+- Add the new module to labeler.yml and core.adoc
+---
+ doc_site/modules/ROOT/pages/modules/core.adoc | 4 ++
+ modules.d/70qcom-adsp/module-setup.sh | 40 +++++++++++++++++++
+ modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh | 9 +++++
+ 3 files changed, 53 insertions(+)
+ create mode 100755 modules.d/70qcom-adsp/module-setup.sh
+ create mode 100755 modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+
+diff --git a/doc_site/modules/ROOT/pages/modules/core.adoc b/doc_site/modules/ROOT/pages/modules/core.adoc
+index 42538dea..9f2dffc7 100644
+--- a/doc_site/modules/ROOT/pages/modules/core.adoc
++++ b/doc_site/modules/ROOT/pages/modules/core.adoc
+@@ -201,6 +201,10 @@ code, there are no specific types or categories for dracut modules.
+ | polls CD-ROM
+ |
+
++| qcom-adsp
++| Load Qualcomm ADSP module pre-udev
++|
++
+ | rescue
+ | utilities for rescue mode (such as ping, ssh, vi, fsck.*)
+ | utils
+diff --git a/modules.d/70qcom-adsp/module-setup.sh b/modules.d/70qcom-adsp/module-setup.sh
+new file mode 100755
+index 00000000..a3d05057
+--- /dev/null
++++ b/modules.d/70qcom-adsp/module-setup.sh
+@@ -0,0 +1,40 @@
++#!/bin/bash
++# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
++# ex: ts=8 sw=4 sts=4 et filetype=sh
++
++# On Qualcomm sc8280xp and x1e laptops the kernel reboots the ADSP with new
++# firmware because the BIOS loads ADSP firmware with limited functionality
++# without sound or battery charge/status reading support.
++#
++# Unfortunately the ADSP also controls the TCPM (Type-C Port Manager) and
++# rebooting the ADSP also resets the TCPM, causing any USB devices connected
++# over Type-C ports to get disconnected as all devices on the USB bus are
++# removed and re-enumerated.
++#
++# This breaks booting from USB-drives as the drive gets disconnected and
++# re-enumerated as a new block device, leaving any filesystems mounted
++# before the ADSP reset without any backing device.
++#
++# To workaround this, this module load the ADSP driver from a pre-udev hook
++# so that the USB re-enumeration happens before the rootfs is mounted.
++
++# called by dracut
++check() {
++ [ "$DRACUT_ARCH" = "aarch64" ] || return 1
++ if [[ $hostonly_mode == "strict" ]]; then
++ grep -q -E 'qcom,sc8280xp-adsp-pas|qcom,x1e80100-adsp-pas' \
++ /sys/bus/platform/devices/*.remoteproc/modalias 2> /dev/null || return 1
++ fi
++ return 0
++}
++
++# called by dracut
++installkernel() {
++ instmods qcom_q6v5_pas
++}
++
++# called by dracut
++install() {
++ inst_multiple grep modprobe
++ inst_hook pre-udev 30 "$moddir/qcom-adsp-pre-udev.sh"
++}
+diff --git a/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh b/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+new file mode 100755
+index 00000000..2c408428
+--- /dev/null
++++ b/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+@@ -0,0 +1,9 @@
++#!/bin/sh
++
++# Ensure ADSP module is loaded and Type-C USB busses are reset before
++# filesystems are mounted
++
++if grep -q -E 'qcom,sc8280xp-adsp-pas|qcom,x1e80100-adsp-pas' \
++ /sys/bus/platform/devices/*.remoteproc/modalias 2> /dev/null; then
++ modprobe qcom_q6v5_pas
++fi
+--
+2.55.0
+
diff --git a/0014-fix-base-escape-die-message-in-emergency-hook-script.patch b/0014-fix-base-escape-die-message-in-emergency-hook-script.patch
new file mode 100644
index 0000000..d6be7f3
--- /dev/null
+++ b/0014-fix-base-escape-die-message-in-emergency-hook-script.patch
@@ -0,0 +1,45 @@
+From ee9352b57eea781573615e5c2d88b9ff258a5ea5 Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Tue, 28 Jul 2026 04:03:13 +0200
+Subject: [PATCH 14/16] fix(base): escape die() message in emergency hook
+ script
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+die() appends its error message to $hookdir/emergency/01-die.sh using
+echo "warn dracut: FATAL: \"$*\"", which is later sourced by
+emergency_shell(). When die() is called with DHCP-controlled data —
+specifically $netroot derived from the DHCP ROOT_PATH option via
+netroot.sh's handler-resolution failure path — a command-substitution
+sequence such as $(cmd) embedded in that data executes as root when
+dracut sources the emergency hook directory.
+
+Replace `echo` with `printf '%q'` to shell-escape the message before
+writing it into the hook script, preventing command injection via
+DHCP-controlled values that reach die() through error paths.
+
+Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+
+(cherry picked from commit daed5d8f3691580a6b9b72e54d7bfc5fb6ded4df)
+---
+ modules.d/80base/dracut-lib.sh | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/80base/dracut-lib.sh b/modules.d/80base/dracut-lib.sh
+index 339567d9..dfec0ddf 100755
+--- a/modules.d/80base/dracut-lib.sh
++++ b/modules.d/80base/dracut-lib.sh
+@@ -427,7 +427,8 @@ die() {
+ } > /dev/kmsg
+
+ {
+- echo "warn dracut: FATAL: \"$*\""
++ printf 'warn dracut: FATAL: %q\n' "$*"
++
+ echo "warn dracut: Refusing to continue"
+ } >> $hookdir/emergency/01-die.sh
+ [ -d /run/initramfs ] || mkdir -p -- /run/initramfs
+--
+2.55.0
+
diff --git a/0015-fix-base-replace-eval-with-safe-variable-indirection.patch b/0015-fix-base-replace-eval-with-safe-variable-indirection.patch
new file mode 100644
index 0000000..5c0f191
--- /dev/null
+++ b/0015-fix-base-replace-eval-with-safe-variable-indirection.patch
@@ -0,0 +1,59 @@
+From 1d7bc628f3acfa9f079555c6080df44b648df9cf Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Thu, 7 May 2026 00:59:05 +0200
+Subject: [PATCH 15/16] fix(base): replace eval with safe variable indirection
+ in splitsep and export_n
+
+splitsep: use local nameref to avoid eval injection via single-quote breakout.
+export_n: use ${!var} and printf -v to avoid eval injection via double-quote breakout.
+
+(cherry picked from commit 2a395c7d4abe8e26836ecf109ab69600d4243e03)
+---
+ modules.d/80base/dracut-lib.sh | 15 ++++++++++-----
+ 1 file changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/modules.d/80base/dracut-lib.sh b/modules.d/80base/dracut-lib.sh
+index dfec0ddf..8f9fb412 100755
+--- a/modules.d/80base/dracut-lib.sh
++++ b/modules.d/80base/dracut-lib.sh
+@@ -336,12 +336,18 @@ splitsep() {
+
+ while [ -n "$str" ] && [ "$#" -gt 1 ]; do
+ tmp="${str%%"$sep"*}"
+- eval "$1='${tmp}'"
++ local -n _splitsep_ref="$1"
++ _splitsep_ref="$tmp"
++ unset -n _splitsep_ref
+ str="${str#"$tmp"}"
+ str="${str#"$sep"}"
+ shift
+ done
+- [ -n "$str" ] && [ -n "$1" ] && eval "$1='$str'"
++ if [ -n "$str" -a -n "$1" ]; then
++ local -n _splitsep_ref="$1"
++ _splitsep_ref="$str"
++ unset -n _splitsep_ref
++ fi
+ debug_on
+ return 0
+ }
+@@ -940,14 +946,13 @@ emergency_shell() {
+ }
+
+ # Retain the values of these variables but ensure that they are unexported
+-# This is a POSIX-compliant equivalent of bash's "export -n"
+ export_n() {
+ local var
+ local val
+ for var in "$@"; do
+- eval "val=\$$var"
++ val="${!var}"
+ unset "$var"
+- [ -n "$val" ] && eval "$var=\"$val\""
++ [ -n "$val" ] && printf -v "$var" '%s' "$val"
+ done
+ }
+
+--
+2.55.0
+
diff --git a/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch b/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
new file mode 100644
index 0000000..c916550
--- /dev/null
+++ b/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
@@ -0,0 +1,24 @@
+From d14f81d2743aceb8a3651f1b643bda27e442b0e8 Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Fri, 14 Aug 2026 02:08:24 +0200
+Subject: [PATCH 16/16] build(Makefile): do not fail on network-legacy missing
+
+---
+ Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile b/Makefile
+index ee6ff229..333c6304 100644
+--- a/Makefile
++++ b/Makefile
+@@ -289,6 +289,7 @@ endif
+ mkdir -p $(DESTDIR)${pkgconfigdatadir}
+ install -m 0644 dracut.pc $(DESTDIR)${pkgconfigdatadir}/dracut.pc
+ ifneq ($(enable_network_legacy),yes)
++ mkdir -p $(DESTDIR)$(pkglibdir)/modules.d/00network-legacy
+ rm -r $(DESTDIR)$(pkglibdir)/modules.d/[0-9][0-9]network-legacy
+ endif
+ if ! [ -n "$(systemdsystemunitdir)" ]; then \
+--
+2.55.0
+
diff --git a/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch b/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
new file mode 100644
index 0000000..79eb27e
--- /dev/null
+++ b/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
@@ -0,0 +1,38 @@
+From 60213a107b4f7aee720010df8aad776509f6e43d Mon Sep 17 00:00:00 2001
+From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
+Date: Fri, 3 Jul 2026 16:15:10 +0200
+Subject: [PATCH 17/20] perf(devicetree-firmware): do not call inst_multiple if
+ there are no fw files
+
+Upstream status: cherry-pick from upstream commit c1cb94f082b8.
+
+Otherwise `inst_multiple -o` is called without arguments.
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 5b6b7467..100e027a 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -40,7 +40,7 @@ install_hostonly() {
+ done
+ done
+ done
+- inst_multiple -o "${_fw_files[@]}"
++ ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+
+ # generic install (hostonly / generic use completely different approaches)
+@@ -58,7 +58,7 @@ install_generic() {
+ done
+ done
+ done
+- inst_multiple -o "${_fw_files[@]}"
++ ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+
+ # called by dracut
+--
+2.55.0
+
diff --git a/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch b/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
new file mode 100644
index 0000000..914df89
--- /dev/null
+++ b/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
@@ -0,0 +1,37 @@
+From c6ca6500d94ba456b14704f82b73588cc823022a Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:14:37 +0200
+Subject: [PATCH 18/20] refactor(devicetree-firmware): make looping over fw_dir
+ top-level loop
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Make the looping over $fw_dir the top-level loop. This is a preparation
+patch for adding support to install_generic() to add soc specific
+firmwares (qcom/<soc>/qupv3fw.elf).
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 100e027a..16b9e00f 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -46,10 +46,10 @@ install_hostonly() {
+ # generic install (hostonly / generic use completely different approaches)
+ install_generic() {
+ local _fw_files=()
+- # ATM only qcom WoA laptops need this
+- for _soc in qcom/sc8280xp qcom/x1e80100; do
+- # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
+- for _fwdir in $fw_dir; do
++ # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
++ for _fwdir in $fw_dir; do
++ # add laptop model specific firmwares for qcom WoA laptops
++ for _soc in qcom/sc8280xp qcom/x1e80100; do
+ # add '*' after mbn, elf for .gz, etc. compression
+ for _fw in "$_fwdir/$_soc"/*/*/*.mbn* "$_fwdir/$_soc"/*/*/*.elf*; do
+ [ -f "$_fw" ] || continue
+--
+2.55.0
+
diff --git a/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch b/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
new file mode 100644
index 0000000..9f3ea5c
--- /dev/null
+++ b/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
@@ -0,0 +1,40 @@
+From 61ae0147e38d425b1c9e623fe2925b31b07dbe47 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:19:45 +0200
+Subject: [PATCH 19/20] fix(devicetree-firmware): include soc specific
+ firmwares in install_generic()
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Qualcomm boards may use SoC specific firmwares from an otherwise generic
+driver like qcom-geni-se. Which firmware to load is specified with
+a firmware-name devicetree-property, so install_hostonly() already picks
+these up.
+
+Make install_generic() also include these in the initramfs by explicitly
+searching for them similar to how this is already done for Qualcomm laptop
+model specific firmwares.
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 16b9e00f..e725ac97 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -57,6 +57,12 @@ install_generic() {
+ _fw_files+=("$_fw")
+ done
+ done
++ # add soc specific firmwares needed to boot some qcom boards
++ for _fw in "$_fwdir/qcom"/*/qupv3fw.elf*; do
++ [ -f "$_fw" ] || continue
++ _fw=${_fw#"${dracutsysrootdir-}"}
++ _fw_files+=("$_fw")
++ done
+ done
+ ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+--
+2.55.0
+
diff --git a/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch b/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
new file mode 100644
index 0000000..ab56105
--- /dev/null
+++ b/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
@@ -0,0 +1,33 @@
+From 0d4478299e229c4bd8d9f2d25e3622771ab4e1cc Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:24:57 +0200
+Subject: [PATCH 20/20] fix(devicetree-firmware): include Qualcomm X2 laptop
+ model specific firmwares
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Qualcomm laptops typically have laptop model specific firmwares.
+
+Extend install_generic() to pick up the laptop model specific firmwares
+for the new X2 / Glymur laptops which have a filename pattern of:
+<fwdir>/qcom/glymur/<vendor>/<model>/*.[mbn|elf]
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index e725ac97..ceb49583 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -49,7 +49,7 @@ install_generic() {
+ # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
+ for _fwdir in $fw_dir; do
+ # add laptop model specific firmwares for qcom WoA laptops
+- for _soc in qcom/sc8280xp qcom/x1e80100; do
++ for _soc in qcom/sc8280xp qcom/x1e80100 qcom/glymur; do
+ # add '*' after mbn, elf for .gz, etc. compression
+ for _fw in "$_fwdir/$_soc"/*/*/*.mbn* "$_fwdir/$_soc"/*/*/*.elf*; do
+ [ -f "$_fw" ] || continue
+--
+2.55.0
+
diff --git a/dracut.spec b/dracut.spec
index a336658..fb48cd1 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -8,7 +8,7 @@
Name: dracut
Version: 111
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: Initramfs generator using udev
@@ -58,6 +58,30 @@ Patch11: 0011-fix-net-lib-warn-on-suspicious-shell-metacharacters-.patch
# fix(systemd-networkd): escape DHCP lease values in dhcpopts generation
# Author: Pavel Valena <pvalena@redhat.com>
Patch12: 0012-fix-systemd-networkd-escape-DHCP-lease-values-in-dhc.patch
+# feat(dracut): add module to load Qualcomm ADSP module pre-udev
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch13: 0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
+# fix(base): escape die() message in emergency hook script
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch14: 0014-fix-base-escape-die-message-in-emergency-hook-script.patch
+# fix(base): replace eval with safe variable indirection in splitsep and export_n
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch15: 0015-fix-base-replace-eval-with-safe-variable-indirection.patch
+# build(Makefile): do not fail on network-legacy missing
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch16: 0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
+# perf(devicetree-firmware): do not call inst_multiple if there are no fw files
+# Author: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
+Patch17: 0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
+# refactor(devicetree-firmware): make looping over fw_dir top-level loop
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch18: 0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
+# fix(devicetree-firmware): include soc specific firmwares in install_generic()
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch19: 0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
+# fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch20: 0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
# Please use source-git to work with this spec file:
# HowTo: https://packit.dev/source-git/work-with-source-git
@@ -375,6 +399,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{dracutlibdir}/modules.d/70overlayfs
%{dracutlibdir}/modules.d/70pcmcia
%{dracutlibdir}/modules.d/70ppcmac
+%{dracutlibdir}/modules.d/70qcom-adsp
%{dracutlibdir}/modules.d/70qemu
%{dracutlibdir}/modules.d/71overlayfs-crypt
%{dracutlibdir}/modules.d/71systemd-cryptsetup
@@ -502,6 +527,17 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
%changelog
+* Tue Aug 18 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 111-2
+- fix(devicetree-firmware): include soc specific firmwares in install_generic()
+- fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares
+
+* Thu Aug 13 2026 Pavel Valena <pvalena@redhat.com> - 111-2
+- fix(base): escape die() message in emergency hook script
+- fix(base): replace eval with safe variable indirection in splitsep and export_n
+
+* Mon aug 10 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 111-2
+- feat(dracut): add module to load Qualcomm ADSP module pre-udev
+
* Fri Jul 31 2026 Pavel Valena <pvalena@redhat.com> - 111-1
- build: upgrade to dracut 111
reply other threads:[~2026-08-26 7:23 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=178772900310.1.4611073920404899982.rpms-dracut-254054153d91@fedoraproject.org \
--to=pvalena@redhat.com \
--cc=git-commits@fedoraproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox