diff --git a/drivers/net/wireless/libertas/join.c b/drivers/net/wireless/libertas/join.c
index 0ebf2f8acbf1b20665582825069309250aa8ec40..ccb0df1967fbb7b109377537cd76928863eeaec2 100644
--- a/drivers/net/wireless/libertas/join.c
+++ b/drivers/net/wireless/libertas/join.c
@@ -20,6 +20,10 @@
 /* Supported rates for ad-hoc B mode */
 static u8 adhoc_rates_b[5] = { 0x02, 0x04, 0x0b, 0x16, 0x00 };
 
+/* The firmware needs certain bits masked out of the beacon-derviced capability
+ * field when associating/joining to BSSs.
+ */
+#define CAPINFO_MASK	(~(0xda00))
 
 /**
  *  @brief This function finds common rates between rate1 and card rates.
diff --git a/drivers/net/wireless/libertas/types.h b/drivers/net/wireless/libertas/types.h
index 2df352db1557b6ec89e4d3691a623e284809acc4..a43a5f63c879c81d44a4d87834c8d21671c194df 100644
--- a/drivers/net/wireless/libertas/types.h
+++ b/drivers/net/wireless/libertas/types.h
@@ -7,8 +7,6 @@
 #include <linux/if_ether.h>
 #include <asm/byteorder.h>
 
-#define CAPINFO_MASK	(~(0x00da))
-
 struct ieeetypes_cfparamset {
 	u8 elementid;
 	u8 len;