/*
* Device initialization/deinitialization handlers.
-@@ -705,6 +706,7 @@ enum rt2x00_capability_flags {
+@@ -706,6 +707,7 @@ enum rt2x00_capability_flags {
REQUIRE_SW_SEQNO,
REQUIRE_HT_TX_DESC,
REQUIRE_PS_AUTOWAKE,
/*
* Capabilities
-@@ -961,6 +963,11 @@ struct rt2x00_dev {
+@@ -960,6 +962,11 @@ struct rt2x00_dev {
const struct firmware *fw;
/*
.get_entry_state = rt2800pci_get_entry_state,
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
-@@ -1145,6 +1145,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de
+@@ -1157,6 +1157,10 @@ int rt2x00lib_probe_dev(struct rt2x00_de
BIT(NL80211_IFTYPE_MESH_POINT) |
BIT(NL80211_IFTYPE_WDS);
/*
* Initialize work.
*/
-@@ -1261,6 +1265,11 @@ void rt2x00lib_remove_dev(struct rt2x00_
- * Free queue structures.
+@@ -1280,6 +1284,11 @@ void rt2x00lib_remove_dev(struct rt2x00_
*/
- rt2x00queue_free(rt2x00dev);
+ if (rt2x00dev->drv_data)
+ kfree(rt2x00dev->drv_data);
+
+ /*
+ * Free EEPROM image.