--- a/drivers/net/wireless/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/iwlwifi/mvm/mac80211.c
@@ -1029,12 +1029,21 @@ static void iwl_mvm_recalc_multicast(str
 }
 
 static u64 iwl_mvm_prepare_multicast(struct ieee80211_hw *hw,
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
 				     struct netdev_hw_addr_list *mc_list)
+#else
+				     int addr_count,
+				     struct dev_addr_list *mc_list)
+#endif
 {
 	struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw);
 	struct iwl_mcast_filter_cmd *cmd;
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
 	struct netdev_hw_addr *addr;
 	int addr_count = netdev_hw_addr_list_count(mc_list);
+#else
+	struct dev_mc_list *addr;
+#endif
 	bool pass_all = false;
 	int len;
 
@@ -1053,11 +1062,15 @@ static u64 iwl_mvm_prepare_multicast(str
 		return (u64)(unsigned long)cmd;
 	}
 
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35))
 	netdev_hw_addr_list_for_each(addr, mc_list) {
+#else
+	for (addr = mc_list; addr; addr = addr->next) {
+#endif
 		IWL_DEBUG_MAC80211(mvm, "mcast addr (%d): %pM\n",
-				   cmd->count, addr->addr);
+				   cmd->count, mc_addr(addr));
 		memcpy(&cmd->addr_list[cmd->count * ETH_ALEN],
-		       addr->addr, ETH_ALEN);
+		       mc_addr(addr), ETH_ALEN);
 		cmd->count++;
 	}
 
