ath9k: Register max WOW patterns
authorSujith Manoharan <c_manoha@qca.qualcomm.com>
Fri, 30 Jan 2015 13:35:33 +0000 (19:05 +0530)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 3 Feb 2015 13:31:10 +0000 (15:31 +0200)
Since the number of patterns that can be configured in
the HW is higher for newer chips, store the chip-specific
value in ath9k_hw_wow.

Signed-off-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/hw.c
drivers/net/wireless/ath/ath9k/hw.h

index 8c2f9e290b35d10920a5191f5d8b02e5f4ca57cb..60aa8d71e753fa936909dcc98ef915c2a2208f60 100644 (file)
@@ -2548,6 +2548,13 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah)
            ah->eep_ops->get_eeprom(ah, EEP_PAPRD))
                        pCap->hw_caps |= ATH9K_HW_CAP_PAPRD;
 
+#ifdef CONFIG_ATH9K_WOW
+       if (AR_SREV_9462_20_OR_LATER(ah) || AR_SREV_9565_11_OR_LATER(ah))
+               ah->wow.max_patterns = MAX_NUM_PATTERN;
+       else
+               ah->wow.max_patterns = MAX_NUM_PATTERN_LEGACY;
+#endif
+
        return 0;
 }
 
index d36210ae880ebc59f1e633e1db8894bb230170dd..e1801c91d53857a1ea2ddc40c2eef0dbb9926cf8 100644 (file)
 
 #define MAX_PATTERN_SIZE               256
 #define MAX_PATTERN_MASK_SIZE          32
-#define MAX_NUM_PATTERN                        8
+#define MAX_NUM_PATTERN                        16
+#define MAX_NUM_PATTERN_LEGACY         8
 #define MAX_NUM_USER_PATTERN           6 /*  deducting the disassociate and
                                              deauthenticate packets */
 
@@ -272,6 +273,7 @@ enum ath9k_hw_caps {
 
 struct ath9k_hw_wow {
        u32 wow_event_mask;
+       u8 max_patterns;
 };
 
 struct ath9k_hw_capabilities {