Author: adrian
Date: Sat Mar 26 07:15:35 2011
New Revision: 220022
URL: http://svn.freebsd.org/changeset/base/220022

Log:
  Shuffle around the HAL_RX_FILTER bits to be slightly more sensible.
  
  The phyerr, radar and bssid-match bits aren't real bits, they map
  to enabling bits in other registers. Move those out of the way of
  valid RX filter bits.
  
  Add a few new fields from ath9k - compba, ps-poll, mcast-bcast-all.

Modified:
  head/sys/dev/ath/ath_hal/ah.h

Modified: head/sys/dev/ath/ath_hal/ah.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah.h       Sat Mar 26 06:21:05 2011        
(r220021)
+++ head/sys/dev/ath/ath_hal/ah.h       Sat Mar 26 07:15:35 2011        
(r220022)
@@ -290,6 +290,10 @@ typedef enum {
 
 /* Rx Filter Frame Types */
 typedef enum {
+       /*
+        * These bits correspond to AR_RX_FILTER for all chips.
+        * Not all bits are supported by all chips.
+        */
        HAL_RX_FILTER_UCAST     = 0x00000001,   /* Allow unicast frames */
        HAL_RX_FILTER_MCAST     = 0x00000002,   /* Allow multicast frames */
        HAL_RX_FILTER_BCAST     = 0x00000004,   /* Allow broadcast frames */
@@ -297,10 +301,20 @@ typedef enum {
        HAL_RX_FILTER_BEACON    = 0x00000010,   /* Allow beacon frames */
        HAL_RX_FILTER_PROM      = 0x00000020,   /* Promiscuous mode */
        HAL_RX_FILTER_PROBEREQ  = 0x00000080,   /* Allow probe request frames */
-       HAL_RX_FILTER_PHYERR    = 0x00000100,   /* Allow phy errors */
-       HAL_RX_FILTER_PHYRADAR  = 0x00000200,   /* Allow phy radar errors */
        HAL_RX_FILTER_COMPBAR   = 0x00000400,   /* Allow compressed BAR */
-       HAL_RX_FILTER_BSSID     = 0x00000800,   /* Disable BSSID match */
+       HAL_RX_FILTER_COMP_BA   = 0x00000800,   /* Allow compressed blockack */
+       HAL_RX_FILTER_PSPOLL    = 0x00004000,   /* Allow PS-POLL frames */
+       HAL_RX_FILTER_MCAST_BCAST_ALL   = 0x00008000,
+                                               /* Allow all mcast/bcast frames 
*/
+
+       /*
+        * Magic RX filter flags that aren't targetting hardware bits
+        * but instead the HAL sets individual bits - eg PHYERR will result
+        * in OFDM/CCK timing error frames being received.
+        */
+       HAL_RX_FILTER_PHYERR    = 0x10000000,   /* Allow phy errors */
+       HAL_RX_FILTER_PHYRADAR  = 0x20000000,   /* Allow phy radar errors */
+       HAL_RX_FILTER_BSSID     = 0x40000000,   /* Disable BSSID match */
 } HAL_RX_FILTER;
 
 typedef enum {
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to