Skip to content

firmware-sof-signed: move from cli/amd64 baseline to UEFI common#9857

Merged
igorpecovnik merged 1 commit into
mainfrom
move-firmware-sof-signed-to-uefi-common
May 18, 2026
Merged

firmware-sof-signed: move from cli/amd64 baseline to UEFI common#9857
igorpecovnik merged 1 commit into
mainfrom
move-firmware-sof-signed-to-uefi-common

Conversation

@igorpecovnik
Copy link
Copy Markdown
Member

@igorpecovnik igorpecovnik commented May 18, 2026

Supersedes #9855 + #9856 (both closed; collapsed into one PR per review feedback).

The bug

UEFI boards — predominantly x86 laptops — route audio through SOF. Without the firmware the kernel SOF driver probes, fails to load `/lib/firmware/intel/sof-ipc4//sof-.ri`, and the analog / speaker path stays silent (HDMI still works, which is why many users don't notice until they unplug).

The per-release CLI baseline was the wrong home for it:

  • `trixie` + `sid` had it; `bookworm` / `bullseye` / `jammy` / `noble` / `oracular` never did. CLI/amd64 was inconsistent across releases.
  • SBC / headless CLI images don't need it and were eating ~7 MB of unused blobs.

The move

File Change
`config/optional/architectures/amd64/_config/cli/trixie/main/packages` drop `firmware-sof-signed`
`config/optional/architectures/amd64/_config/cli/sid/main/packages` drop `firmware-sof-signed`
`config/sources/families/include/uefi_common.inc` `add_packages_to_image firmware-sof-signed` (+ comment)

`firmware-sof-signed` is `Architecture: all` — adding it unconditionally for arm64 UEFI is cheap (~7 MB of dead blobs on hosts without an SOF DSP) and avoids gating the line by `LINUXFAMILY`.

Net effect

  • Every UEFI build (x86 + arm64, all releases) ships SOF firmware
  • Non-UEFI CLI/amd64 images no longer pull in the 7 MB
  • CLI/amd64 baseline is now consistent across all 7 supported releases

Test plan

  • `grep -r firmware-sof config/optional/architectures/amd64/` returns nothing
  • Build a UEFI x86 image — `dpkg -l firmware-sof-signed` shows installed; `ls /lib/firmware/intel/sof-ipc4/lnl/` is non-empty
  • Boot on a Lunar Lake laptop — `dmesg | grep -i sof` no longer reports "Direct firmware load … failed"; `aplay -l` lists the SOF card
  • Build a non-UEFI CLI/amd64 image — `dpkg -l` no longer shows `firmware-sof-signed`
  • Build a UEFI arm64 image — no apt error (package is arch-all)

Summary by CodeRabbit

  • Chores
    • Removed firmware-sof-signed from CLI package configurations (amd64 architecture for sid and trixie)
    • Added firmware-sof-signed to UEFI images for enhanced hardware compatibility on x86 laptop systems

Review Change Stack

UEFI boards are predominantly x86 laptops where audio routes through
SOF. Without the firmware the kernel SOF driver probes, fails to
load /lib/firmware/intel/sof-ipc4/<plat>/sof-<plat>.ri, and the
analog / speaker path stays silent (HDMI still works, which is why
many users don't notice until they unplug).

The per-release CLI baseline was the wrong home for this:

  - trixie + sid had it; bookworm / bullseye / jammy / noble /
    oracular never did, so CLI/amd64 was inconsistent across releases.
  - SBC / headless CLI images don't need it and were eating ~7 MB
    of unused blobs.

Move to config/sources/families/include/uefi_common.inc so every UEFI
build (x86 and arm64 — the package is Architecture: all) picks it up
unconditionally; arm64 UEFI gets a few MB of dead blobs in exchange
for not having to gate the line by LINUXFAMILY here.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 18, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f60b16cb-a507-425e-bf78-e6a6ce00997b

📥 Commits

Reviewing files that changed from the base of the PR and between 18bf7ae and 0b5b623.

📒 Files selected for processing (3)
  • config/optional/architectures/amd64/_config/cli/sid/main/packages
  • config/optional/architectures/amd64/_config/cli/trixie/main/packages
  • config/sources/families/include/uefi_common.inc

Disabled knowledge base sources:

  • Jira integration is disabled

You can enable these sources in your CodeRabbit configuration.


📝 Walkthrough

Walkthrough

Removes firmware-sof-signed from AMD64 CLI optional package lists (sid, trixie) and adds firmware-sof-signed to the UEFI common image package set with comments describing SOF probe/silent analog path behavior on affected x86 laptops.

Changes

SOF Firmware Configuration Consolidation

Layer / File(s) Summary
Remove from CLI packages and add to UEFI common
config/optional/architectures/amd64/_config/cli/sid/main/packages, config/optional/architectures/amd64/_config/cli/trixie/main/packages, config/sources/families/include/uefi_common.inc
Deletes firmware-sof-signed from the AMD64 CLI optional package lists (sid, trixie) and inserts firmware-sof-signed into the UEFI common image packages via add_packages_to_image, plus new explanatory comments about SOF probe failures on some x86 laptop hardware.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • armbian/build#9846: Related work enabling Intel SOF/ALSA audio support that depends on availability of firmware-sof-signed for proper driver probe/bind.

Suggested reviewers

  • rpardini

Poem

🐰 I hopped through files at break of dawn,
I nudged the SOF firmware gently on,
From scattered lists to UEFI's keep,
Now audio wakes from silent sleep,
A tiny hop, a firmware song.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch move-firmware-sof-signed-to-uefi-common

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added 05 Milestone: Second quarter release size/small PR with less then 50 lines Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... labels May 18, 2026
@igorpecovnik igorpecovnik merged commit b791830 into main May 18, 2026
12 of 13 checks passed
@igorpecovnik igorpecovnik deleted the move-firmware-sof-signed-to-uefi-common branch May 18, 2026 04:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

05 Milestone: Second quarter release Hardware Hardware related like kernel, U-Boot, ... Needs review Seeking for review size/small PR with less then 50 lines

Development

Successfully merging this pull request may close these issues.

1 participant