Skip to content

Conversation

@pyavitz
Copy link
Collaborator

@pyavitz pyavitz commented Feb 1, 2026

Ubuntu uses compressed "*.zst" firmware of which the kernel has issue.

Summary by CodeRabbit

  • Refactor
    • Adjusted firmware installation flow to introduce Ubuntu-specific handling that fetches and stages Broadcom firmware ahead of system install for more consistent outcomes.
  • Bug Fix
    • Removed an older Raspberry Pi post-install firmware tweak to simplify and stabilize the installation sequence.
  • Chores
    • Eliminated a duplicated firmware handling entry to avoid redundant operations.

✏️ Tip: You can customize this high-level summary in your review settings.

Ubuntu uses compressed "*.zst" firmware of which the kernel has
issue.

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
@pyavitz pyavitz requested a review from igorpecovnik as a code owner February 1, 2026 16:32
@github-actions github-actions bot added 02 Milestone: First quarter release size/small PR with less then 50 lines labels Feb 1, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 1, 2026

📝 Walkthrough

Walkthrough

Removed post_family_tweaks_bsp__rpi_firmware() and added pre_install_distribution_specific__ubuntu_brcm_firmware() (duplicate definition) in config/sources/families/bcm2711.conf to move Ubuntu-specific Brcm firmware handling to a pre-install hook.

Changes

Cohort / File(s) Summary
Bcm2711 firmware hook changes
config/sources/families/bcm2711.conf
Removed post_family_tweaks_bsp__rpi_firmware(); added pre_install_distribution_specific__ubuntu_brcm_firmware() to fetch/copy brcm firmware for Ubuntu. The new function appears twice (duplicate definition).

Sequence Diagram(s)

sequenceDiagram
  participant Build as Build System
  participant Git as Remote Git Repo
  participant FS as BSP Image FS
  rect rgba(200,220,255,0.5)
  Build->>Git: clone brcm firmware repo
  Git-->>Build: repo contents
  Build->>FS: copy firmware into lib/firmware (pre-install)
  FS-->>Build: write/verify files
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 I hopped in early, quick and spry,
Fetching brcm bits from a branch nearby.
Two copies of my route, a mirrored dance,
Into lib/firmware I prance and prance. 🥕✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly relates to the main change: adding uncompressed wireless firmware for Raspberry Pi Ubuntu releases to address kernel issues with compressed firmware.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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 Needs review Seeking for review Hardware Hardware related like kernel, U-Boot, ... labels Feb 1, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@config/sources/families/bcm2711.conf`:
- Around line 257-263: The function
pre_install_distribution_specific__ubuntu_raspi_firmware currently runs
chroot_sdcard git clone inside the target rootfs; instead, on the host use the
existing fetch_from_repo helper to fetch the firmware at a pinned commit and
then copy it into the target (into "${SDCARD}/lib/firmware/updates"), removing
any .git metadata; replace the chroot_sdcard git clone call with fetch_from_repo
(specifying repository URL, branch/commit/tag), then use host-level copy to
populate lib/firmware/updates and rm -fdr the .git directory to avoid adding git
as a chroot dependency and ensure reproducible builds.

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2026

✅ This PR has been reviewed and approved — all set for merge!

@github-actions github-actions bot added Ready to merge Reviewed, tested and ready for merge and removed Needs review Seeking for review labels Feb 2, 2026
@pyavitz
Copy link
Collaborator Author

pyavitz commented Feb 2, 2026

@igorpecovnik

I don't think this is required anymore. At least not on 6.18.y and up.

root@rpi5b:~# dmesg | grep brcmfmac; dmesg | grep hci0
[    3.793642] brcmfmac: F1 signature read @0x18000000=0x15264345
[    3.795069] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4
345/6
[    3.795340] usbcore: registered new interface driver brcmfmac
[    4.043965] brcmfmac: brcmf_c_process_txcap_blob: no txcap_blob available (err=-2)
[    4.044293] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6 wl0: Apr 15 2021 03:03:2
0 version 7.45.234 (4ca95bb CY) FWID 01-996384e2
[    6.910042] brcmfmac: brcmf_cfg80211_set_power_mgmt: power save disabled
[    4.143450] Bluetooth: hci0: BCM: chip id 107
[    4.143684] Bluetooth: hci0: BCM: features 0x2f
[    4.144857] Bluetooth: hci0: BCM4345C0
[    4.144860] Bluetooth: hci0: BCM4345C0 (003.001.025) build 0000
[    4.146610] Bluetooth: hci0: BCM4345C0 'brcm/BCM4345C0.raspberrypi,5-model-b.hcd' Patch
[    4.827617] Bluetooth: hci0: BCM: features 0x2f
[    4.829090] Bluetooth: hci0: BCM43455 37.4MHz Raspberry Pi 3+-0190
[    4.829115] Bluetooth: hci0: BCM4345C0 (003.001.025) build 0382
[    4.829826] Bluetooth: hci0: BCM: Using default device address (43:45:c0:00:1f:ac)
root@rpi5b:~# uname -a
Linux rpi5b 6.18.7-current-bcm2711 #2 SMP PREEMPT Thu Jan 29 11:36:06 UTC 2026 aarch64 aarch
64 aarch64 GNU/Linux
root@rpi5b:~# cat /etc/os-release
PRETTY_NAME="Armbian-unofficial 26.02.0-trunk noble"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.armbian.com"
SUPPORT_URL="https://forum.armbian.com"
BUG_REPORT_URL="https://www.armbian.com/bugs"
PRIVACY_POLICY_URL="https://www.armbian.com"
UBUNTU_CODENAME=noble
LOGO="armbian-logo"
ARMBIAN_PRETTY_NAME="Armbian-unofficial 26.02.0-trunk noble"

Could just close this PR and open another removing the post_family_tweaks_bsp__rpi_firmware function?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

02 Milestone: First quarter release Hardware Hardware related like kernel, U-Boot, ... Ready to merge Reviewed, tested and ready for merge size/small PR with less then 50 lines

Development

Successfully merging this pull request may close these issues.

2 participants