Public bug reported: [Impact]
Ubuntu 26.04 ships with fwupd 2.1.1-1ubuntu3.1, which lacks support for the 'compal-bios' (PAIR_LOW) version format introduced in fwupd 2.1.4. This prevents proper firmware version detection and updates for systems using Compal BIOS implementations, including devices like the AMD Halo Box and other systems that store BIOS version information in the lower word of a 32-bit integer as hexadecimal data (formatted as "AA.BB" from 0x0000AABB). Without this version format support, affected systems cannot: - Correctly display current BIOS firmware versions in fwupd - Properly compare installed vs. available firmware versions - Receive firmware updates from LVFS (Linux Vendor Firmware Service) for Compal-based systems The fix requires updating to fwupd 2.1.4 or later from the stable 2.1.x branch, which includes the PAIR_LOW version format implementation added in https://github.com/fwupd/fwupd/pull/10347. [Test Plan] For systems with Compal BIOS (e.g., AMD Halo Box): 1. Verify version detection failure (before update): fwupdmgr get-devices 1. Confirm that Compal BIOS devices either show incorrect version strings or fail to enumerate properly. 2. Apply the fwupd update to 2.1.4 or later 3. Verify version detection success (after update): fwupdmgr get-devices 3. Confirm that Compal BIOS firmware versions now display correctly in "AA.BB" format (e.g., "01.05" for version 0x00000105). 4. Verify firmware update capability: fwupdmgr refresh fwupdmgr get-updates 4. If LVFS has updates available for the device, confirm they are properly detected and version comparison works correctly. General regression testing (per fwupd SRU exception requirements): 1. Test UEFI capsule updates on an OEM system pulling from LVFS with Secure Boot enabled 2. Verify CI tests have passed for the upstream 2.1.4 release 3. Confirm systems with Thunderbolt, NVMe, and other in-OS devices still enumerate correctly 4. Verify signed packages are uploaded Unit test verification: The upstream PR includes comprehensive unit tests for the PAIR_LOW format conversion that can be verified in the fwupd test suite. [Where problems could occur] Version format parsing changes: If the PAIR_LOW implementation has bugs in the version conversion logic, it could cause: - Incorrect version strings displayed to users (cosmetic issue) - Version comparison failures leading to incorrect "update available" decisions - Failure to apply critical firmware updates due to version mismatches - False positive update notifications if version comparison is reversed Quirk configuration interaction: The change includes quirk configurations for specific devices. If quirk matching logic has issues: - Wrong version format could be applied to non-Compal devices - Compal devices might not match their quirk and fall back to incorrect version parsing Regression in existing version formats: Since the change modifies core version parsing functions (fu_version_from_uint64/32/16), there's potential for: - Breaking existing version format handlers (PAIR, QUAD, TRIPLET, etc.) - Affecting version display for non-Compal firmware devices Mitigation: The upstream PR includes unit tests covering the new format and passed 27 automated checks. The change is isolated to the version format subsystem with a new format type (PAIR_LOW) that only activates when explicitly configured in device quirks. [Other Info] Compliance with fwupd SRU exception: This request follows the fwupd SRU exception policy requiring updates from the stable 2.1.x release branch rather than individual backported patches. Moving from 2.1.1 to 2.1.4 stays within the same stable branch launched with this Ubuntu release. Upstream reference: - Pull Request: https://github.com/fwupd/fwupd/pull/10347 - Introduced in: fwupd 2.1.4 - Current Ubuntu 26.04 version: 2.1.1-1ubuntu3.1 Additional testing notes: Access to actual Compal BIOS hardware (such as AMD Halo Box) would provide the most thorough verification, though unit tests can confirm the version format logic is working correctly. ** Affects: fwupd (Ubuntu) Importance: Undecided Status: Fix Released ** Affects: fwupd (Ubuntu Resolute) Importance: Undecided Status: New ** Also affects: fwupd (Ubuntu Resolute) Importance: Undecided Status: New ** Changed in: fwupd (Ubuntu) Status: New => Fix Released -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2165922 Title: Unable to take BIOS update for any 'compal-bios' BIOS format To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/fwupd/+bug/2165922/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
