wlcore: add quirk to disable ELP
[deliverable/linux.git] / drivers / net / wireless / ti / wlcore / init.c
index c146d8ed305496de117ac8bd8c684a7c86467d55..d8c22351a73ec4f07b217b5b243372f82ec4eb57 100644 (file)
@@ -581,10 +581,17 @@ int wl1271_init_vif_specific(struct wl1271 *wl, struct ieee80211_vif *vif)
                        if (ret < 0)
                                return ret;
                } else if (!wl->sta_count) {
-                       /* Configure for ELP power saving */
-                       ret = wl1271_acx_sleep_auth(wl, WL1271_PSM_ELP);
-                       if (ret < 0)
-                               return ret;
+                       if (wl->quirks & WLCORE_QUIRK_NO_ELP) {
+                               /* Configure for power always on */
+                               ret = wl1271_acx_sleep_auth(wl, WL1271_PSM_CAM);
+                               if (ret < 0)
+                                       return ret;
+                       } else {
+                               /* Configure for ELP power saving */
+                               ret = wl1271_acx_sleep_auth(wl, WL1271_PSM_ELP);
+                               if (ret < 0)
+                                       return ret;
+                       }
                }
        }
 
This page took 0.024525 seconds and 5 git commands to generate.