wil6210: reduce dmesg pollution after FW crash
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Mon, 17 Mar 2014 13:34:11 +0000 (15:34 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 17 Mar 2014 17:44:17 +0000 (13:44 -0400)
When FW crashes, dmesg get polluted with the "FW not ready"
error message. Print it only once per FW lifecycle

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/wil6210/txrx.c

index 41f88ee49bca009a428500cb654920df03575bed..5cda0ea9925f214a54bcb7a8f1f851c2b0217fb7 100644 (file)
@@ -956,11 +956,15 @@ netdev_tx_t wil_start_xmit(struct sk_buff *skb, struct net_device *ndev)
        struct wil6210_priv *wil = ndev_to_wil(ndev);
        struct ethhdr *eth = (void *)skb->data;
        struct vring *vring;
+       static bool pr_once_fw;
        int rc;
 
        wil_dbg_txrx(wil, "%s()\n", __func__);
        if (!test_bit(wil_status_fwready, &wil->status)) {
-               wil_err(wil, "FW not ready\n");
+               if (!pr_once_fw) {
+                       wil_err(wil, "FW not ready\n");
+                       pr_once_fw = true;
+               }
                goto drop;
        }
        if (!test_bit(wil_status_fwconnected, &wil->status)) {
@@ -971,6 +975,7 @@ netdev_tx_t wil_start_xmit(struct sk_buff *skb, struct net_device *ndev)
                wil_err(wil, "Xmit in monitor mode not supported\n");
                goto drop;
        }
+       pr_once_fw = false;
 
        /* find vring */
        if (is_unicast_ether_addr(eth->h_dest)) {