summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2015-03-02 22:54:49 -0500
committerDavid S. Miller <davem@davemloft.net>2015-03-03 17:01:36 -0500
commit93803b3385c653bc6fd391c0de00ef811b3dadc0 (patch)
treee235b7e13f190356597758d2f498ce4e79d6d5a8
parent519983b129477cb8e0bbea334c72ecd4486b2d21 (diff)
wireless: Use eth_<foo>_addr instead of memset
Use the built-in function instead of memset. Miscellanea: Add #include <linux/etherdevice.h> where appropriate Use ETH_ALEN instead of 6 Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/wireless/airo.c4
-rw-r--r--drivers/net/wireless/at76c50x-usb.c6
-rw-r--r--drivers/net/wireless/ath/ath10k/mac.c2
-rw-r--r--drivers/net/wireless/ath/ath5k/base.c2
-rw-r--r--drivers/net/wireless/ath/ath6kl/cfg80211.c2
-rw-r--r--drivers/net/wireless/ath/ath6kl/main.c2
-rw-r--r--drivers/net/wireless/ath/ath9k/htc_drv_main.c2
-rw-r--r--drivers/net/wireless/ath/ath9k/main.c4
-rw-r--r--drivers/net/wireless/atmel.c16
-rw-r--r--drivers/net/wireless/b43/main.c8
-rw-r--r--drivers/net/wireless/b43legacy/main.c8
-rw-r--r--drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c12
-rw-r--r--drivers/net/wireless/brcm80211/brcmfmac/flowring.c2
-rw-r--r--drivers/net/wireless/brcm80211/brcmfmac/p2p.c2
-rw-r--r--drivers/net/wireless/cw1200/sta.c2
-rw-r--r--drivers/net/wireless/cw1200/txrx.c2
-rw-r--r--drivers/net/wireless/hostap/hostap_80211_tx.c4
-rw-r--r--drivers/net/wireless/hostap/hostap_ap.c8
-rw-r--r--drivers/net/wireless/hostap/hostap_info.c2
-rw-r--r--drivers/net/wireless/hostap/hostap_main.c4
-rw-r--r--drivers/net/wireless/hostap/hostap_wlan.h33
-rw-r--r--drivers/net/wireless/ipw2x00/ipw2100.c8
-rw-r--r--drivers/net/wireless/ipw2x00/ipw2200.c6
-rw-r--r--drivers/net/wireless/iwlegacy/common.c2
-rw-r--r--drivers/net/wireless/iwlwifi/mvm/power.c3
-rw-r--r--drivers/net/wireless/libertas/main.c4
-rw-r--r--drivers/net/wireless/libertas_tf/main.c4
-rw-r--r--drivers/net/wireless/mac80211_hwsim.c6
-rw-r--r--drivers/net/wireless/mwifiex/cfg80211.c8
-rw-r--r--drivers/net/wireless/mwifiex/init.c4
-rw-r--r--drivers/net/wireless/mwifiex/sta_event.c2
-rw-r--r--drivers/net/wireless/mwifiex/wmm.c2
-rw-r--r--drivers/net/wireless/mwl8k.c2
-rw-r--r--drivers/net/wireless/orinoco/wext.c2
-rw-r--r--drivers/net/wireless/p54/fwio.c2
-rw-r--r--drivers/net/wireless/p54/main.c8
-rw-r--r--drivers/net/wireless/ray_cs.c2
-rw-r--r--drivers/net/wireless/rndis_wlan.c28
-rw-r--r--drivers/net/wireless/rtlwifi/core.c6
-rw-r--r--drivers/net/wireless/ti/wl1251/main.c4
-rw-r--r--drivers/net/wireless/ti/wlcore/cmd.c4
41 files changed, 118 insertions, 116 deletions
diff --git a/drivers/net/wireless/airo.c b/drivers/net/wireless/airo.c
index e71a2ce7a448..627443283e1d 100644
--- a/drivers/net/wireless/airo.c
+++ b/drivers/net/wireless/airo.c
@@ -2676,7 +2676,7 @@ static void wifi_setup(struct net_device *dev)
2676 dev->addr_len = ETH_ALEN; 2676 dev->addr_len = ETH_ALEN;
2677 dev->tx_queue_len = 100; 2677 dev->tx_queue_len = 100;
2678 2678
2679 memset(dev->broadcast,0xFF, ETH_ALEN); 2679 eth_broadcast_addr(dev->broadcast);
2680 2680
2681 dev->flags = IFF_BROADCAST|IFF_MULTICAST; 2681 dev->flags = IFF_BROADCAST|IFF_MULTICAST;
2682} 2682}
@@ -3273,7 +3273,7 @@ static void airo_handle_link(struct airo_info *ai)
3273 } 3273 }
3274 3274
3275 /* Send event to user space */ 3275 /* Send event to user space */
3276 memset(wrqu.ap_addr.sa_data, '\0', ETH_ALEN); 3276 eth_zero_addr(wrqu.ap_addr.sa_data);
3277 wrqu.ap_addr.sa_family = ARPHRD_ETHER; 3277 wrqu.ap_addr.sa_family = ARPHRD_ETHER;
3278 wireless_send_event(ai->dev, SIOCGIWAP, &wrqu, NULL); 3278 wireless_send_event(ai->dev, SIOCGIWAP, &wrqu, NULL);
3279 } 3279 }
diff --git a/drivers/net/wireless/at76c50x-usb.c b/drivers/net/wireless/at76c50x-usb.c
index da92bfa76b7c..49219c508963 100644
--- a/drivers/net/wireless/at76c50x-usb.c
+++ b/drivers/net/wireless/at76c50x-usb.c
@@ -1166,7 +1166,7 @@ static int at76_start_monitor(struct at76_priv *priv)
1166 int ret; 1166 int ret;
1167 1167
1168 memset(&scan, 0, sizeof(struct at76_req_scan)); 1168 memset(&scan, 0, sizeof(struct at76_req_scan));
1169 memset(scan.bssid, 0xff, ETH_ALEN); 1169 eth_broadcast_addr(scan.bssid);
1170 1170
1171 scan.channel = priv->channel; 1171 scan.channel = priv->channel;
1172 scan.scan_type = SCAN_TYPE_PASSIVE; 1172 scan.scan_type = SCAN_TYPE_PASSIVE;
@@ -1427,7 +1427,7 @@ static int at76_startup_device(struct at76_priv *priv)
1427 at76_wait_completion(priv, CMD_STARTUP); 1427 at76_wait_completion(priv, CMD_STARTUP);
1428 1428
1429 /* remove BSSID from previous run */ 1429 /* remove BSSID from previous run */
1430 memset(priv->bssid, 0, ETH_ALEN); 1430 eth_zero_addr(priv->bssid);
1431 1431
1432 priv->scanning = false; 1432 priv->scanning = false;
1433 1433
@@ -1973,7 +1973,7 @@ static int at76_hw_scan(struct ieee80211_hw *hw,
1973 ieee80211_stop_queues(hw); 1973 ieee80211_stop_queues(hw);
1974 1974
1975 memset(&scan, 0, sizeof(struct at76_req_scan)); 1975 memset(&scan, 0, sizeof(struct at76_req_scan));
1976 memset(scan.bssid, 0xFF, ETH_ALEN); 1976 eth_broadcast_addr(scan.bssid);
1977 1977
1978 if (req->n_ssids) { 1978 if (req->n_ssids) {
1979 scan.scan_type = SCAN_TYPE_ACTIVE; 1979 scan.scan_type = SCAN_TYPE_ACTIVE;
diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c
index d6d2f0f00caa..6c364bb98924 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -1182,7 +1182,7 @@ static void ath10k_control_ibss(struct ath10k_vif *arvif,
1182 if (is_zero_ether_addr(arvif->bssid)) 1182 if (is_zero_ether_addr(arvif->bssid))
1183 return; 1183 return;
1184 1184
1185 memset(arvif->bssid, 0, ETH_ALEN); 1185 eth_zero_addr(arvif->bssid);
1186 1186
1187 return; 1187 return;
1188 } 1188 }
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c
index bc9cb356fa69..57a80e89822d 100644
--- a/drivers/net/wireless/ath/ath5k/base.c
+++ b/drivers/net/wireless/ath/ath5k/base.c
@@ -528,7 +528,7 @@ ath5k_update_bssid_mask_and_opmode(struct ath5k_hw *ah,
528 * together with the BSSID mask when matching addresses. 528 * together with the BSSID mask when matching addresses.
529 */ 529 */
530 iter_data.hw_macaddr = common->macaddr; 530 iter_data.hw_macaddr = common->macaddr;
531 memset(&iter_data.mask, 0xff, ETH_ALEN); 531 eth_broadcast_addr(iter_data.mask);
532 iter_data.found_active = false; 532 iter_data.found_active = false;
533 iter_data.need_set_hw_addr = true; 533 iter_data.need_set_hw_addr = true;
534 iter_data.opmode = NL80211_IFTYPE_UNSPECIFIED; 534 iter_data.opmode = NL80211_IFTYPE_UNSPECIFIED;
diff --git a/drivers/net/wireless/ath/ath6kl/cfg80211.c b/drivers/net/wireless/ath/ath6kl/cfg80211.c
index 85da63a67faf..e2978037d858 100644
--- a/drivers/net/wireless/ath/ath6kl/cfg80211.c
+++ b/drivers/net/wireless/ath/ath6kl/cfg80211.c
@@ -2033,7 +2033,7 @@ static int ath6kl_wow_sta(struct ath6kl *ar, struct ath6kl_vif *vif)
2033 int ret; 2033 int ret;
2034 2034
2035 /* Setup unicast pkt pattern */ 2035 /* Setup unicast pkt pattern */
2036 memset(mac_mask, 0xff, ETH_ALEN); 2036 eth_broadcast_addr(mac_mask);
2037 ret = ath6kl_wmi_add_wow_pattern_cmd(ar->wmi, 2037 ret = ath6kl_wmi_add_wow_pattern_cmd(ar->wmi,
2038 vif->fw_vif_idx, WOW_LIST_ID, 2038 vif->fw_vif_idx, WOW_LIST_ID,
2039 ETH_ALEN, 0, ndev->dev_addr, 2039 ETH_ALEN, 0, ndev->dev_addr,
diff --git a/drivers/net/wireless/ath/ath6kl/main.c b/drivers/net/wireless/ath/ath6kl/main.c
index b42ba46b5030..1af3fed5a72c 100644
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
@@ -105,7 +105,7 @@ static void ath6kl_sta_cleanup(struct ath6kl *ar, u8 i)
105 105
106 memset(&ar->ap_stats.sta[sta->aid - 1], 0, 106 memset(&ar->ap_stats.sta[sta->aid - 1], 0,
107 sizeof(struct wmi_per_sta_stat)); 107 sizeof(struct wmi_per_sta_stat));
108 memset(sta->mac, 0, ETH_ALEN); 108 eth_zero_addr(sta->mac);
109 memset(sta->wpa_ie, 0, ATH6KL_MAX_IE); 109 memset(sta->wpa_ie, 0, ATH6KL_MAX_IE);
110 sta->aid = 0; 110 sta->aid = 0;
111 sta->sta_flags = 0; 111 sta->sta_flags = 0;
diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_main.c b/drivers/net/wireless/ath/ath9k/htc_drv_main.c
index 92d5a6c5a225..564923c0df87 100644
--- a/drivers/net/wireless/ath/ath9k/htc_drv_main.c
+++ b/drivers/net/wireless/ath/ath9k/htc_drv_main.c
@@ -149,7 +149,7 @@ static void ath9k_htc_set_mac_bssid_mask(struct ath9k_htc_priv *priv,
149 * when matching addresses. 149 * when matching addresses.
150 */ 150 */
151 iter_data.hw_macaddr = NULL; 151 iter_data.hw_macaddr = NULL;
152 memset(&iter_data.mask, 0xff, ETH_ALEN); 152 eth_broadcast_addr(iter_data.mask);
153 153
154 if (vif) 154 if (vif)
155 ath9k_htc_bssid_iter(&iter_data, vif->addr, vif); 155 ath9k_htc_bssid_iter(&iter_data, vif->addr, vif);
diff --git a/drivers/net/wireless/ath/ath9k/main.c b/drivers/net/wireless/ath/ath9k/main.c
index 9ede991b8d76..93ed99a72542 100644
--- a/drivers/net/wireless/ath/ath9k/main.c
+++ b/drivers/net/wireless/ath/ath9k/main.c
@@ -994,7 +994,7 @@ void ath9k_calculate_iter_data(struct ath_softc *sc,
994 * BSSID mask when matching addresses. 994 * BSSID mask when matching addresses.
995 */ 995 */
996 memset(iter_data, 0, sizeof(*iter_data)); 996 memset(iter_data, 0, sizeof(*iter_data));
997 memset(&iter_data->mask, 0xff, ETH_ALEN); 997 eth_broadcast_addr(iter_data->mask);
998 iter_data->slottime = ATH9K_SLOT_TIME_9; 998 iter_data->slottime = ATH9K_SLOT_TIME_9;
999 999
1000 list_for_each_entry(avp, &ctx->vifs, list) 1000 list_for_each_entry(avp, &ctx->vifs, list)
@@ -1139,7 +1139,7 @@ void ath9k_calculate_summary_state(struct ath_softc *sc,
1139 ctx->primary_sta = iter_data.primary_sta; 1139 ctx->primary_sta = iter_data.primary_sta;
1140 } else { 1140 } else {
1141 ctx->primary_sta = NULL; 1141 ctx->primary_sta = NULL;
1142 memset(common->curbssid, 0, ETH_ALEN); 1142 eth_zero_addr(common->curbssid);
1143 common->curaid = 0; 1143 common->curaid = 0;
1144 ath9k_hw_write_associd(sc->sc_ah); 1144 ath9k_hw_write_associd(sc->sc_ah);
1145 if (ath9k_hw_mci_is_enabled(sc->sc_ah)) 1145 if (ath9k_hw_mci_is_enabled(sc->sc_ah))
diff --git a/drivers/net/wireless/atmel.c b/drivers/net/wireless/atmel.c
index 55db9f03eb2a..6a1f03c271c1 100644
--- a/drivers/net/wireless/atmel.c
+++ b/drivers/net/wireless/atmel.c
@@ -1004,7 +1004,7 @@ static void frag_rx_path(struct atmel_private *priv,
1004 atmel_copy_to_host(priv->dev, (void *)&netcrc, rx_packet_loc + msdu_size, 4); 1004 atmel_copy_to_host(priv->dev, (void *)&netcrc, rx_packet_loc + msdu_size, 4);
1005 if ((crc ^ 0xffffffff) != netcrc) { 1005 if ((crc ^ 0xffffffff) != netcrc) {
1006 priv->dev->stats.rx_crc_errors++; 1006 priv->dev->stats.rx_crc_errors++;
1007 memset(priv->frag_source, 0xff, ETH_ALEN); 1007 eth_broadcast_addr(priv->frag_source);
1008 } 1008 }
1009 } 1009 }
1010 1010
@@ -1022,7 +1022,7 @@ static void frag_rx_path(struct atmel_private *priv,
1022 atmel_copy_to_host(priv->dev, (void *)&netcrc, rx_packet_loc + msdu_size, 4); 1022 atmel_copy_to_host(priv->dev, (void *)&netcrc, rx_packet_loc + msdu_size, 4);
1023 if ((crc ^ 0xffffffff) != netcrc) { 1023 if ((crc ^ 0xffffffff) != netcrc) {
1024 priv->dev->stats.rx_crc_errors++; 1024 priv->dev->stats.rx_crc_errors++;
1025 memset(priv->frag_source, 0xff, ETH_ALEN); 1025 eth_broadcast_addr(priv->frag_source);
1026 more_frags = 1; /* don't send broken assembly */ 1026 more_frags = 1; /* don't send broken assembly */
1027 } 1027 }
1028 } 1028 }
@@ -1031,7 +1031,7 @@ static void frag_rx_path(struct atmel_private *priv,
1031 priv->frag_no++; 1031 priv->frag_no++;
1032 1032
1033 if (!more_frags) { /* last one */ 1033 if (!more_frags) { /* last one */
1034 memset(priv->frag_source, 0xff, ETH_ALEN); 1034 eth_broadcast_addr(priv->frag_source);
1035 if (!(skb = dev_alloc_skb(priv->frag_len + 14))) { 1035 if (!(skb = dev_alloc_skb(priv->frag_len + 14))) {
1036 priv->dev->stats.rx_dropped++; 1036 priv->dev->stats.rx_dropped++;
1037 } else { 1037 } else {
@@ -1127,7 +1127,7 @@ static void rx_done_irq(struct atmel_private *priv)
1127 atmel_copy_to_host(priv->dev, (unsigned char *)&priv->rx_buf, rx_packet_loc + 24, msdu_size); 1127 atmel_copy_to_host(priv->dev, (unsigned char *)&priv->rx_buf, rx_packet_loc + 24, msdu_size);
1128 1128
1129 /* we use the same buffer for frag reassembly and control packets */ 1129 /* we use the same buffer for frag reassembly and control packets */
1130 memset(priv->frag_source, 0xff, ETH_ALEN); 1130 eth_broadcast_addr(priv->frag_source);
1131 1131
1132 if (priv->do_rx_crc) { 1132 if (priv->do_rx_crc) {
1133 /* last 4 octets is crc */ 1133 /* last 4 octets is crc */
@@ -1379,7 +1379,7 @@ static int atmel_close(struct net_device *dev)
1379 wrqu.data.length = 0; 1379 wrqu.data.length = 0;
1380 wrqu.data.flags = 0; 1380 wrqu.data.flags = 0;
1381 wrqu.ap_addr.sa_family = ARPHRD_ETHER; 1381 wrqu.ap_addr.sa_family = ARPHRD_ETHER;
1382 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 1382 eth_zero_addr(wrqu.ap_addr.sa_data);
1383 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL); 1383 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL);
1384 } 1384 }
1385 1385
@@ -1555,7 +1555,7 @@ struct net_device *init_atmel_card(unsigned short irq, unsigned long port,
1555 priv->last_qual = jiffies; 1555 priv->last_qual = jiffies;
1556 priv->last_beacon_timestamp = 0; 1556 priv->last_beacon_timestamp = 0;
1557 memset(priv->frag_source, 0xff, sizeof(priv->frag_source)); 1557 memset(priv->frag_source, 0xff, sizeof(priv->frag_source));
1558 memset(priv->BSSID, 0, ETH_ALEN); 1558 eth_zero_addr(priv->BSSID);
1559 priv->CurrentBSSID[0] = 0xFF; /* Initialize to something invalid.... */ 1559 priv->CurrentBSSID[0] = 0xFF; /* Initialize to something invalid.... */
1560 priv->station_was_associated = 0; 1560 priv->station_was_associated = 0;
1561 1561
@@ -2760,7 +2760,7 @@ static void atmel_scan(struct atmel_private *priv, int specific_ssid)
2760 u8 SSID_size; 2760 u8 SSID_size;
2761 } cmd; 2761 } cmd;
2762 2762
2763 memset(cmd.BSSID, 0xff, ETH_ALEN); 2763 eth_broadcast_addr(cmd.BSSID);
2764 2764
2765 if (priv->fast_scan) { 2765 if (priv->fast_scan) {
2766 cmd.SSID_size = priv->SSID_size; 2766 cmd.SSID_size = priv->SSID_size;
@@ -4049,7 +4049,7 @@ static int reset_atmel_card(struct net_device *dev)
4049 wrqu.data.length = 0; 4049 wrqu.data.length = 0;
4050 wrqu.data.flags = 0; 4050 wrqu.data.flags = 0;
4051 wrqu.ap_addr.sa_family = ARPHRD_ETHER; 4051 wrqu.ap_addr.sa_family = ARPHRD_ETHER;
4052 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 4052 eth_zero_addr(wrqu.ap_addr.sa_data);
4053 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL); 4053 wireless_send_event(priv->dev, SIOCGIWAP, &wrqu, NULL);
4054 } 4054 }
4055 4055
diff --git a/drivers/net/wireless/b43/main.c b/drivers/net/wireless/b43/main.c
index ccbdb05b28cd..31c7e4d41a9a 100644
--- a/drivers/net/wireless/b43/main.c
+++ b/drivers/net/wireless/b43/main.c
@@ -4132,7 +4132,7 @@ static void b43_op_bss_info_changed(struct ieee80211_hw *hw,
4132 if (conf->bssid) 4132 if (conf->bssid)
4133 memcpy(wl->bssid, conf->bssid, ETH_ALEN); 4133 memcpy(wl->bssid, conf->bssid, ETH_ALEN);
4134 else 4134 else
4135 memset(wl->bssid, 0, ETH_ALEN); 4135 eth_zero_addr(wl->bssid);
4136 } 4136 }
4137 4137
4138 if (b43_status(dev) >= B43_STAT_INITIALIZED) { 4138 if (b43_status(dev) >= B43_STAT_INITIALIZED) {
@@ -5051,7 +5051,7 @@ static void b43_op_remove_interface(struct ieee80211_hw *hw,
5051 wl->operating = false; 5051 wl->operating = false;
5052 5052
5053 b43_adjust_opmode(dev); 5053 b43_adjust_opmode(dev);
5054 memset(wl->mac_addr, 0, ETH_ALEN); 5054 eth_zero_addr(wl->mac_addr);
5055 b43_upload_card_macaddress(dev); 5055 b43_upload_card_macaddress(dev);
5056 5056
5057 mutex_unlock(&wl->mutex); 5057 mutex_unlock(&wl->mutex);
@@ -5067,8 +5067,8 @@ static int b43_op_start(struct ieee80211_hw *hw)
5067 /* Kill all old instance specific information to make sure 5067 /* Kill all old instance specific information to make sure
5068 * the card won't use it in the short timeframe between start 5068 * the card won't use it in the short timeframe between start
5069 * and mac80211 reconfiguring it. */ 5069 * and mac80211 reconfiguring it. */
5070 memset(wl->bssid, 0, ETH_ALEN); 5070 eth_zero_addr(wl->bssid);
5071 memset(wl->mac_addr, 0, ETH_ALEN); 5071 eth_zero_addr(wl->mac_addr);
5072 wl->filter_flags = 0; 5072 wl->filter_flags = 0;
5073 wl->radiotap_enabled = false; 5073 wl->radiotap_enabled = false;
5074 b43_qos_clear(wl); 5074 b43_qos_clear(wl);
diff --git a/drivers/net/wireless/b43legacy/main.c b/drivers/net/wireless/b43legacy/main.c
index 4e58c0069830..c77b7f59505c 100644
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
@@ -2866,7 +2866,7 @@ static void b43legacy_op_bss_info_changed(struct ieee80211_hw *hw,
2866 if (conf->bssid) 2866 if (conf->bssid)
2867 memcpy(wl->bssid, conf->bssid, ETH_ALEN); 2867 memcpy(wl->bssid, conf->bssid, ETH_ALEN);
2868 else 2868 else
2869 memset(wl->bssid, 0, ETH_ALEN); 2869 eth_zero_addr(wl->bssid);
2870 } 2870 }
2871 2871
2872 if (b43legacy_status(dev) >= B43legacy_STAT_INITIALIZED) { 2872 if (b43legacy_status(dev) >= B43legacy_STAT_INITIALIZED) {
@@ -3470,7 +3470,7 @@ static void b43legacy_op_remove_interface(struct ieee80211_hw *hw,
3470 3470
3471 spin_lock_irqsave(&wl->irq_lock, flags); 3471 spin_lock_irqsave(&wl->irq_lock, flags);
3472 b43legacy_adjust_opmode(dev); 3472 b43legacy_adjust_opmode(dev);
3473 memset(wl->mac_addr, 0, ETH_ALEN); 3473 eth_zero_addr(wl->mac_addr);
3474 b43legacy_upload_card_macaddress(dev); 3474 b43legacy_upload_card_macaddress(dev);
3475 spin_unlock_irqrestore(&wl->irq_lock, flags); 3475 spin_unlock_irqrestore(&wl->irq_lock, flags);
3476 3476
@@ -3487,8 +3487,8 @@ static int b43legacy_op_start(struct ieee80211_hw *hw)
3487 /* Kill all old instance specific information to make sure 3487 /* Kill all old instance specific information to make sure
3488 * the card won't use it in the short timeframe between start 3488 * the card won't use it in the short timeframe between start
3489 * and mac80211 reconfiguring it. */ 3489 * and mac80211 reconfiguring it. */
3490 memset(wl->bssid, 0, ETH_ALEN); 3490 eth_zero_addr(wl->bssid);
3491 memset(wl->mac_addr, 0, ETH_ALEN); 3491 eth_zero_addr(wl->mac_addr);
3492 wl->filter_flags = 0; 3492 wl->filter_flags = 0;
3493 wl->beacon0_uploaded = false; 3493 wl->beacon0_uploaded = false;
3494 wl->beacon1_uploaded = false; 3494 wl->beacon1_uploaded = false;
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c
index b59b8c6c42ab..06727a61b438 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/cfg80211.c
@@ -700,7 +700,7 @@ s32 brcmf_notify_escan_complete(struct brcmf_cfg80211_info *cfg,
700 /* Do a scan abort to stop the driver's scan engine */ 700 /* Do a scan abort to stop the driver's scan engine */
701 brcmf_dbg(SCAN, "ABORT scan in firmware\n"); 701 brcmf_dbg(SCAN, "ABORT scan in firmware\n");
702 memset(&params_le, 0, sizeof(params_le)); 702 memset(&params_le, 0, sizeof(params_le));
703 memset(params_le.bssid, 0xFF, ETH_ALEN); 703 eth_broadcast_addr(params_le.bssid);
704 params_le.bss_type = DOT11_BSSTYPE_ANY; 704 params_le.bss_type = DOT11_BSSTYPE_ANY;
705 params_le.scan_type = 0; 705 params_le.scan_type = 0;
706 params_le.channel_num = cpu_to_le32(1); 706 params_le.channel_num = cpu_to_le32(1);
@@ -866,7 +866,7 @@ static void brcmf_escan_prep(struct brcmf_cfg80211_info *cfg,
866 char *ptr; 866 char *ptr;
867 struct brcmf_ssid_le ssid_le; 867 struct brcmf_ssid_le ssid_le;
868 868
869 memset(params_le->bssid, 0xFF, ETH_ALEN); 869 eth_broadcast_addr(params_le->bssid);
870 params_le->bss_type = DOT11_BSSTYPE_ANY; 870 params_le->bss_type = DOT11_BSSTYPE_ANY;
871 params_le->scan_type = 0; 871 params_le->scan_type = 0;
872 params_le->channel_num = 0; 872 params_le->channel_num = 0;
@@ -1375,8 +1375,8 @@ brcmf_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *ndev,
1375 BRCMF_ASSOC_PARAMS_FIXED_SIZE; 1375 BRCMF_ASSOC_PARAMS_FIXED_SIZE;
1376 memcpy(profile->bssid, params->bssid, ETH_ALEN); 1376 memcpy(profile->bssid, params->bssid, ETH_ALEN);
1377 } else { 1377 } else {
1378 memset(join_params.params_le.bssid, 0xFF, ETH_ALEN); 1378 eth_broadcast_addr(join_params.params_le.bssid);
1379 memset(profile->bssid, 0, ETH_ALEN); 1379 eth_zero_addr(profile->bssid);
1380 } 1380 }
1381 1381
1382 /* Channel */ 1382 /* Channel */
@@ -1850,7 +1850,7 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
1850 if (sme->bssid) 1850 if (sme->bssid)
1851 memcpy(&ext_join_params->assoc_le.bssid, sme->bssid, ETH_ALEN); 1851 memcpy(&ext_join_params->assoc_le.bssid, sme->bssid, ETH_ALEN);
1852 else 1852 else
1853 memset(&ext_join_params->assoc_le.bssid, 0xFF, ETH_ALEN); 1853 eth_broadcast_addr(ext_join_params->assoc_le.bssid);
1854 1854
1855 if (cfg->channel) { 1855 if (cfg->channel) {
1856 ext_join_params->assoc_le.chanspec_num = cpu_to_le32(1); 1856 ext_join_params->assoc_le.chanspec_num = cpu_to_le32(1);
@@ -1895,7 +1895,7 @@ brcmf_cfg80211_connect(struct wiphy *wiphy, struct net_device *ndev,
1895 if (sme->bssid) 1895 if (sme->bssid)
1896 memcpy(join_params.params_le.bssid, sme->bssid, ETH_ALEN); 1896 memcpy(join_params.params_le.bssid, sme->bssid, ETH_ALEN);
1897 else 1897 else
1898 memset(join_params.params_le.bssid, 0xFF, ETH_ALEN); 1898 eth_broadcast_addr(join_params.params_le.bssid);
1899 1899
1900 if (cfg->channel) { 1900 if (cfg->channel) {
1901 join_params.params_le.chanspec_list[0] = cpu_to_le16(chanspec); 1901 join_params.params_le.chanspec_list[0] = cpu_to_le16(chanspec);
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/flowring.c b/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
index 910fbb561469..eb1325371d3a 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/flowring.c
@@ -236,7 +236,7 @@ void brcmf_flowring_delete(struct brcmf_flowring *flow, u8 flowid)
236 brcmf_flowring_block(flow, flowid, false); 236 brcmf_flowring_block(flow, flowid, false);
237 hash_idx = ring->hash_id; 237 hash_idx = ring->hash_id;
238 flow->hash[hash_idx].ifidx = BRCMF_FLOWRING_INVALID_IFIDX; 238 flow->hash[hash_idx].ifidx = BRCMF_FLOWRING_INVALID_IFIDX;
239 memset(flow->hash[hash_idx].mac, 0, ETH_ALEN); 239 eth_zero_addr(flow->hash[hash_idx].mac);
240 flow->rings[flowid] = NULL; 240 flow->rings[flowid] = NULL;
241 241
242 skb = skb_dequeue(&ring->skblist); 242 skb = skb_dequeue(&ring->skblist);
diff --git a/drivers/net/wireless/brcm80211/brcmfmac/p2p.c b/drivers/net/wireless/brcm80211/brcmfmac/p2p.c
index effb48ebd864..98d82ec52de1 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/p2p.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/p2p.c
@@ -697,7 +697,7 @@ static s32 brcmf_p2p_escan(struct brcmf_p2p_info *p2p, u32 num_chans,
697 else 697 else
698 sparams->scan_type = 1; 698 sparams->scan_type = 1;
699 699
700 memset(&sparams->bssid, 0xFF, ETH_ALEN); 700 eth_broadcast_addr(sparams->bssid);
701 if (ssid.SSID_len) 701 if (ssid.SSID_len)
702 memcpy(sparams->ssid_le.SSID, ssid.SSID, ssid.SSID_len); 702 memcpy(sparams->ssid_le.SSID, ssid.SSID, ssid.SSID_len);
703 sparams->ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len); 703 sparams->ssid_le.SSID_len = cpu_to_le32(ssid.SSID_len);
diff --git a/drivers/net/wireless/cw1200/sta.c b/drivers/net/wireless/cw1200/sta.c
index 4a47c7f8a246..89bc18cd6700 100644
--- a/drivers/net/wireless/cw1200/sta.c
+++ b/drivers/net/wireless/cw1200/sta.c
@@ -293,7 +293,7 @@ void cw1200_remove_interface(struct ieee80211_hw *dev,
293 } 293 }
294 priv->vif = NULL; 294 priv->vif = NULL;
295 priv->mode = NL80211_IFTYPE_MONITOR; 295 priv->mode = NL80211_IFTYPE_MONITOR;
296 memset(priv->mac_addr, 0, ETH_ALEN); 296 eth_zero_addr(priv->mac_addr);
297 memset(&priv->p2p_ps_modeinfo, 0, sizeof(priv->p2p_ps_modeinfo)); 297 memset(&priv->p2p_ps_modeinfo, 0, sizeof(priv->p2p_ps_modeinfo));
298 cw1200_free_keys(priv); 298 cw1200_free_keys(priv);
299 cw1200_setup_mac(priv); 299 cw1200_setup_mac(priv);
diff --git a/drivers/net/wireless/cw1200/txrx.c b/drivers/net/wireless/cw1200/txrx.c
index 0bd541175ecd..d28bd49cb5fd 100644
--- a/drivers/net/wireless/cw1200/txrx.c
+++ b/drivers/net/wireless/cw1200/txrx.c
@@ -1429,7 +1429,7 @@ void cw1200_link_id_gc_work(struct work_struct *work)
1429 priv->link_id_map &= ~mask; 1429 priv->link_id_map &= ~mask;
1430 priv->sta_asleep_mask &= ~mask; 1430 priv->sta_asleep_mask &= ~mask;
1431 priv->pspoll_mask &= ~mask; 1431 priv->pspoll_mask &= ~mask;
1432 memset(map_link.mac_addr, 0, ETH_ALEN); 1432 eth_zero_addr(map_link.mac_addr);
1433 spin_unlock_bh(&priv->ps_state_lock); 1433 spin_unlock_bh(&priv->ps_state_lock);
1434 reset.link_id = i + 1; 1434 reset.link_id = i + 1;
1435 wsm_reset(priv, &reset); 1435 wsm_reset(priv, &reset);
diff --git a/drivers/net/wireless/hostap/hostap_80211_tx.c b/drivers/net/wireless/hostap/hostap_80211_tx.c
index 8bde77689469..055e11d353ca 100644
--- a/drivers/net/wireless/hostap/hostap_80211_tx.c
+++ b/drivers/net/wireless/hostap/hostap_80211_tx.c
@@ -174,8 +174,8 @@ netdev_tx_t hostap_data_start_xmit(struct sk_buff *skb,
174 /* send broadcast and multicast frames to broadcast RA, if 174 /* send broadcast and multicast frames to broadcast RA, if
175 * configured; otherwise, use unicast RA of the WDS link */ 175 * configured; otherwise, use unicast RA of the WDS link */
176 if ((local->wds_type & HOSTAP_WDS_BROADCAST_RA) && 176 if ((local->wds_type & HOSTAP_WDS_BROADCAST_RA) &&
177 skb->data[0] & 0x01) 177 is_multicast_ether_addr(skb->data))
178 memset(&hdr.addr1, 0xff, ETH_ALEN); 178 eth_broadcast_addr(hdr.addr1);
179 else if (iface->type == HOSTAP_INTERFACE_WDS) 179 else if (iface->type == HOSTAP_INTERFACE_WDS)
180 memcpy(&hdr.addr1, iface->u.wds.remote_addr, 180 memcpy(&hdr.addr1, iface->u.wds.remote_addr,
181 ETH_ALEN); 181 ETH_ALEN);
diff --git a/drivers/net/wireless/hostap/hostap_ap.c b/drivers/net/wireless/hostap/hostap_ap.c
index fd8d83dd4f62..c995ace153ee 100644
--- a/drivers/net/wireless/hostap/hostap_ap.c
+++ b/drivers/net/wireless/hostap/hostap_ap.c
@@ -309,7 +309,7 @@ void hostap_deauth_all_stas(struct net_device *dev, struct ap_data *ap,
309 int i; 309 int i;
310 310
311 PDEBUG(DEBUG_AP, "%s: Deauthenticate all stations\n", dev->name); 311 PDEBUG(DEBUG_AP, "%s: Deauthenticate all stations\n", dev->name);
312 memset(addr, 0xff, ETH_ALEN); 312 eth_broadcast_addr(addr);
313 313
314 resp = cpu_to_le16(WLAN_REASON_PREV_AUTH_NOT_VALID); 314 resp = cpu_to_le16(WLAN_REASON_PREV_AUTH_NOT_VALID);
315 315
@@ -1015,8 +1015,8 @@ static void prism2_send_mgmt(struct net_device *dev,
1015 memcpy(hdr->addr3, dev->dev_addr, ETH_ALEN); /* SA */ 1015 memcpy(hdr->addr3, dev->dev_addr, ETH_ALEN); /* SA */
1016 } else if (ieee80211_is_ctl(hdr->frame_control)) { 1016 } else if (ieee80211_is_ctl(hdr->frame_control)) {
1017 /* control:ACK does not have addr2 or addr3 */ 1017 /* control:ACK does not have addr2 or addr3 */
1018 memset(hdr->addr2, 0, ETH_ALEN); 1018 eth_zero_addr(hdr->addr2);
1019 memset(hdr->addr3, 0, ETH_ALEN); 1019 eth_zero_addr(hdr->addr3);
1020 } else { 1020 } else {
1021 memcpy(hdr->addr2, dev->dev_addr, ETH_ALEN); /* SA */ 1021 memcpy(hdr->addr2, dev->dev_addr, ETH_ALEN); /* SA */
1022 memcpy(hdr->addr3, dev->dev_addr, ETH_ALEN); /* BSSID */ 1022 memcpy(hdr->addr3, dev->dev_addr, ETH_ALEN); /* BSSID */
@@ -1601,7 +1601,7 @@ static void handle_assoc(local_info_t *local, struct sk_buff *skb,
1601 memcpy(prev_ap, pos, ETH_ALEN); 1601 memcpy(prev_ap, pos, ETH_ALEN);
1602 pos++; pos++; pos++; left -= 6; 1602 pos++; pos++; pos++; left -= 6;
1603 } else 1603 } else
1604 memset(prev_ap, 0, ETH_ALEN); 1604 eth_zero_addr(prev_ap);
1605 1605
1606 if (left >= 2) { 1606 if (left >= 2) {
1607 unsigned int ileft; 1607 unsigned int ileft;
diff --git a/drivers/net/wireless/hostap/hostap_info.c b/drivers/net/wireless/hostap/hostap_info.c
index de7c4ffec309..7635ac4f6679 100644
--- a/drivers/net/wireless/hostap/hostap_info.c
+++ b/drivers/net/wireless/hostap/hostap_info.c
@@ -442,7 +442,7 @@ static void handle_info_queue_linkstatus(local_info_t *local)
442 } else { 442 } else {
443 netif_carrier_off(local->dev); 443 netif_carrier_off(local->dev);
444 netif_carrier_off(local->ddev); 444 netif_carrier_off(local->ddev);
445 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 445 eth_zero_addr(wrqu.ap_addr.sa_data);
446 } 446 }
447 wrqu.ap_addr.sa_family = ARPHRD_ETHER; 447 wrqu.ap_addr.sa_family = ARPHRD_ETHER;
448 448
diff --git a/drivers/net/wireless/hostap/hostap_main.c b/drivers/net/wireless/hostap/hostap_main.c
index 8f9f3e9fbfce..01de1a3bf94e 100644
--- a/drivers/net/wireless/hostap/hostap_main.c
+++ b/drivers/net/wireless/hostap/hostap_main.c
@@ -224,7 +224,7 @@ int prism2_wds_del(local_info_t *local, u8 *remote_addr,
224 224
225 if (selected) { 225 if (selected) {
226 if (do_not_remove) 226 if (do_not_remove)
227 memset(selected->u.wds.remote_addr, 0, ETH_ALEN); 227 eth_zero_addr(selected->u.wds.remote_addr);
228 else { 228 else {
229 hostap_remove_interface(selected->dev, rtnl_locked, 0); 229 hostap_remove_interface(selected->dev, rtnl_locked, 0);
230 local->wds_connections--; 230 local->wds_connections--;
@@ -1087,7 +1087,7 @@ int prism2_sta_deauth(local_info_t *local, u16 reason)
1087 1087
1088 ret = prism2_sta_send_mgmt(local, local->bssid, IEEE80211_STYPE_DEAUTH, 1088 ret = prism2_sta_send_mgmt(local, local->bssid, IEEE80211_STYPE_DEAUTH,
1089 (u8 *) &val, 2); 1089 (u8 *) &val, 2);
1090 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 1090 eth_zero_addr(wrqu.ap_addr.sa_data);
1091 wireless_send_event(local->dev, SIOCGIWAP, &wrqu, NULL); 1091 wireless_send_event(local->dev, SIOCGIWAP, &wrqu, NULL);
1092 return ret; 1092 return ret;
1093} 1093}
diff --git a/drivers/net/wireless/hostap/hostap_wlan.h b/drivers/net/wireless/hostap/hostap_wlan.h
index 57904015380f..ca25283e1c92 100644
--- a/drivers/net/wireless/hostap/hostap_wlan.h
+++ b/drivers/net/wireless/hostap/hostap_wlan.h
@@ -4,6 +4,7 @@
4#include <linux/interrupt.h> 4#include <linux/interrupt.h>
5#include <linux/wireless.h> 5#include <linux/wireless.h>
6#include <linux/netdevice.h> 6#include <linux/netdevice.h>
7#include <linux/etherdevice.h>
7#include <linux/mutex.h> 8#include <linux/mutex.h>
8#include <net/iw_handler.h> 9#include <net/iw_handler.h>
9#include <net/ieee80211_radiotap.h> 10#include <net/ieee80211_radiotap.h>
@@ -85,16 +86,16 @@ struct hfa384x_rx_frame {
85 /* 802.11 */ 86 /* 802.11 */
86 __le16 frame_control; 87 __le16 frame_control;
87 __le16 duration_id; 88 __le16 duration_id;
88 u8 addr1[6]; 89 u8 addr1[ETH_ALEN];
89 u8 addr2[6]; 90 u8 addr2[ETH_ALEN];
90 u8 addr3[6]; 91 u8 addr3[ETH_ALEN];
91 __le16 seq_ctrl; 92 __le16 seq_ctrl;
92 u8 addr4[6]; 93 u8 addr4[ETH_ALEN];
93 __le16 data_len; 94 __le16 data_len;
94 95
95 /* 802.3 */ 96 /* 802.3 */
96 u8 dst_addr[6]; 97 u8 dst_addr[ETH_ALEN];
97 u8 src_addr[6]; 98 u8 src_addr[ETH_ALEN];
98 __be16 len; 99 __be16 len;
99 100
100 /* followed by frame data; max 2304 bytes */ 101 /* followed by frame data; max 2304 bytes */
@@ -114,16 +115,16 @@ struct hfa384x_tx_frame {
114 /* 802.11 */ 115 /* 802.11 */
115 __le16 frame_control; /* parts not used */ 116 __le16 frame_control; /* parts not used */
116 __le16 duration_id; 117 __le16 duration_id;
117 u8 addr1[6]; 118 u8 addr1[ETH_ALEN];
118 u8 addr2[6]; /* filled by firmware */ 119 u8 addr2[ETH_ALEN]; /* filled by firmware */
119 u8 addr3[6]; 120 u8 addr3[ETH_ALEN];
120 __le16 seq_ctrl; /* filled by firmware */ 121 __le16 seq_ctrl; /* filled by firmware */
121 u8 addr4[6]; 122 u8 addr4[ETH_ALEN];
122 __le16 data_len; 123 __le16 data_len;
123 124
124 /* 802.3 */ 125 /* 802.3 */
125 u8 dst_addr[6]; 126 u8 dst_addr[ETH_ALEN];
126 u8 src_addr[6]; 127 u8 src_addr[ETH_ALEN];
127 __be16 len; 128 __be16 len;
128 129
129 /* followed by frame data; max 2304 bytes */ 130 /* followed by frame data; max 2304 bytes */
@@ -156,7 +157,7 @@ struct hfa384x_hostscan_request {
156} __packed; 157} __packed;
157 158
158struct hfa384x_join_request { 159struct hfa384x_join_request {
159 u8 bssid[6]; 160 u8 bssid[ETH_ALEN];
160 __le16 channel; 161 __le16 channel;
161} __packed; 162} __packed;
162 163
@@ -228,7 +229,7 @@ struct hfa384x_scan_result {
228 __le16 chid; 229 __le16 chid;
229 __le16 anl; 230 __le16 anl;
230 __le16 sl; 231 __le16 sl;
231 u8 bssid[6]; 232 u8 bssid[ETH_ALEN];
232 __le16 beacon_interval; 233 __le16 beacon_interval;
233 __le16 capability; 234 __le16 capability;
234 __le16 ssid_len; 235 __le16 ssid_len;
@@ -241,7 +242,7 @@ struct hfa384x_hostscan_result {
241 __le16 chid; 242 __le16 chid;
242 __le16 anl; 243 __le16 anl;
243 __le16 sl; 244 __le16 sl;
244 u8 bssid[6]; 245 u8 bssid[ETH_ALEN];
245 __le16 beacon_interval; 246 __le16 beacon_interval;
246 __le16 capability; 247 __le16 capability;
247 __le16 ssid_len; 248 __le16 ssid_len;
@@ -824,7 +825,7 @@ struct local_info {
824#define PRISM2_INFO_PENDING_SCANRESULTS 1 825#define PRISM2_INFO_PENDING_SCANRESULTS 1
825 int prev_link_status; /* previous received LinkStatus info */ 826 int prev_link_status; /* previous received LinkStatus info */
826 int prev_linkstatus_connected; 827 int prev_linkstatus_connected;
827 u8 preferred_ap[6]; /* use this AP if possible */ 828 u8 preferred_ap[ETH_ALEN]; /* use this AP if possible */
828 829
829#ifdef PRISM2_CALLBACK 830#ifdef PRISM2_CALLBACK
830 void *callback_data; /* Can be used in callbacks; e.g., allocate 831 void *callback_data; /* Can be used in callbacks; e.g., allocate
diff --git a/drivers/net/wireless/ipw2x00/ipw2100.c b/drivers/net/wireless/ipw2x00/ipw2100.c
index 6fabea0309dd..08eb229e7816 100644
--- a/drivers/net/wireless/ipw2x00/ipw2100.c
+++ b/drivers/net/wireless/ipw2x00/ipw2100.c
@@ -2147,8 +2147,8 @@ static void isr_indicate_association_lost(struct ipw2100_priv *priv, u32 status)
2147 return; 2147 return;
2148 } 2148 }
2149 2149
2150 memset(priv->bssid, 0, ETH_ALEN); 2150 eth_zero_addr(priv->bssid);
2151 memset(priv->ieee->bssid, 0, ETH_ALEN); 2151 eth_zero_addr(priv->ieee->bssid);
2152 2152
2153 netif_carrier_off(priv->net_dev); 2153 netif_carrier_off(priv->net_dev);
2154 netif_stop_queue(priv->net_dev); 2154 netif_stop_queue(priv->net_dev);
@@ -6956,7 +6956,7 @@ static int ipw2100_wx_get_wap(struct net_device *dev,
6956 wrqu->ap_addr.sa_family = ARPHRD_ETHER; 6956 wrqu->ap_addr.sa_family = ARPHRD_ETHER;
6957 memcpy(wrqu->ap_addr.sa_data, priv->bssid, ETH_ALEN); 6957 memcpy(wrqu->ap_addr.sa_data, priv->bssid, ETH_ALEN);
6958 } else 6958 } else
6959 memset(wrqu->ap_addr.sa_data, 0, ETH_ALEN); 6959 eth_zero_addr(wrqu->ap_addr.sa_data);
6960 6960
6961 IPW_DEBUG_WX("Getting WAP BSSID: %pM\n", wrqu->ap_addr.sa_data); 6961 IPW_DEBUG_WX("Getting WAP BSSID: %pM\n", wrqu->ap_addr.sa_data);
6962 return 0; 6962 return 0;
@@ -8300,7 +8300,7 @@ static void ipw2100_wx_event_work(struct work_struct *work)
8300 priv->status & STATUS_RF_KILL_MASK || 8300 priv->status & STATUS_RF_KILL_MASK ||
8301 ipw2100_get_ordinal(priv, IPW_ORD_STAT_ASSN_AP_BSSID, 8301 ipw2100_get_ordinal(priv, IPW_ORD_STAT_ASSN_AP_BSSID,
8302 &priv->bssid, &len)) { 8302 &priv->bssid, &len)) {
8303 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 8303 eth_zero_addr(wrqu.ap_addr.sa_data);
8304 } else { 8304 } else {
8305 /* We now have the BSSID, so can finish setting to the full 8305 /* We now have the BSSID, so can finish setting to the full
8306 * associated state */ 8306 * associated state */
diff --git a/drivers/net/wireless/ipw2x00/ipw2200.c b/drivers/net/wireless/ipw2x00/ipw2200.c
index 67cad9b05ad8..39f3e6f5cbcd 100644
--- a/drivers/net/wireless/ipw2x00/ipw2200.c
+++ b/drivers/net/wireless/ipw2x00/ipw2200.c
@@ -1964,7 +1964,7 @@ static void notify_wx_assoc_event(struct ipw_priv *priv)
1964 if (priv->status & STATUS_ASSOCIATED) 1964 if (priv->status & STATUS_ASSOCIATED)
1965 memcpy(wrqu.ap_addr.sa_data, priv->bssid, ETH_ALEN); 1965 memcpy(wrqu.ap_addr.sa_data, priv->bssid, ETH_ALEN);
1966 else 1966 else
1967 memset(wrqu.ap_addr.sa_data, 0, ETH_ALEN); 1967 eth_zero_addr(wrqu.ap_addr.sa_data);
1968 wireless_send_event(priv->net_dev, SIOCGIWAP, &wrqu, NULL); 1968 wireless_send_event(priv->net_dev, SIOCGIWAP, &wrqu, NULL);
1969} 1969}
1970 1970
@@ -7400,7 +7400,7 @@ static int ipw_associate_network(struct ipw_priv *priv,
7400 memcpy(priv->assoc_request.bssid, network->bssid, ETH_ALEN); 7400 memcpy(priv->assoc_request.bssid, network->bssid, ETH_ALEN);
7401 7401
7402 if (priv->ieee->iw_mode == IW_MODE_ADHOC) { 7402 if (priv->ieee->iw_mode == IW_MODE_ADHOC) {
7403 memset(&priv->assoc_request.dest, 0xFF, ETH_ALEN); 7403 eth_broadcast_addr(priv->assoc_request.dest);
7404 priv->assoc_request.atim_window = cpu_to_le16(network->atim_window); 7404 priv->assoc_request.atim_window = cpu_to_le16(network->atim_window);
7405 } else { 7405 } else {
7406 memcpy(priv->assoc_request.dest, network->bssid, ETH_ALEN); 7406 memcpy(priv->assoc_request.dest, network->bssid, ETH_ALEN);
@@ -8986,7 +8986,7 @@ static int ipw_wx_get_wap(struct net_device *dev,
8986 wrqu->ap_addr.sa_family = ARPHRD_ETHER; 8986 wrqu->ap_addr.sa_family = ARPHRD_ETHER;
8987 memcpy(wrqu->ap_addr.sa_data, priv->bssid, ETH_ALEN); 8987 memcpy(wrqu->ap_addr.sa_data, priv->bssid, ETH_ALEN);
8988 } else 8988 } else
8989 memset(wrqu->ap_addr.sa_data, 0, ETH_ALEN); 8989 eth_zero_addr(wrqu->ap_addr.sa_data);
8990 8990
8991 IPW_DEBUG_WX("Getting WAP BSSID: %pM\n", 8991 IPW_DEBUG_WX("Getting WAP BSSID: %pM\n",
8992 wrqu->ap_addr.sa_data); 8992 wrqu->ap_addr.sa_data);
diff --git a/drivers/net/wireless/iwlegacy/common.c b/drivers/net/wireless/iwlegacy/common.c
index 2c4fa49686ef..887114582583 100644
--- a/drivers/net/wireless/iwlegacy/common.c
+++ b/drivers/net/wireless/iwlegacy/common.c
@@ -4634,7 +4634,7 @@ il_mac_remove_interface(struct ieee80211_hw *hw, struct ieee80211_vif *vif)
4634 il->vif = NULL; 4634 il->vif = NULL;
4635 il->iw_mode = NL80211_IFTYPE_UNSPECIFIED; 4635 il->iw_mode = NL80211_IFTYPE_UNSPECIFIED;
4636 il_teardown_interface(il, vif); 4636 il_teardown_interface(il, vif);
4637 memset(il->bssid, 0, ETH_ALEN); 4637 eth_zero_addr(il->bssid);
4638 4638
4639 D_MAC80211("leave\n"); 4639 D_MAC80211("leave\n");
4640 mutex_unlock(&il->mutex); 4640 mutex_unlock(&il->mutex);
diff --git a/drivers/net/wireless/iwlwifi/mvm/power.c b/drivers/net/wireless/iwlwifi/mvm/power.c
index 2620dd0c45f9..33bbdde0046f 100644
--- a/drivers/net/wireless/iwlwifi/mvm/power.c
+++ b/drivers/net/wireless/iwlwifi/mvm/power.c
@@ -66,6 +66,7 @@
66#include <linux/kernel.h> 66#include <linux/kernel.h>
67#include <linux/module.h> 67#include <linux/module.h>
68#include <linux/slab.h> 68#include <linux/slab.h>
69#include <linux/etherdevice.h>
69 70
70#include <net/mac80211.h> 71#include <net/mac80211.h>
71 72
@@ -491,7 +492,7 @@ void iwl_mvm_power_vif_assoc(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
491 492
492 if (memcmp(vif->bss_conf.bssid, mvmvif->uapsd_misbehaving_bssid, 493 if (memcmp(vif->bss_conf.bssid, mvmvif->uapsd_misbehaving_bssid,
493 ETH_ALEN)) 494 ETH_ALEN))
494 memset(mvmvif->uapsd_misbehaving_bssid, 0, ETH_ALEN); 495 eth_zero_addr(mvmvif->uapsd_misbehaving_bssid);
495} 496}
496 497
497static void iwl_mvm_power_uapsd_misbehav_ap_iterator(void *_data, u8 *mac, 498static void iwl_mvm_power_uapsd_misbehav_ap_iterator(void *_data, u8 *mac,
diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c
index 569b64ecc607..8079560f4965 100644
--- a/drivers/net/wireless/libertas/main.c
+++ b/drivers/net/wireless/libertas/main.c
@@ -667,7 +667,7 @@ static int lbs_setup_firmware(struct lbs_private *priv)
667 lbs_deb_enter(LBS_DEB_FW); 667 lbs_deb_enter(LBS_DEB_FW);
668 668
669 /* Read MAC address from firmware */ 669 /* Read MAC address from firmware */
670 memset(priv->current_addr, 0xff, ETH_ALEN); 670 eth_broadcast_addr(priv->current_addr);
671 ret = lbs_update_hw_spec(priv); 671 ret = lbs_update_hw_spec(priv);
672 if (ret) 672 if (ret)
673 goto done; 673 goto done;
@@ -871,7 +871,7 @@ static int lbs_init_adapter(struct lbs_private *priv)
871 871
872 lbs_deb_enter(LBS_DEB_MAIN); 872 lbs_deb_enter(LBS_DEB_MAIN);
873 873
874 memset(priv->current_addr, 0xff, ETH_ALEN); 874 eth_broadcast_addr(priv->current_addr);
875 875
876 priv->connect_status = LBS_DISCONNECTED; 876 priv->connect_status = LBS_DISCONNECTED;
877 priv->channel = DEFAULT_AD_HOC_CHANNEL; 877 priv->channel = DEFAULT_AD_HOC_CHANNEL;
diff --git a/drivers/net/wireless/libertas_tf/main.c b/drivers/net/wireless/libertas_tf/main.c
index 25c5acc78bd1..ed02e4bf2c26 100644
--- a/drivers/net/wireless/libertas_tf/main.c
+++ b/drivers/net/wireless/libertas_tf/main.c
@@ -152,7 +152,7 @@ static int lbtf_setup_firmware(struct lbtf_private *priv)
152 /* 152 /*
153 * Read priv address from HW 153 * Read priv address from HW
154 */ 154 */
155 memset(priv->current_addr, 0xff, ETH_ALEN); 155 eth_broadcast_addr(priv->current_addr);
156 ret = lbtf_update_hw_spec(priv); 156 ret = lbtf_update_hw_spec(priv);
157 if (ret) { 157 if (ret) {
158 ret = -1; 158 ret = -1;
@@ -199,7 +199,7 @@ out:
199static int lbtf_init_adapter(struct lbtf_private *priv) 199static int lbtf_init_adapter(struct lbtf_private *priv)
200{ 200{
201 lbtf_deb_enter(LBTF_DEB_MAIN); 201 lbtf_deb_enter(LBTF_DEB_MAIN);
202 memset(priv->current_addr, 0xff, ETH_ALEN); 202 eth_broadcast_addr(priv->current_addr);
203 mutex_init(&priv->lock); 203 mutex_init(&priv->lock);
204 204
205 priv->vif = NULL; 205 priv->vif = NULL;
diff --git a/drivers/net/wireless/mac80211_hwsim.c b/drivers/net/wireless/mac80211_hwsim.c
index 4a4c6586a8d2..c1947c5915eb 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -1908,7 +1908,7 @@ static void mac80211_hwsim_sw_scan_complete(struct ieee80211_hw *hw,
1908 1908
1909 printk(KERN_DEBUG "hwsim sw_scan_complete\n"); 1909 printk(KERN_DEBUG "hwsim sw_scan_complete\n");
1910 hwsim->scanning = false; 1910 hwsim->scanning = false;
1911 memset(hwsim->scan_addr, 0, ETH_ALEN); 1911 eth_zero_addr(hwsim->scan_addr);
1912 1912
1913 mutex_unlock(&hwsim->mutex); 1913 mutex_unlock(&hwsim->mutex);
1914} 1914}
@@ -2264,7 +2264,7 @@ static int mac80211_hwsim_new_radio(struct genl_info *info,
2264 skb_queue_head_init(&data->pending); 2264 skb_queue_head_init(&data->pending);
2265 2265
2266 SET_IEEE80211_DEV(hw, data->dev); 2266 SET_IEEE80211_DEV(hw, data->dev);
2267 memset(addr, 0, ETH_ALEN); 2267 eth_zero_addr(addr);
2268 addr[0] = 0x02; 2268 addr[0] = 0x02;
2269 addr[3] = idx >> 8; 2269 addr[3] = idx >> 8;
2270 addr[4] = idx; 2270 addr[4] = idx;
@@ -2597,7 +2597,7 @@ static void hwsim_mon_setup(struct net_device *dev)
2597 ether_setup(dev); 2597 ether_setup(dev);
2598 dev->tx_queue_len = 0; 2598 dev->tx_queue_len = 0;
2599 dev->type = ARPHRD_IEEE80211_RADIOTAP; 2599 dev->type = ARPHRD_IEEE80211_RADIOTAP;
2600 memset(dev->dev_addr, 0, ETH_ALEN); 2600 eth_zero_addr(dev->dev_addr);
2601 dev->dev_addr[0] = 0x12; 2601 dev->dev_addr[0] = 0x12;
2602} 2602}
2603 2603
diff --git a/drivers/net/wireless/mwifiex/cfg80211.c b/drivers/net/wireless/mwifiex/cfg80211.c
index 41c8e25df954..7c3ca2f50186 100644
--- a/drivers/net/wireless/mwifiex/cfg80211.c
+++ b/drivers/net/wireless/mwifiex/cfg80211.c
@@ -1563,7 +1563,7 @@ mwifiex_cfg80211_del_station(struct wiphy *wiphy, struct net_device *dev,
1563 1563
1564 wiphy_dbg(wiphy, "%s: mac address %pM\n", __func__, params->mac); 1564 wiphy_dbg(wiphy, "%s: mac address %pM\n", __func__, params->mac);
1565 1565
1566 memset(deauth_mac, 0, ETH_ALEN); 1566 eth_zero_addr(deauth_mac);
1567 1567
1568 spin_lock_irqsave(&priv->sta_list_spinlock, flags); 1568 spin_lock_irqsave(&priv->sta_list_spinlock, flags);
1569 sta_node = mwifiex_get_sta_entry(priv, params->mac); 1569 sta_node = mwifiex_get_sta_entry(priv, params->mac);
@@ -1786,7 +1786,7 @@ mwifiex_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev,
1786 wiphy_dbg(wiphy, "info: successfully disconnected from %pM:" 1786 wiphy_dbg(wiphy, "info: successfully disconnected from %pM:"
1787 " reason code %d\n", priv->cfg_bssid, reason_code); 1787 " reason code %d\n", priv->cfg_bssid, reason_code);
1788 1788
1789 memset(priv->cfg_bssid, 0, ETH_ALEN); 1789 eth_zero_addr(priv->cfg_bssid);
1790 priv->hs2_enabled = false; 1790 priv->hs2_enabled = false;
1791 1791
1792 return 0; 1792 return 0;
@@ -2046,7 +2046,7 @@ mwifiex_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev,
2046 dev_dbg(priv->adapter->dev, 2046 dev_dbg(priv->adapter->dev,
2047 "info: association to bssid %pM failed\n", 2047 "info: association to bssid %pM failed\n",
2048 priv->cfg_bssid); 2048 priv->cfg_bssid);
2049 memset(priv->cfg_bssid, 0, ETH_ALEN); 2049 eth_zero_addr(priv->cfg_bssid);
2050 2050
2051 if (ret > 0) 2051 if (ret > 0)
2052 cfg80211_connect_result(priv->netdev, priv->cfg_bssid, 2052 cfg80211_connect_result(priv->netdev, priv->cfg_bssid,
@@ -2194,7 +2194,7 @@ mwifiex_cfg80211_leave_ibss(struct wiphy *wiphy, struct net_device *dev)
2194 if (mwifiex_deauthenticate(priv, NULL)) 2194 if (mwifiex_deauthenticate(priv, NULL))
2195 return -EFAULT; 2195 return -EFAULT;
2196 2196
2197 memset(priv->cfg_bssid, 0, ETH_ALEN); 2197 eth_zero_addr(priv->cfg_bssid);
2198 2198
2199 return 0; 2199 return 0;
2200} 2200}
diff --git a/drivers/net/wireless/mwifiex/init.c b/drivers/net/wireless/mwifiex/init.c
index b77ba743e1c4..0978b1cc58b6 100644
--- a/drivers/net/wireless/mwifiex/init.c
+++ b/drivers/net/wireless/mwifiex/init.c
@@ -76,7 +76,7 @@ int mwifiex_init_priv(struct mwifiex_private *priv)
76 u32 i; 76 u32 i;
77 77
78 priv->media_connected = false; 78 priv->media_connected = false;
79 memset(priv->curr_addr, 0xff, ETH_ALEN); 79 eth_broadcast_addr(priv->curr_addr);
80 80
81 priv->pkt_tx_ctrl = 0; 81 priv->pkt_tx_ctrl = 0;
82 priv->bss_mode = NL80211_IFTYPE_UNSPECIFIED; 82 priv->bss_mode = NL80211_IFTYPE_UNSPECIFIED;
@@ -299,7 +299,7 @@ static void mwifiex_init_adapter(struct mwifiex_adapter *adapter)
299 adapter->ext_scan = false; 299 adapter->ext_scan = false;
300 adapter->key_api_major_ver = 0; 300 adapter->key_api_major_ver = 0;
301 adapter->key_api_minor_ver = 0; 301 adapter->key_api_minor_ver = 0;
302 memset(adapter->perm_addr, 0xff, ETH_ALEN); 302 eth_broadcast_addr(adapter->perm_addr);
303 adapter->iface_limit.sta_intf = MWIFIEX_MAX_STA_NUM; 303 adapter->iface_limit.sta_intf = MWIFIEX_MAX_STA_NUM;
304 adapter->iface_limit.uap_intf = MWIFIEX_MAX_UAP_NUM; 304 adapter->iface_limit.uap_intf = MWIFIEX_MAX_UAP_NUM;
305 adapter->iface_limit.p2p_intf = MWIFIEX_MAX_P2P_NUM; 305 adapter->iface_limit.p2p_intf = MWIFIEX_MAX_P2P_NUM;
diff --git a/drivers/net/wireless/mwifiex/sta_event.c b/drivers/net/wireless/mwifiex/sta_event.c
index 80ffe7412496..64c4223a1e1e 100644
--- a/drivers/net/wireless/mwifiex/sta_event.c
+++ b/drivers/net/wireless/mwifiex/sta_event.c
@@ -135,7 +135,7 @@ mwifiex_reset_connect_state(struct mwifiex_private *priv, u16 reason_code)
135 cfg80211_disconnected(priv->netdev, reason_code, NULL, 0, 135 cfg80211_disconnected(priv->netdev, reason_code, NULL, 0,
136 GFP_KERNEL); 136 GFP_KERNEL);
137 } 137 }
138 memset(priv->cfg_bssid, 0, ETH_ALEN); 138 eth_zero_addr(priv->cfg_bssid);
139 139
140 mwifiex_stop_net_dev_queue(priv->netdev, adapter); 140 mwifiex_stop_net_dev_queue(priv->netdev, adapter);
141 if (netif_carrier_ok(priv->netdev)) 141 if (netif_carrier_ok(priv->netdev))
diff --git a/drivers/net/wireless/mwifiex/wmm.c b/drivers/net/wireless/mwifiex/wmm.c
index ef717acec8b7..0cd4f6bed9fc 100644
--- a/drivers/net/wireless/mwifiex/wmm.c
+++ b/drivers/net/wireless/mwifiex/wmm.c
@@ -730,7 +730,7 @@ mwifiex_wmm_add_buf_txqueue(struct mwifiex_private *priv,
730 } else { 730 } else {
731 memcpy(ra, skb->data, ETH_ALEN); 731 memcpy(ra, skb->data, ETH_ALEN);
732 if (ra[0] & 0x01 || mwifiex_is_skb_mgmt_frame(skb)) 732 if (ra[0] & 0x01 || mwifiex_is_skb_mgmt_frame(skb))
733 memset(ra, 0xff, ETH_ALEN); 733 eth_broadcast_addr(ra);
734 ra_list = mwifiex_wmm_get_queue_raptr(priv, tid_down, ra); 734 ra_list = mwifiex_wmm_get_queue_raptr(priv, tid_down, ra);
735 } 735 }
736 736
diff --git a/drivers/net/wireless/mwl8k.c b/drivers/net/wireless/mwl8k.c
index f9b1218c761a..95921167b53f 100644
--- a/drivers/net/wireless/mwl8k.c
+++ b/drivers/net/wireless/mwl8k.c
@@ -1277,7 +1277,7 @@ static inline void mwl8k_save_beacon(struct ieee80211_hw *hw,
1277 struct mwl8k_priv *priv = hw->priv; 1277 struct mwl8k_priv *priv = hw->priv;
1278 1278
1279 priv->capture_beacon = false; 1279 priv->capture_beacon = false;
1280 memset(priv->capture_bssid, 0, ETH_ALEN); 1280 eth_zero_addr(priv->capture_bssid);
1281 1281
1282 /* 1282 /*
1283 * Use GFP_ATOMIC as rxq_process is called from 1283 * Use GFP_ATOMIC as rxq_process is called from
diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c
index 6abdaf0aa052..1d4dae422106 100644
--- a/drivers/net/wireless/orinoco/wext.c
+++ b/drivers/net/wireless/orinoco/wext.c
@@ -168,7 +168,7 @@ static int orinoco_ioctl_setwap(struct net_device *dev,
168 if (is_zero_ether_addr(ap_addr->sa_data) || 168 if (is_zero_ether_addr(ap_addr->sa_data) ||
169 is_broadcast_ether_addr(ap_addr->sa_data)) { 169 is_broadcast_ether_addr(ap_addr->sa_data)) {
170 priv->bssid_fixed = 0; 170 priv->bssid_fixed = 0;
171 memset(priv->desired_bssid, 0, ETH_ALEN); 171 eth_zero_addr(priv->desired_bssid);
172 172
173 /* "off" means keep existing connection */ 173 /* "off" means keep existing connection */
174 if (ap_addr->sa_data[0] == 0) { 174 if (ap_addr->sa_data[0] == 0) {
diff --git a/drivers/net/wireless/p54/fwio.c b/drivers/net/wireless/p54/fwio.c
index 5367d510b22d..275408eaf95e 100644
--- a/drivers/net/wireless/p54/fwio.c
+++ b/drivers/net/wireless/p54/fwio.c
@@ -671,7 +671,7 @@ int p54_upload_key(struct p54_common *priv, u8 algo, int slot, u8 idx, u8 len,
671 if (addr) 671 if (addr)
672 memcpy(rxkey->mac, addr, ETH_ALEN); 672 memcpy(rxkey->mac, addr, ETH_ALEN);
673 else 673 else
674 memset(rxkey->mac, ~0, ETH_ALEN); 674 eth_broadcast_addr(rxkey->mac);
675 675
676 switch (algo) { 676 switch (algo) {
677 case P54_CRYPTO_WEP: 677 case P54_CRYPTO_WEP:
diff --git a/drivers/net/wireless/p54/main.c b/drivers/net/wireless/p54/main.c
index b9250d75d253..e79674f73dc5 100644
--- a/drivers/net/wireless/p54/main.c
+++ b/drivers/net/wireless/p54/main.c
@@ -182,7 +182,7 @@ static int p54_start(struct ieee80211_hw *dev)
182 if (err) 182 if (err)
183 goto out; 183 goto out;
184 184
185 memset(priv->bssid, ~0, ETH_ALEN); 185 eth_broadcast_addr(priv->bssid);
186 priv->mode = NL80211_IFTYPE_MONITOR; 186 priv->mode = NL80211_IFTYPE_MONITOR;
187 err = p54_setup_mac(priv); 187 err = p54_setup_mac(priv);
188 if (err) { 188 if (err) {
@@ -274,8 +274,8 @@ static void p54_remove_interface(struct ieee80211_hw *dev,
274 wait_for_completion_interruptible_timeout(&priv->beacon_comp, HZ); 274 wait_for_completion_interruptible_timeout(&priv->beacon_comp, HZ);
275 } 275 }
276 priv->mode = NL80211_IFTYPE_MONITOR; 276 priv->mode = NL80211_IFTYPE_MONITOR;
277 memset(priv->mac_addr, 0, ETH_ALEN); 277 eth_zero_addr(priv->mac_addr);
278 memset(priv->bssid, 0, ETH_ALEN); 278 eth_zero_addr(priv->bssid);
279 p54_setup_mac(priv); 279 p54_setup_mac(priv);
280 mutex_unlock(&priv->conf_mutex); 280 mutex_unlock(&priv->conf_mutex);
281} 281}
@@ -794,7 +794,7 @@ struct ieee80211_hw *p54_init_common(size_t priv_data_len)
794 init_completion(&priv->beacon_comp); 794 init_completion(&priv->beacon_comp);
795 INIT_DELAYED_WORK(&priv->work, p54_work); 795 INIT_DELAYED_WORK(&priv->work, p54_work);
796 796
797 memset(&priv->mc_maclist[0], ~0, ETH_ALEN); 797 eth_broadcast_addr(priv->mc_maclist[0]);
798 priv->curchan = NULL; 798 priv->curchan = NULL;
799 p54_reset_stats(priv); 799 p54_reset_stats(priv);
800 return dev; 800 return dev;
diff --git a/drivers/net/wireless/ray_cs.c b/drivers/net/wireless/ray_cs.c
index 8330fa33e50b..477f86354dc5 100644
--- a/drivers/net/wireless/ray_cs.c
+++ b/drivers/net/wireless/ray_cs.c
@@ -808,7 +808,7 @@ static int ray_dev_init(struct net_device *dev)
808 808
809 /* copy mac and broadcast addresses to linux device */ 809 /* copy mac and broadcast addresses to linux device */
810 memcpy(dev->dev_addr, &local->sparm.b4.a_mac_addr, ADDRLEN); 810 memcpy(dev->dev_addr, &local->sparm.b4.a_mac_addr, ADDRLEN);
811 memset(dev->broadcast, 0xff, ETH_ALEN); 811 eth_broadcast_addr(dev->broadcast);
812 812
813 dev_dbg(&link->dev, "ray_dev_init ending\n"); 813 dev_dbg(&link->dev, "ray_dev_init ending\n");
814 return 0; 814 return 0;
diff --git a/drivers/net/wireless/rndis_wlan.c b/drivers/net/wireless/rndis_wlan.c
index 60d44ce9c017..d72ff8e7125d 100644
--- a/drivers/net/wireless/rndis_wlan.c
+++ b/drivers/net/wireless/rndis_wlan.c
@@ -199,13 +199,13 @@ enum ndis_80211_pmkid_cand_list_flag_bits {
199 199
200struct ndis_80211_auth_request { 200struct ndis_80211_auth_request {
201 __le32 length; 201 __le32 length;
202 u8 bssid[6]; 202 u8 bssid[ETH_ALEN];
203 u8 padding[2]; 203 u8 padding[2];
204 __le32 flags; 204 __le32 flags;
205} __packed; 205} __packed;
206 206
207struct ndis_80211_pmkid_candidate { 207struct ndis_80211_pmkid_candidate {
208 u8 bssid[6]; 208 u8 bssid[ETH_ALEN];
209 u8 padding[2]; 209 u8 padding[2];
210 __le32 flags; 210 __le32 flags;
211} __packed; 211} __packed;
@@ -248,7 +248,7 @@ struct ndis_80211_conf {
248 248
249struct ndis_80211_bssid_ex { 249struct ndis_80211_bssid_ex {
250 __le32 length; 250 __le32 length;
251 u8 mac[6]; 251 u8 mac[ETH_ALEN];
252 u8 padding[2]; 252 u8 padding[2];
253 struct ndis_80211_ssid ssid; 253 struct ndis_80211_ssid ssid;
254 __le32 privacy; 254 __le32 privacy;
@@ -283,7 +283,7 @@ struct ndis_80211_key {
283 __le32 size; 283 __le32 size;
284 __le32 index; 284 __le32 index;
285 __le32 length; 285 __le32 length;
286 u8 bssid[6]; 286 u8 bssid[ETH_ALEN];
287 u8 padding[6]; 287 u8 padding[6];
288 u8 rsc[8]; 288 u8 rsc[8];
289 u8 material[32]; 289 u8 material[32];
@@ -292,7 +292,7 @@ struct ndis_80211_key {
292struct ndis_80211_remove_key { 292struct ndis_80211_remove_key {
293 __le32 size; 293 __le32 size;
294 __le32 index; 294 __le32 index;
295 u8 bssid[6]; 295 u8 bssid[ETH_ALEN];
296 u8 padding[2]; 296 u8 padding[2];
297} __packed; 297} __packed;
298 298
@@ -310,7 +310,7 @@ struct ndis_80211_assoc_info {
310 struct req_ie { 310 struct req_ie {
311 __le16 capa; 311 __le16 capa;
312 __le16 listen_interval; 312 __le16 listen_interval;
313 u8 cur_ap_address[6]; 313 u8 cur_ap_address[ETH_ALEN];
314 } req_ie; 314 } req_ie;
315 __le32 req_ie_length; 315 __le32 req_ie_length;
316 __le32 offset_req_ies; 316 __le32 offset_req_ies;
@@ -338,7 +338,7 @@ struct ndis_80211_capability {
338} __packed; 338} __packed;
339 339
340struct ndis_80211_bssid_info { 340struct ndis_80211_bssid_info {
341 u8 bssid[6]; 341 u8 bssid[ETH_ALEN];
342 u8 pmkid[16]; 342 u8 pmkid[16];
343} __packed; 343} __packed;
344 344
@@ -1037,7 +1037,7 @@ static int get_bssid(struct usbnet *usbdev, u8 bssid[ETH_ALEN])
1037 bssid, &len); 1037 bssid, &len);
1038 1038
1039 if (ret != 0) 1039 if (ret != 0)
1040 memset(bssid, 0, ETH_ALEN); 1040 eth_zero_addr(bssid);
1041 1041
1042 return ret; 1042 return ret;
1043} 1043}
@@ -1391,7 +1391,7 @@ static int add_wep_key(struct usbnet *usbdev, const u8 *key, int key_len,
1391 priv->encr_keys[index].len = key_len; 1391 priv->encr_keys[index].len = key_len;
1392 priv->encr_keys[index].cipher = cipher; 1392 priv->encr_keys[index].cipher = cipher;
1393 memcpy(&priv->encr_keys[index].material, key, key_len); 1393 memcpy(&priv->encr_keys[index].material, key, key_len);
1394 memset(&priv->encr_keys[index].bssid, 0xff, ETH_ALEN); 1394 eth_broadcast_addr(priv->encr_keys[index].bssid);
1395 1395
1396 return 0; 1396 return 0;
1397} 1397}
@@ -1466,7 +1466,7 @@ static int add_wpa_key(struct usbnet *usbdev, const u8 *key, int key_len,
1466 } else { 1466 } else {
1467 /* group key */ 1467 /* group key */
1468 if (priv->infra_mode == NDIS_80211_INFRA_ADHOC) 1468 if (priv->infra_mode == NDIS_80211_INFRA_ADHOC)
1469 memset(ndis_key.bssid, 0xff, ETH_ALEN); 1469 eth_broadcast_addr(ndis_key.bssid);
1470 else 1470 else
1471 get_bssid(usbdev, ndis_key.bssid); 1471 get_bssid(usbdev, ndis_key.bssid);
1472 } 1472 }
@@ -1486,7 +1486,7 @@ static int add_wpa_key(struct usbnet *usbdev, const u8 *key, int key_len,
1486 if (flags & NDIS_80211_ADDKEY_PAIRWISE_KEY) 1486 if (flags & NDIS_80211_ADDKEY_PAIRWISE_KEY)
1487 memcpy(&priv->encr_keys[index].bssid, ndis_key.bssid, ETH_ALEN); 1487 memcpy(&priv->encr_keys[index].bssid, ndis_key.bssid, ETH_ALEN);
1488 else 1488 else
1489 memset(&priv->encr_keys[index].bssid, 0xff, ETH_ALEN); 1489 eth_broadcast_addr(priv->encr_keys[index].bssid);
1490 1490
1491 if (flags & NDIS_80211_ADDKEY_TRANSMIT_KEY) 1491 if (flags & NDIS_80211_ADDKEY_TRANSMIT_KEY)
1492 priv->encr_tx_key_index = index; 1492 priv->encr_tx_key_index = index;
@@ -2280,7 +2280,7 @@ static int rndis_disconnect(struct wiphy *wiphy, struct net_device *dev,
2280 netdev_dbg(usbdev->net, "cfg80211.disconnect(%d)\n", reason_code); 2280 netdev_dbg(usbdev->net, "cfg80211.disconnect(%d)\n", reason_code);
2281 2281
2282 priv->connected = false; 2282 priv->connected = false;
2283 memset(priv->bssid, 0, ETH_ALEN); 2283 eth_zero_addr(priv->bssid);
2284 2284
2285 return deauthenticate(usbdev); 2285 return deauthenticate(usbdev);
2286} 2286}
@@ -2392,7 +2392,7 @@ static int rndis_leave_ibss(struct wiphy *wiphy, struct net_device *dev)
2392 netdev_dbg(usbdev->net, "cfg80211.leave_ibss()\n"); 2392 netdev_dbg(usbdev->net, "cfg80211.leave_ibss()\n");
2393 2393
2394 priv->connected = false; 2394 priv->connected = false;
2395 memset(priv->bssid, 0, ETH_ALEN); 2395 eth_zero_addr(priv->bssid);
2396 2396
2397 return deauthenticate(usbdev); 2397 return deauthenticate(usbdev);
2398} 2398}
@@ -2857,7 +2857,7 @@ static void rndis_wlan_do_link_down_work(struct usbnet *usbdev)
2857 2857
2858 if (priv->connected) { 2858 if (priv->connected) {
2859 priv->connected = false; 2859 priv->connected = false;
2860 memset(priv->bssid, 0, ETH_ALEN); 2860 eth_zero_addr(priv->bssid);
2861 2861
2862 deauthenticate(usbdev); 2862 deauthenticate(usbdev);
2863 2863
diff --git a/drivers/net/wireless/rtlwifi/core.c b/drivers/net/wireless/rtlwifi/core.c
index a31a12775f1a..3b3a88b53b11 100644
--- a/drivers/net/wireless/rtlwifi/core.c
+++ b/drivers/net/wireless/rtlwifi/core.c
@@ -195,7 +195,7 @@ static void rtl_op_stop(struct ieee80211_hw *hw)
195 if (!(support_remote_wakeup && 195 if (!(support_remote_wakeup &&
196 rtlhal->enter_pnp_sleep)) { 196 rtlhal->enter_pnp_sleep)) {
197 mac->link_state = MAC80211_NOLINK; 197 mac->link_state = MAC80211_NOLINK;
198 memset(mac->bssid, 0, 6); 198 eth_zero_addr(mac->bssid);
199 mac->vendor = PEER_UNKNOWN; 199 mac->vendor = PEER_UNKNOWN;
200 200
201 /* reset sec info */ 201 /* reset sec info */
@@ -357,7 +357,7 @@ static void rtl_op_remove_interface(struct ieee80211_hw *hw,
357 mac->p2p = 0; 357 mac->p2p = 0;
358 mac->vif = NULL; 358 mac->vif = NULL;
359 mac->link_state = MAC80211_NOLINK; 359 mac->link_state = MAC80211_NOLINK;
360 memset(mac->bssid, 0, ETH_ALEN); 360 eth_zero_addr(mac->bssid);
361 mac->vendor = PEER_UNKNOWN; 361 mac->vendor = PEER_UNKNOWN;
362 mac->opmode = NL80211_IFTYPE_UNSPECIFIED; 362 mac->opmode = NL80211_IFTYPE_UNSPECIFIED;
363 rtlpriv->cfg->ops->set_network_type(hw, mac->opmode); 363 rtlpriv->cfg->ops->set_network_type(hw, mac->opmode);
@@ -1157,7 +1157,7 @@ static void rtl_op_bss_info_changed(struct ieee80211_hw *hw,
1157 if (ppsc->p2p_ps_info.p2p_ps_mode > P2P_PS_NONE) 1157 if (ppsc->p2p_ps_info.p2p_ps_mode > P2P_PS_NONE)
1158 rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE); 1158 rtl_p2p_ps_cmd(hw, P2P_PS_DISABLE);
1159 mac->link_state = MAC80211_NOLINK; 1159 mac->link_state = MAC80211_NOLINK;
1160 memset(mac->bssid, 0, ETH_ALEN); 1160 eth_zero_addr(mac->bssid);
1161 mac->vendor = PEER_UNKNOWN; 1161 mac->vendor = PEER_UNKNOWN;
1162 mac->mode = 0; 1162 mac->mode = 0;
1163 1163
diff --git a/drivers/net/wireless/ti/wl1251/main.c b/drivers/net/wireless/ti/wl1251/main.c
index d4ba009ac9aa..d1e9a13be910 100644
--- a/drivers/net/wireless/ti/wl1251/main.c
+++ b/drivers/net/wireless/ti/wl1251/main.c
@@ -468,7 +468,7 @@ static void wl1251_op_stop(struct ieee80211_hw *hw)
468 wl1251_tx_flush(wl); 468 wl1251_tx_flush(wl);
469 wl1251_power_off(wl); 469 wl1251_power_off(wl);
470 470
471 memset(wl->bssid, 0, ETH_ALEN); 471 eth_zero_addr(wl->bssid);
472 wl->listen_int = 1; 472 wl->listen_int = 1;
473 wl->bss_type = MAX_BSS_TYPE; 473 wl->bss_type = MAX_BSS_TYPE;
474 474
@@ -547,7 +547,7 @@ static void wl1251_op_remove_interface(struct ieee80211_hw *hw,
547 mutex_lock(&wl->mutex); 547 mutex_lock(&wl->mutex);
548 wl1251_debug(DEBUG_MAC80211, "mac80211 remove interface"); 548 wl1251_debug(DEBUG_MAC80211, "mac80211 remove interface");
549 wl->vif = NULL; 549 wl->vif = NULL;
550 memset(wl->bssid, 0, ETH_ALEN); 550 eth_zero_addr(wl->bssid);
551 mutex_unlock(&wl->mutex); 551 mutex_unlock(&wl->mutex);
552} 552}
553 553
diff --git a/drivers/net/wireless/ti/wlcore/cmd.c b/drivers/net/wireless/ti/wlcore/cmd.c
index c26fc2106e5b..68919f8d4310 100644
--- a/drivers/net/wireless/ti/wlcore/cmd.c
+++ b/drivers/net/wireless/ti/wlcore/cmd.c
@@ -367,7 +367,7 @@ void wl12xx_free_link(struct wl1271 *wl, struct wl12xx_vif *wlvif, u8 *hlid)
367 wl->links[*hlid].allocated_pkts = 0; 367 wl->links[*hlid].allocated_pkts = 0;
368 wl->links[*hlid].prev_freed_pkts = 0; 368 wl->links[*hlid].prev_freed_pkts = 0;
369 wl->links[*hlid].ba_bitmap = 0; 369 wl->links[*hlid].ba_bitmap = 0;
370 memset(wl->links[*hlid].addr, 0, ETH_ALEN); 370 eth_zero_addr(wl->links[*hlid].addr);
371 371
372 /* 372 /*
373 * At this point op_tx() will not add more packets to the queues. We 373 * At this point op_tx() will not add more packets to the queues. We
@@ -1293,7 +1293,7 @@ int wl1271_cmd_build_arp_rsp(struct wl1271 *wl, struct wl12xx_vif *wlvif)
1293 hdr->frame_control = cpu_to_le16(fc); 1293 hdr->frame_control = cpu_to_le16(fc);
1294 memcpy(hdr->addr1, vif->bss_conf.bssid, ETH_ALEN); 1294 memcpy(hdr->addr1, vif->bss_conf.bssid, ETH_ALEN);
1295 memcpy(hdr->addr2, vif->addr, ETH_ALEN); 1295 memcpy(hdr->addr2, vif->addr, ETH_ALEN);
1296 memset(hdr->addr3, 0xff, ETH_ALEN); 1296 eth_broadcast_addr(hdr->addr3);
1297 1297
1298 ret = wl1271_cmd_template_set(wl, wlvif->role_id, CMD_TEMPL_ARP_RSP, 1298 ret = wl1271_cmd_template_set(wl, wlvif->role_id, CMD_TEMPL_ARP_RSP,
1299 skb->data, skb->len, 0, 1299 skb->data, skb->len, 0,