summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx/conf.h
diff options
context:
space:
mode:
authorIdo Yariv <ido@wizery.com>2011-06-06 14:57:06 +0300
committerLuciano Coelho <coelho@ti.com>2011-06-27 15:10:56 +0300
commit95dac04f881322b510c45e5ae83f0dbee4f823a2 (patch)
tree6b79761eb78627be7ef14c339a708fdf3b26231a /drivers/net/wireless/wl12xx/conf.h
parentbaacb9aed020b890ddf6a57837a169092a25fc9b (diff)
downloadop-kernel-dev-95dac04f881322b510c45e5ae83f0dbee4f823a2.zip
op-kernel-dev-95dac04f881322b510c45e5ae83f0dbee4f823a2.tar.gz
wl12xx: Support routing FW logs to the host
A recently added feature to the firmware enables the driver to retrieve firmware logs via the host bus (SDIO or SPI). There are two modes of operation: 1. On-demand: The FW collects its log in an internal ring buffer. This buffer can later be read, for example, upon recovery. 2. Continuous: The FW pushes the FW logs as special packets in the RX path. Reading the internal ring buffer does not involve the FW. Thus, as long as the HW is not in ELP, it should be possible to read the logs, even if the FW crashes. A sysfs binary file named "fwlog" was added to support this feature, letting a monitor process read the FW messages. The log is transferred from the FW only when available, so the reading process might block. Signed-off-by: Ido Yariv <ido@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless/wl12xx/conf.h')
-rw-r--r--drivers/net/wireless/wl12xx/conf.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/conf.h b/drivers/net/wireless/wl12xx/conf.h
index aa79b43..b5a7b30 100644
--- a/drivers/net/wireless/wl12xx/conf.h
+++ b/drivers/net/wireless/wl12xx/conf.h
@@ -1277,6 +1277,30 @@ struct conf_rx_streaming_settings {
u8 always;
};
+struct conf_fwlog {
+ /* Continuous or on-demand */
+ u8 mode;
+
+ /*
+ * Number of memory blocks dedicated for the FW logger
+ *
+ * Range: 1-3, or 0 to disable the FW logger
+ */
+ u8 mem_blocks;
+
+ /* Minimum log level threshold */
+ u8 severity;
+
+ /* Include/exclude timestamps from the log messages */
+ u8 timestamp;
+
+ /* See enum wl1271_fwlogger_output */
+ u8 output;
+
+ /* Regulates the frequency of log messages */
+ u8 threshold;
+};
+
struct conf_drv_settings {
struct conf_sg_settings sg;
struct conf_rx_settings rx;
@@ -1293,6 +1317,7 @@ struct conf_drv_settings {
struct conf_memory_settings mem_wl128x;
struct conf_fm_coex fm_coex;
struct conf_rx_streaming_settings rx_streaming;
+ struct conf_fwlog fwlog;
u8 hci_io_ds;
};
OpenPOWER on IntegriCloud