#1131020 installation-reports: Please make also work in the d-i the (free/libre) firmware part for the Qualcomm Atheros AR9271 wireless adapter

#1131020#5
Date:
2026-03-17 01:21:22 UTC
From:
To:
Boot method: DVD
Image version:
https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-13.2.0-amd64-DVD-1.iso
Date: 2026-02-20

Machine: Lenovo G500 (LENOVO_MT_20236)
Processor: Intel(R) Celeron(R) CPU 1005M @ 1.90GHz [ 2 Core ]
Memory: 4GiB

Partitions:

Disk /dev/sda: 232,89 GiB, 250059350016 bytes, 488397168 sectors
Disk model: WDC WDS250G2B0A-
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F577CAD6-DD08-4367-A91D-46FFE27862B0

Device         Start       End   Sectors   Size Type
/dev/sda1         34    262177    262144   128M Microsoft reserved
/dev/sda2     264192   2312191   2048000  1000M Windows recovery
environment
/dev/sda3    2312192   2844671    532480   260M EFI System
/dev/sda4    2844672   4419583   1574912   769M Lenovo boot partition
/dev/sda5    4419584 358716458 354296875 168,9G Microsoft basic data
/dev/sda6  421146624 453763811  32617188  15,6G Microsoft basic data
/dev/sda7  461535232 488396799  26861568  12,8G Windows recovery
environment
/dev/sda8  358717440 421146623  62429184  29,8G Linux filesystem
/dev/sda9  453765120 461535231   7770112   3,7G Linux swap

Partition table entries are not in disk order.


Output of lspci -knn (or lspci -nn):

00:00.0 Host bridge [0600]: Intel Corporation 3rd Gen Core processor
DRAM Controller [8086:0154] (rev 09)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: ivb_uncore
00:02.0 VGA compatible controller [0300]: Intel Corporation 3rd Gen Core
processor Graphics Controller [8086:0156] (rev 09)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: i915
	Kernel modules: i915
00:14.0 USB controller [0c03]: Intel Corporation 7 Series/C210 Series
Chipset Family USB xHCI Host Controller [8086:1e31] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: xhci_hcd
	Kernel modules: xhci_pci
00:16.0 Communication controller [0780]: Intel Corporation 7 Series/C216
Chipset Family MEI Controller #1 [8086:1e3a] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: mei_me
	Kernel modules: mei_me
00:1a.0 USB controller [0c03]: Intel Corporation 7 Series/C216 Chipset
Family USB Enhanced Host Controller #2 [8086:1e2d] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: ehci-pci
	Kernel modules: ehci_pci
00:1b.0 Audio device [0403]: Intel Corporation 7 Series/C216 Chipset
Family High Definition Audio Controller [8086:1e20] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: snd_hda_intel
	Kernel modules: snd_hda_intel
00:1c.0 PCI bridge [0604]: Intel Corporation 7 Series/C216 Chipset
Family PCI Express Root Port 1 [8086:1e10] (rev c4)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: pcieport
00:1c.1 PCI bridge [0604]: Intel Corporation 7 Series/C210 Series
Chipset Family PCI Express Root Port 2 [8086:1e12] (rev c4)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: pcieport
00:1d.0 USB controller [0c03]: Intel Corporation 7 Series/C216 Chipset
Family USB Enhanced Host Controller #1 [8086:1e26] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: ehci-pci
	Kernel modules: ehci_pci
00:1f.0 ISA bridge [0601]: Intel Corporation HM70 Express Chipset LPC
Controller [8086:1e5e] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: lpc_ich
	Kernel modules: lpc_ich
00:1f.2 SATA controller [0106]: Intel Corporation 7 Series Chipset
Family 6-port SATA Controller [AHCI mode] [8086:1e03] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: ahci
	Kernel modules: ahci
00:1f.3 SMBus [0c05]: Intel Corporation 7 Series/C216 Chipset Family
SMBus Controller [8086:1e22] (rev 04)
	Subsystem: Lenovo Device [17aa:3977]
	Kernel driver in use: i801_smbus
	Kernel modules: i2c_i801
01:00.0 Ethernet controller [0200]: Qualcomm Atheros QCA8172 Fast
Ethernet [1969:10a0] (rev 10)
	Subsystem: Lenovo Device [17aa:3802]
	Kernel driver in use: alx
	Kernel modules: alx
02:00.0 Network controller [0280]: Broadcom Inc. and subsidiaries
BCM43142 802.11b/g/n [14e4:4365] (rev 01)
	Subsystem: Lenovo Device [17aa:0611]


Base System Installation Checklist:
[O] = OK, [E] = Error (please elaborate below), [ ] = didn't try it

Initial boot:           [O]
Detect network card:    [O]
Configure network:      [E because of firmware problem ]
Detect media:           [O]
Load installer modules: [O]
Detect hard drives:     [O]
Partition hard drives:  [O]
Install base system:    [O]
Clock/timezone setup:   [O]
User/password setup:    [O]
Install tasks:          [O]
Install boot loader:    [O]
Overall install:        [O / E]

Comments/Problems:

I did this Debian installation for a friend of mine who (unfortunately)
decided to keep the pre-installed proprietary operating system.

The wireless network card of this notebook is really bad because
there is no free/libre device driver available for the following:

    Broadcom Inc. and subsidiaries BCM43142 802.11b/g/n [14e4:4365]


So I tried to use my following USB wireless network adapter which
has free/libre firmware available:

    ID 0cf3:9271 Qualcomm Atheros Communications AR9271 802.11n


Among other lines I found in the attached file syslog:

    usb 3-1: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
    usb 3-1: firmware: failed to load ath9k_htc/htc_9271-1.4.0.fw (-2)
    [...]
    usb 3-1: ath9k_htc: Firmware htc_9271.fw requested
    usb 3-1: firmware: failed to load htc_9271.fw (-2)
    [...]
    usb 3-1: Direct firmware load for htc_9271.fw failed with error -2
    usb 3-1: no suitable firmware found!
    usb 3-1: ath9k_htc: Failed to get firmware htc_9271.fw
    [...]
    check-missing-firmware: looking at dmesg for the first time
    check-missing-firmware: saving timestamp for a later use: [
41.868765]
    check-missing-firmware: failed to perform usb 3-1 lookup (got: 0
entries, expected: 1)
    check-missing-firmware: => sticking with the usb module
    check-missing-firmware: using module usb instead of usb 3-1
    check-missing-firmware: looking for firmware file
ath9k_htc/htc_9271-1.4.0.fw requested by usb
    check-missing-firmware: failed to perform usb 3-1 lookup (got: 0
entries, expected: 1)


The binary .deb file with the firmware is firmware-ath9k-htc.
The USB wireless network adapter does work out of the box in
the installed system.

On the installation .iso file specified above there is the
firmware-ath9k-htc_1.4.0-110-ge888634+dfsg1-0.1_all.deb
which occupies just 45040 bytes!

Please make work the indicated USB wireless network adapter
in the installer environment, too. Thank you very much in
advance! I'm willing to test a fixed .iso file, until to the
network configuration in the installer!

Kind regards, Magnus

#1131020#10
Date:
2026-03-17 05:29:18 UTC
From:
To:
Hi Magnus,

magnus@autistici.org <magnus@autistici.org> (2026-03-17):

Let's quote the whole thing:

    Feb 20 17:21:21 kernel: [   41.868344] usb 3-1: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested
    Feb 20 17:21:21 kernel: [   41.868388] usb 3-1: firmware: failed to load ath9k_htc/htc_9271-1.4.0.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868402] usb 3-1: firmware: failed to load ath9k_htc/htc_9271-1.4.0.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868416] usb 3-1: firmware: failed to load ath9k_htc/htc_9271-1.4.0.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868419] usb 3-1: Direct firmware load for ath9k_htc/htc_9271-1.4.0.fw failed with error -2
    Feb 20 17:21:21 kernel: [   41.868424] usb 3-1: ath9k_htc: Firmware htc_9271.fw requested
    Feb 20 17:21:21 kernel: [   41.868440] usb 3-1: firmware: failed to load htc_9271.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868452] usb 3-1: firmware: failed to load htc_9271.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868465] usb 3-1: firmware: failed to load htc_9271.fw (-2)
    Feb 20 17:21:21 kernel: [   41.868467] usb 3-1: Direct firmware load for htc_9271.fw failed with error -2
    Feb 20 17:21:21 kernel: [   41.868470] usb 3-1: no suitable firmware found!
    Feb 20 17:21:21 kernel: [   41.868471] usb 3-1: ath9k_htc: Failed to get firmware htc_9271.fw
    Feb 20 17:21:21 kernel: [   41.868624] usb 3-1: ath9k_htc: USB layer deinitialized
    Feb 20 17:21:21 kernel: [   41.868765] usbcore: registered new interface driver ath9k_htc
    Feb 20 17:21:22 check-missing-firmware: looking at dmesg for the first time
    Feb 20 17:21:22 check-missing-firmware: saving timestamp for a later use: [   41.868765]
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file ath9k_htc/htc_9271-1.4.0.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file ath9k_htc/htc_9271-1.4.0.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file ath9k_htc/htc_9271-1.4.0.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file htc_9271.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file htc_9271.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: failed to perform usb 3-1 lookup (got: 0 entries, expected: 1)
    Feb 20 17:21:22 check-missing-firmware: => sticking with the usb module
    Feb 20 17:21:22 check-missing-firmware: using module usb instead of usb 3-1
    Feb 20 17:21:22 check-missing-firmware: looking for firmware file htc_9271.fw requested by usb
    Feb 20 17:21:22 check-missing-firmware: missing firmware files (ath9k_htc/htc_9271-1.4.0.fw htc_9271.fw) for usb
    Feb 20 17:21:22 check-missing-firmware: mainloop iteration #1
    Feb 20 17:21:22 check-missing-firmware: lookup with /cdrom/firmware/Contents-firmware
    Feb 20 17:21:22 check-missing-firmware: installing firmware package /cdrom/firmware/firmware-ath9k-htc_1.4.0-110-ge888634+dfsg1-0.1_all.deb (main)
    Feb 20 17:21:22 check-missing-firmware: installing firmware package /cdrom/firmware/firmware-atheros_20250410-2_all.deb (non-free-firmware)
    Feb 20 17:21:27 check-missing-firmware: modprobe: FATAL: Module usb not found.
    Feb 20 17:21:27 check-missing-firmware: modprobe: FATAL: Module usb not found in directory /lib/modules/6.12.57+deb13-amd64
    Feb 20 17:21:27 check-missing-firmware: removing and loading kernel module usbcore as well (actual module for usb)
    Feb 20 17:21:27 check-missing-firmware: modprobe: FATAL: Module usbcore is in use.

That means the “what's the kernel module behind this specific USB port
actually needs to be reloaded” lookup didn't work, so firmware files
were deployed but the relevant wireless module wasn't reloaded.

The relevant code is:
https://salsa.debian.org/installer-team/hw-detect/-/blob/master/check-missing-firmware.sh?ref_type=heads#L24-48

If you could, it would be nice to let us know what that part of /sys
looks like for this specific port. Starting with `ls` or `find` for
/sys/bus/usb/devices/3-1/ (note the trailing slash, lots of symlinks)
should be a good start. `find` features `-L` but given the said maze of
symlinks, that can become unreadable quite quickly…


Cheers,

#1131020#15
Date:
2026-03-17 11:01:56 UTC
From:
To:
May the patches submitted in bug #1033679 help ?