Skip to content

Consider splitting linux-firmware further

Task Info (Flyspray)
Opened By Emil (xexaxo)
Task ID 77653
Type Feature Request
Project Arch Linux
Category Packages: Core
Version None
OS All
Opened 2023-02-26 15:51:38 UTC
Status Assigned
Assignee Laurent Carlier (lordheavy)

Details

Description:

Early in 2022 out firmware package got a) xz compression and b) enterprise-y firmware was split into sub-packages, currently linux-firmware is at ~130/150M (compressed vs installed). While it's far more manageable it still provides fairly large "overhead" wrt what Arch users need - somewhere between 2x and 8x.

Of all the firmware, ~120 MiB fits into the following categories:

Wifi/BT/NIC

  • 43 MiB iwlwifi* - Intel Wifi
  • 20 MiB {ar,ath}* - Atheros Wifi/Bt
  • 14 MiB intel/ibt* - Intel BT
  • 6 MiB brcm* - Broadcom, b43 might be incoming?
  • 2 MiB {RTL,rtl,rtw}* - Realtek

GPU

  • 23 MiB amdgpu - various GPUs, hw blocks and multiple versions of each
  • 8 MiB i915 - Gen9+ GPUs only
  • 4 MiB radeon - ancient AMD radeons also should we include r128?
  • 3 MiB nvidia - huge GSP firmware might be incoming?

In the typical setup, people would have GPU/Wifi/BT of a 1-2 vendors, be that one or multiple devices. Where the rest is more or less dead weight.

Let's pick some of my machines for example:

  • i915 Gen8 + Intel Wifi/BT - 60M applicable
  • AMGPU + Realtek Wifi/BT - 25M applicable
  • AMGPU + Intel Wifi/BT + Realtek NIC - 82M applicable
  • i915 Gen9 + Nvidia GPU + Realteck NIC - 18M applicable

My proposal is to split out each section listed above as it's own sub-package. Or at the very least the larger ones like Intel Wifi, Intel BT, Atheros, AMDGPU.

Thanks in advance

Additional info:

  • package version(s) linux-firmware 20230210.bf4115c-1
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information