linux_dsm_epyc7002/drivers/net/wireless
Emmanuel Grumbach 1bd3cbc1a0 iwlwifi: mvm: send udev event upon firmware error to dump logs
When the firmware asserts, the driver will dump the firmware
state to an internal buffer. This buffer is kept aside until
it is dumped through debugfs. Once an external application
fetched the data, the buffer is freed and a new buffer can
be allocated in case another assert occurs.

A udev event is sent to trigger an external application.

A simple rule like:
DRIVER=="iwlwifi", ACTION=="change", RUN+="/sbin/dump_sram.sh"

can fetch the data from debugfs.

Here is my dump_sram.sh:

phyname=$(basename ${DEVPATH})
date=$(date +%F_%H_%M)
filename=/var/log/iwl-sram-${phyname}-${date}.bin
cat /sys/kernel/debug/ieee80211/${phyname}/iwlwifi/iwlmvm/fw_error_dump > ${filename}

The current SRAM size is 80KB so, currently:
$ ls -lh iwl-sram-phy0-2014-03-16_13_14.bin
-rw-r--r-- 1 emmanuel emmanuel 81K Mar 16 13:15 iwl-sram-phy0-2014-03-16_13_14.bin

and after compression:
$ ls -lh iwl-sram-phy0-2014-03-16_13_14.bin.xz
-rw-r--r-- 1 emmanuel emmanuel 13K Mar 16 13:15 iwl-sram-phy0-2014-03-16_13_14.bin.xz

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
2014-03-18 21:15:06 +02:00
..
ath wil6210: do not reorder groupcast Rx 2014-02-28 14:33:38 -05:00
b43 b43: return true / false instead of numbers in functions which return bool value 2014-02-24 15:21:54 -05:00
b43legacy b43legacy: Fix unload oops if firmware is not available 2014-01-13 14:50:03 -05:00
brcm80211 brcmfmac: reset suspend flag upon sdio suspend failure 2014-02-28 14:33:49 -05:00
cw1200 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
hostap hostap: add Netgear MA401 card 2014-02-24 15:21:54 -05:00
ipw2x00 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-10 10:59:40 -05:00
iwlegacy iwlegacy: properly enable power saving 2014-02-24 15:21:55 -05:00
iwlwifi iwlwifi: mvm: send udev event upon firmware error to dump logs 2014-03-18 21:15:06 +02:00
libertas cfg80211: fix channel configuration in IBSS join 2014-02-04 21:58:16 +01:00
libertas_tf
mwifiex mwifiex: update MCS information as per antenna settings 2014-02-28 14:33:48 -05:00
orinoco orinoco: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:12:36 -05:00
p54 p54: clamp properly instead of just truncating 2014-01-13 14:50:06 -05:00
prism54 wireless: slight optimization of addr compare 2013-12-26 13:31:35 -05:00
rt2x00 wireless/rt2x00: don't use PREPARE_WORK in rt2800usb.c 2014-02-24 15:38:36 -05:00
rtl818x rtl818x: add comments to explain few not obvious HW configs. 2014-02-28 14:08:28 -05:00
rtlwifi rtlwifi: Remove redundant if clause 2014-02-28 14:33:39 -05:00
ti wl1251: spi: add device tree support 2014-02-28 14:08:27 -05:00
zd1211rw zd1211rw: slight optimization of addr compare 2013-12-26 13:31:33 -05:00
adm8211.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2014-01-17 14:43:17 -05:00
adm8211.h
airo_cs.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
airo.c airo: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:11:13 -05:00
airo.h
at76c50x-usb.c Merge branch 'for-john' of git://git.kernel.org/pub/scm/linux/kernel/git/jberg/mac80211-next 2014-01-13 14:40:59 -05:00
at76c50x-usb.h
atmel_cs.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
atmel_pci.c wireless: delete non-required instances of include <linux/init.h> 2014-01-03 15:37:01 -05:00
atmel.c atmel: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:11:13 -05:00
atmel.h drivers/net/wireless: Fix FSF address in file headers 2013-12-11 10:56:20 -05:00
Kconfig
mac80211_hwsim.c mac80211_hwsim: allow creation of single-channel radios with chanctx 2014-02-11 13:10:02 +01:00
mac80211_hwsim.h mac80211_hwsim: allow creation of single-channel radios with chanctx 2014-02-11 13:10:02 +01:00
Makefile
mwl8k.c mwl8k: Adding support to gather survey per channel 2014-02-28 14:33:11 -05:00
ray_cs.c drivers/net/wireless: Fix FSF address in file headers 2013-12-11 10:56:20 -05:00
ray_cs.h
rayctl.h
rndis_wlan.c rndis_wlan: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:12:36 -05:00
wl3501_cs.c wl3501_cs: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:12:36 -05:00
wl3501.h
zd1201.c zd1201: replace function ieee80211_{dsss_chan_to_freq, freq_to_dsss_chan} 2014-02-28 14:12:36 -05:00
zd1201.h