package: hw-detect
version: 1.154

Hello,
I saw the recent work to the installer surrounding firmware handling and 
thought I would test on my machines to see how this all was working. I used one 
of the daily sid_d-i netinst cds including firmware. I noticed some problems 
around the installer asking for  firmware that was not neded for ath10k. I 
first tried on a laptop that had QCA-6174 hw2.1. I noticed the prompt telling 
me about missing firmware and asking if I wanted to load it from additional 
media, which was puzzling for the firmware image. If I select no, the installer 
continues, however, I thought this  could confuse users, so I dug into it.

Before firmware atheros was loaded, the kernel tried to load versions 6 through 
2 of the firmware files as well as calibration firmware files. After firmware 
atheros was installed, the card was brought up, and this time, only three files 
were missing. The cal and pre-cal files appear to be optional according to the 
driver source, and do not exist in linux-firmware upstream, so I think them 
missing is no problem. Firmware ver 6 doesn't exist yet in the upstream Linux 
repo so maybe this is in the driver for future use? I guess the installer still 
thinks there is missing firmware because of the kernel failing to load these 3 
unnecessary files. After version 5 of the firmware was found, the kernel 
stopped trying to load versions 4 3 2, so there was many fewer missing files on 
the second run of check-missing-firmware.

I have another laptop with hw3.2 of QCA-6174 and on that machine, only pre-cal 
and cal are missing after firmware-atheros is loaded by the installer. I looked 
at hw-detect, and noticed there was a section in check-missing-firmware.sh 
ignoreing intel wifi debugging firmware, but I think trying to ignore all the 
correct files in that location might be a bit tricky, especially if other net 
drivers try to load optional firmware. It also seems possible that the PCI IDs 
searched by the driver could be different for cal and pre-cal for different 
ath10k hardware although I didn't dig into this. I hope the information I 
provided is enough for package maintainers to determine a correct solution. 
Thanks for all the great work on the installer recently to make  firmware 
handling work better.

Below, a bit of text from the installer log, to show the driver is loading, but 
the installer still thinking there is missing firmware.

Feb  5 10:35:26 check-missing-firmware: mainloop iteration #1
Feb  5 10:35:26 check-missing-firmware: lookup with 
/cdrom/firmware/Contents-firmware
Feb  5 10:35:26 check-missing-firmware: installing firmware package 
/cdrom/firmware/firmware-atheros_20221214-5_all.deb (non-free-firmware)
Feb  5 10:35:28 check-missing-firmware: removing and loading kernel module 
ath10k_pci
Feb  5 10:35:28 kernel: [   60.711599] DMAR: DRHD: handling fault status reg 2
Feb  5 10:35:28 kernel: [   60.711605] DMAR: [DMA Write NO_PASID] Request 
device [01:00.0] fault addr 0x7ee00000 [fault reason 0x05] PTE Write access is 
not set
Feb  5 10:35:28 kernel: [   60.711661] ath10k_pci 0000:01:00.0: pci irq msi 
oper_irq_mode 2 irq_mode 0 reset_mode 0
Feb  5 10:35:28 kernel: [   60.977712] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/pre-cal-pci-0000:01:00.0.bin (-2)
Feb  5 10:35:28 kernel: [   60.977724] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/pre-cal-pci-0000:01:00.0.bin (-2)
Feb  5 10:35:28 kernel: [   60.977735] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/cal-pci-0000:01:00.0.bin (-2)
Feb  5 10:35:28 kernel: [   60.977744] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/cal-pci-0000:01:00.0.bin (-2)
Feb  5 10:35:28 kernel: [   60.977755] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/QCA6174/hw2.1/firmware-6.bin (-2)
Feb  5 10:35:28 kernel: [   60.977762] ath10k_pci 0000:01:00.0: firmware: 
failed to load ath10k/QCA6174/hw2.1/firmware-6.bin (-2)
Feb  5 10:35:28 kernel: [   60.977973] ath10k_pci 0000:01:00.0: firmware: 
direct-loading firmware ath10k/QCA6174/hw2.1/firmware-5.bin
Feb  5 10:35:28 kernel: [   60.977980] ath10k_pci 0000:01:00.0: qca6174 hw2.1 
target 0x05010000 chip_id 0x003405ff sub 144d:4125
Feb  5 10:35:28 kernel: [   60.977986] ath10k_pci 0000:01:00.0: kconfig debug 0 
debugfs 0 tracing 0 dfs 0 testmode 0
Feb  5 10:35:28 kernel: [   60.978697] ath10k_pci 0000:01:00.0: firmware ver 
SW_RM.1.1.1-00157-QCARMSWPZ-1 api 5 features ignore-otp,no-4addr-pad crc32 
10bf8e08
Feb  5 10:35:28 kernel: [   61.040011] ath10k_pci 0000:01:00.0: firmware: 
direct-loading firmware ath10k/QCA6174/hw2.1/board-2.bin
Feb  5 10:35:28 kernel: [   61.040387] ath10k_pci 0000:01:00.0: board_file api 
2 bmi_id N/A crc32 ae2e275a
Feb  5 10:35:29 check-missing-firmware: looking at dmesg again, restarting from 
timestamp: [   57.345819]
Feb  5 10:35:29 check-missing-firmware: timestamp found, truncating dmesg 
accordingly
Feb  5 10:35:29 check-missing-firmware: saving timestamp for a later use: [   
61.040387]
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/pre-cal-pci-0000:01:00.0.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/pre-cal-pci-0000:01:00.0.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/cal-pci-0000:01:00.0.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/cal-pci-0000:01:00.0.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/QCA6174/hw2.1/firmware-6.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: looking for firmware file 
ath10k/QCA6174/hw2.1/firmware-6.bin requested by ath10k_pci
Feb  5 10:35:29 check-missing-firmware: missing firmware files 
(ath10k/pre-cal-pci-0000:01:00.0.bin ath10k/pre-cal-pci-0000:01:00.0.bin 
ath10k/cal-pci-0000:01:00.0.bin ath10k/cal-pci-0000:01:00.0.bin 
ath10k/QCA6174/hw2.1/firmware-6.bin ath10k/QCA6174/hw2.1/firmware-6.bin) for 
ath10k_pci
Feb  5 10:35:29 kernel: [   62.211095] ath10k_pci 0000:01:00.0: htt-ver 3.1 
wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1
Feb  5 10:35:30 kernel: [   62.299139] ath: EEPROM regdomain: 0x6a
Feb  5 10:35:30 kernel: [   62.299142] ath: EEPROM indicates we should expect a 
direct regpair map
Feb  5 10:35:30 kernel: [   62.299144] ath: Country alpha2 being used: 00
Feb  5 10:35:30 kernel: [   62.299145] ath: Regpair used: 0x6a
Feb  5 10:35:30 kernel: [   62.300428] ath10k_pci 0000:01:00.0 wlp1s0: renamed 
from wlan0
Feb  5 10:35:30 net/hw-detect.hotplug: Detected hotpluggable network interface 
wlp1s0
Feb  5 10:36:02 check-missing-firmware: mainloop iteration #2

Reply via email to