|
@@ -793,8 +793,18 @@ static inline void SET_IEEE80211_PERM_ADDR(struct ieee80211_hw *hw, u8 *addr)
|
|
|
* parameter to see whether multicast frames should be accepted
|
|
|
* or dropped.
|
|
|
*
|
|
|
- * All unsupported flags in @total_flags must be cleared, i.e. you
|
|
|
- * should clear all bits except those you honoured.
|
|
|
+ * All unsupported flags in @total_flags must be cleared.
|
|
|
+ * Hardware does not support a flag if it is incapable of _passing_
|
|
|
+ * the frame to the stack. Otherwise the driver must ignore
|
|
|
+ * the flag, but not clear it.
|
|
|
+ * You must _only_ clear the flag (announce no support for the
|
|
|
+ * flag to mac80211) if you are not able to pass the packet type
|
|
|
+ * to the stack (so the hardware always filters it).
|
|
|
+ * So for example, you should clear @FIF_CONTROL, if your hardware
|
|
|
+ * always filters control frames. If your hardware always passes
|
|
|
+ * control frames to the kernel and is incapable of filtering them,
|
|
|
+ * you do _not_ clear the @FIF_CONTROL flag.
|
|
|
+ * This rule applies to all other FIF flags as well.
|
|
|
*/
|
|
|
|
|
|
/**
|