[PATCH] ath10k: skip quiet mode for WCN3990 to prevent firmware crash
Baochen Qiang
baochen.qiang at oss.qualcomm.com
Fri Apr 10 00:38:24 PDT 2026
On 4/7/2026 6:14 AM, Malte Schababerle wrote:
> On 3/22/2026, Baochen Qiang wrote:
>> Malte, the firmware team needs firmware dump to understand this issue,
>> would you be able to help collect it?
>
> Sure. Attaching the full dmesg from a reproducible test run (kernel
> without the patch, upstream 6.17, postmarketOS on OnePlus 7T / SM8150).
>
> Firmware: WLAN.HL.3.2.0.c2-00006
>
> The crash triggers deterministically on every boot. Key lines:
>
> [25.122098] PDM: service 'wlan_process' crash:
> 'EX:wlan_process:0x1:WLAN RT:0x2076:PC=0xb0008e20'
> [25.283364] ath10k_snoc 18800000.wifi: firmware crashed!
>
> Full crash sequence repeats across subsequent recovery attempts at the
> same PC=0xb0008e20 (see attached dmesg.txt).
>
> Note: I'm running an upstream kernel (6.17) on postmarketOS.
> CONFIG_QCOM_RAMDUMP and WCSS coredump tooling are not available here.
> If the firmware team needs a full Hexagon register dump, please advise
> how to collect it in this environment.
please follow below steps to collect firmware dump:
1. sudo modprobe -r ath10k_pci
2. sudo modprobe ath10k_core coredump_mask=7
3. sudo modprobe ath10k_pci
4. reproduce the crash issue
5. collect dump using a similar way to Intel chip [1]:
You can now get the data from the devcoredump device and dump to a file:
cat /sys/devices/virtual/devcoredump/devcdY/data > iwl.dump
echo 1 > /sys/devices/virtual/devcoredump/devcdY/data
(Y is incremented each time)
The easiest is to define a udev rule to dump the data automatically as soon as
dump is created:
SUBSYSTEM=="devcoredump", ACTION=="add", RUN+="/sbin/iwlfwdump.sh"
You’ll typically have to paste this into a new file called /etc/udev/rules.d/85-
iwl-dump.rules. This location can vary between distributions.
/sbin/iwlfwdump.sh can simply be:
#!/bin/bash
timestamp=$(date +%F_%H-%M-%S)
filename=/var/log/iwl-fw-error_${timestamp}.dump
cat /sys/${DEVPATH}/data > ${filename}
echo 1 > /sys/${DEVPATH}/data
This way, each time a dump is created it will automatically land on your file
system. Remember to make the /sbin/iwlfwdump.sh file executable (i.e. chmod a+x
/sbin/iwlfwdump.sh), so that the udev rule can execute it, otherwise it won’t
work.
[1]
https://wireless.docs.kernel.org/en/latest/en/users/drivers/iwlwifi/debugging.html#how-to-provide-information-to-debug-the-firmware
>
> Tested-by: Malte Schababerle <m.schababerle at gmail.com>
> on OnePlus 7T (SM8150/WCN3990), kernel 6.17, FW WLAN.HL.3.2.0.c2-00006
More information about the ath10k
mailing list