--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
-@@ -1279,7 +1279,7 @@ static const struct net_device_ops ath6k
+@@ -1278,7 +1278,7 @@ static const struct net_device_ops ath6k
void init_netdev(struct net_device *dev)
{
priv->wireless_data.libipw = priv->ieee;
--- a/drivers/net/wireless/ipw2x00/ipw2200.c
+++ b/drivers/net/wireless/ipw2x00/ipw2200.c
-@@ -11682,7 +11682,7 @@ static int ipw_prom_alloc(struct ipw_pri
+@@ -11691,7 +11691,7 @@ static int ipw_prom_alloc(struct ipw_pri
memcpy(priv->prom_net_dev->dev_addr, priv->mac_addr, ETH_ALEN);
priv->prom_net_dev->type = ARPHRD_IEEE80211_RADIOTAP;
priv->prom_priv->ieee->iw_mode = IW_MODE_MONITOR;
SET_NETDEV_DEV(priv->prom_net_dev, &priv->pci_dev->dev);
-@@ -11820,7 +11820,7 @@ static int __devinit ipw_pci_probe(struc
+@@ -11829,7 +11829,7 @@ static int __devinit ipw_pci_probe(struc
priv->ieee->perfect_rssi = -20;
priv->ieee->worst_rssi = -85;
dev->flags |= IFF_BROADCAST | IFF_MULTICAST;
--- a/drivers/net/wireless/libertas/mesh.c
+++ b/drivers/net/wireless/libertas/mesh.c
-@@ -1018,7 +1018,7 @@ static int lbs_add_mesh(struct lbs_priva
+@@ -1015,7 +1015,7 @@ static int lbs_add_mesh(struct lbs_priva
mesh_dev->ieee80211_ptr = mesh_wdev;
priv->mesh_dev = mesh_dev;
}
--- a/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
+++ b/drivers/net/ethernet/atheros/atl1e/atl1e_main.c
-@@ -2230,7 +2230,7 @@ static int atl1e_init_netdev(struct net_
+@@ -2225,7 +2225,7 @@ static int atl1e_init_netdev(struct net_
SET_NETDEV_DEV(netdev, &pdev->dev);
pci_set_drvdata(pdev, netdev);
atl1e_set_ethtool_ops(netdev);
--- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
+++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
-@@ -2418,7 +2418,7 @@ static int atl1c_init_netdev(struct net_
+@@ -2417,7 +2417,7 @@ static int atl1c_init_netdev(struct net_
SET_NETDEV_DEV(netdev, &pdev->dev);
pci_set_drvdata(pdev, netdev);
strncpy(netdev->name, pci_name(pdev), sizeof(netdev->name) - 1);
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -829,7 +829,7 @@ static void ieee80211_if_setup(struct ne
+@@ -826,7 +826,7 @@ static void ieee80211_if_setup(struct ne
{
ether_setup(dev);
dev->priv_flags &= ~IFF_TX_SKB_SHARING;
dev->destructor = free_netdev;
}
-@@ -976,7 +976,7 @@ static void ieee80211_setup_sdata(struct
+@@ -973,7 +973,7 @@ static void ieee80211_setup_sdata(struct
/* and set some type-dependent values */
sdata->vif.type = type;
sdata->vif.p2p = false;
sdata->wdev.iftype = type;
sdata->control_port_protocol = cpu_to_be16(ETH_P_PAE);
-@@ -1017,7 +1017,7 @@ static void ieee80211_setup_sdata(struct
+@@ -1014,7 +1014,7 @@ static void ieee80211_setup_sdata(struct
break;
case NL80211_IFTYPE_MONITOR:
sdata->dev->type = ARPHRD_IEEE80211_RADIOTAP;
* For RX we handle drivers that zero-pad to end-of-packet.
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -830,6 +830,11 @@ static void ieee80211_if_setup(struct ne
+@@ -827,6 +827,11 @@ static void ieee80211_if_setup(struct ne
ether_setup(dev);
dev->priv_flags &= ~IFF_TX_SKB_SHARING;
netdev_attach_ops(dev, &ieee80211_dataif_ops);
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -1296,6 +1296,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1293,6 +1293,7 @@ int ieee80211_if_add(struct ieee80211_lo
return -ENOMEM;
dev_net_set(ndev, wiphy_net(local->hw.wiphy));
ndev->needed_headroom = local->tx_headroom +
4*6 /* four MAC addresses */
+ 2 + 2 + 2 + 2 /* ctl, dur, seq, qos */
-@@ -1304,6 +1305,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1301,6 +1302,7 @@ int ieee80211_if_add(struct ieee80211_lo
- ETH_HLEN /* ethernet hard_header_len */
+ IEEE80211_ENCRYPT_HEADROOM;
ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -5359,7 +5359,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -5415,7 +5415,9 @@ static int nl80211_wiphy_netns(struct sk
if (!net_eq(wiphy_net(&rdev->wiphy), net))
err = cfg80211_switch_netns(rdev, net);
+obj-$(CONFIG_COMPAT_BT_HIDP) += hidp/
bluetooth-y := af_bluetooth.o hci_core.o hci_conn.o hci_event.o mgmt.o \
- hci_sock.o hci_sysfs.o l2cap_core.o l2cap_sock.o smp.o sco.o lib.o
+ hci_sock.o hci_sysfs.o l2cap_core.o l2cap_sock.o smp.o sco.o lib.o \
--- a/net/bluetooth/hidp/Makefile
+++ b/net/bluetooth/hidp/Makefile
@@ -2,6 +2,6 @@
ccflags-y += -D__CHECK_ENDIAN__
--- a/drivers/net/wireless/ath/ath9k/Makefile
+++ b/drivers/net/wireless/ath/ath9k/Makefile
-@@ -6,7 +6,7 @@ ath9k-y += beacon.o \
- xmit.o
+@@ -8,7 +8,7 @@ ath9k-y += beacon.o \
+ antenna.o
ath9k-$(CONFIG_ATH9K_BTCOEX_SUPPORT) += mci.o
-ath9k-$(CONFIG_ATH9K_RATE_CONTROL) += rc.o
ath9k-$(CONFIG_ATH9K_DEBUGFS) += debug.o
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
-@@ -721,7 +721,7 @@ void ath9k_set_hw_capab(struct ath_softc
+@@ -731,7 +731,7 @@ void ath9k_set_hw_capab(struct ath_softc
sc->ant_rx = hw->wiphy->available_antennas_rx;
sc->ant_tx = hw->wiphy->available_antennas_tx;
--- a/include/net/cfg80211.h
+++ b/include/net/cfg80211.h
-@@ -2041,6 +2041,9 @@ struct wiphy_wowlan_support {
+@@ -2057,6 +2057,9 @@ struct wiphy_wowlan_support {
struct wiphy {
/* assign these fields before you register the wiphy */
int __init bcma_host_pci_init(void)
--- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
+++ b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c
-@@ -2695,6 +2695,9 @@ static struct pci_error_handlers atl1c_e
+@@ -2694,6 +2694,9 @@ static struct pci_error_handlers atl1c_e
static SIMPLE_DEV_PM_OPS(atl1c_pm_ops, atl1c_suspend, atl1c_resume);
static struct pci_driver atl1c_driver = {
.name = atl1c_driver_name,
.id_table = atl1c_pci_tbl,
-@@ -2702,7 +2705,12 @@ static struct pci_driver atl1c_driver =
+@@ -2701,7 +2704,12 @@ static struct pci_driver atl1c_driver =
.remove = __devexit_p(atl1c_remove),
.shutdown = atl1c_shutdown,
.err_handler = &atl1c_err_handler,
module_pci_driver(ath5k_pci_driver);
--- a/drivers/net/wireless/ath/ath9k/pci.c
+++ b/drivers/net/wireless/ath/ath9k/pci.c
-@@ -335,14 +335,10 @@ static int ath_pci_resume(struct device
+@@ -340,14 +340,10 @@ static int ath_pci_resume(struct device
return 0;
}
#define ATH9K_PM_OPS (&ath9k_pm_ops)
-@@ -360,7 +356,12 @@ static struct pci_driver ath_pci_driver
+@@ -365,7 +361,12 @@ static struct pci_driver ath_pci_driver
.id_table = ath_pci_id_table,
.probe = ath_pci_probe,
.remove = ath_pci_remove,
static int __init
--- a/drivers/net/wireless/iwlegacy/4965-mac.c
+++ b/drivers/net/wireless/iwlegacy/4965-mac.c
-@@ -6758,7 +6758,12 @@ static struct pci_driver il4965_driver =
+@@ -6769,7 +6769,12 @@ static struct pci_driver il4965_driver =
.id_table = il4965_hw_card_ids,
.probe = il4965_pci_probe,
.remove = __devexit_p(il4965_pci_remove),
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -1972,6 +1972,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
+@@ -1973,6 +1973,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
goto fail;
}
if (unlikely(!multicast && skb->sk &&
skb_shinfo(skb)->tx_flags & SKBTX_WIFI_STATUS)) {
struct sk_buff *orig_skb = skb;
-@@ -2010,6 +2011,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
+@@ -2011,6 +2012,7 @@ netdev_tx_t ieee80211_subif_start_xmit(s
skb = orig_skb;
}
}
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
-@@ -3101,7 +3101,12 @@ void ieee80211_rx(struct ieee80211_hw *h
+@@ -3099,7 +3099,12 @@ void ieee80211_rx(struct ieee80211_hw *h
drop:
kfree_skb(skb);
}
--- a/net/bluetooth/l2cap_sock.c
+++ b/net/bluetooth/l2cap_sock.c
-@@ -538,7 +538,14 @@ static int l2cap_sock_setsockopt_old(str
+@@ -559,7 +559,14 @@ static int l2cap_sock_setsockopt_old(str
return err;
}
{
struct sock *sk = sock->sk;
struct l2cap_chan *chan = l2cap_pi(sk)->chan;
-@@ -1166,8 +1173,12 @@ static struct sock *l2cap_sock_alloc(str
+@@ -1187,8 +1194,12 @@ static struct sock *l2cap_sock_alloc(str
return sk;
}
{
struct sock *sk;
-@@ -1179,7 +1190,11 @@ static int l2cap_sock_create(struct net
+@@ -1200,7 +1211,11 @@ static int l2cap_sock_create(struct net
sock->type != SOCK_DGRAM && sock->type != SOCK_RAW)
return -ESOCKTNOSUPPORT;
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -1396,6 +1396,7 @@ void ieee80211_if_remove(struct ieee8021
+@@ -1395,6 +1395,7 @@ void ieee80211_if_remove(struct ieee8021
* Remove all interfaces, may only be called at hardware unregistration
* time because it doesn't do RCU-safe list removals.
*/
void ieee80211_remove_interfaces(struct ieee80211_local *local)
{
struct ieee80211_sub_if_data *sdata, *tmp;
-@@ -1415,6 +1416,22 @@ void ieee80211_remove_interfaces(struct
+@@ -1414,6 +1415,22 @@ void ieee80211_remove_interfaces(struct
unregister_netdevice_many(&unreg_list);
list_del(&unreg_list);
}
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
-@@ -1495,6 +1495,10 @@ void ieee80211_xmit(struct ieee80211_sub
+@@ -1493,6 +1493,10 @@ void ieee80211_xmit(struct ieee80211_sub
return;
}
}
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
-@@ -2267,7 +2267,11 @@ struct ieee80211_ops {
+@@ -2275,7 +2275,11 @@ struct ieee80211_ops {
u32 changed);
u64 (*prepare_multicast)(struct ieee80211_hw *hw,
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
-@@ -883,7 +883,12 @@ struct ieee80211_local {
+@@ -852,7 +852,12 @@ struct ieee80211_local {
struct work_struct recalc_smps;
/* aggregated multicast list */
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -570,8 +570,13 @@ static void ieee80211_do_stop(struct iee
+@@ -567,8 +567,13 @@ static void ieee80211_do_stop(struct iee
netif_addr_lock_bh(sdata->dev);
spin_lock_bh(&local->filter_lock);
spin_unlock_bh(&local->filter_lock);
netif_addr_unlock_bh(sdata->dev);
-@@ -745,7 +750,12 @@ static void ieee80211_set_multicast_list
+@@ -742,7 +747,12 @@ static void ieee80211_set_multicast_list
sdata->flags ^= IEEE80211_SDATA_PROMISC;
}
spin_lock_bh(&local->filter_lock);
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
-@@ -1195,7 +1195,11 @@ static void ath6kl_set_multicast_list(st
+@@ -1194,7 +1194,11 @@ static void ath6kl_set_multicast_list(st
list_for_each_entry_safe(mc_filter, tmp, &vif->mc_filter, list) {
found = false;
netdev_for_each_mc_addr(ha, ndev) {
ATH6KL_MCAST_FILTER_MAC_ADDR_SIZE) == 0) {
found = true;
break;
-@@ -1229,7 +1233,11 @@ static void ath6kl_set_multicast_list(st
+@@ -1228,7 +1232,11 @@ static void ath6kl_set_multicast_list(st
netdev_for_each_mc_addr(ha, ndev) {
found = false;
list_for_each_entry(mc_filter, &vif->mc_filter, list) {
ATH6KL_MCAST_FILTER_MAC_ADDR_SIZE) == 0) {
found = true;
break;
-@@ -1244,7 +1252,11 @@ static void ath6kl_set_multicast_list(st
+@@ -1243,7 +1251,11 @@ static void ath6kl_set_multicast_list(st
goto out;
}
ntype == NL80211_IFTYPE_P2P_CLIENT))
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -1674,7 +1674,7 @@ static int nl80211_valid_4addr(struct cf
+@@ -1707,7 +1707,7 @@ static int nl80211_valid_4addr(struct cf
enum nl80211_iftype iftype)
{
if (!use_4addr) {
--- a/net/mac80211/main.c
+++ b/net/mac80211/main.c
-@@ -1110,6 +1110,10 @@ static void __exit ieee80211_exit(void)
+@@ -1109,6 +1109,10 @@ static void __exit ieee80211_exit(void)
rc80211_minstrel_ht_exit();
rc80211_minstrel_exit();
atl1c_up(adapter);
clear_bit(__AT_RESETTING, &adapter->flags);
}
-@@ -2407,8 +2420,10 @@ static const struct net_device_ops atl1c
+@@ -2406,8 +2419,10 @@ static const struct net_device_ops atl1c
.ndo_set_mac_address = atl1c_set_mac_addr,
.ndo_set_rx_mode = atl1c_set_multi,
.ndo_change_mtu = atl1c_change_mtu,
.ndo_do_ioctl = atl1c_ioctl,
.ndo_tx_timeout = atl1c_tx_timeout,
.ndo_get_stats = atl1c_get_stats,
-@@ -2427,6 +2442,7 @@ static int atl1c_init_netdev(struct net_
+@@ -2426,6 +2441,7 @@ static int atl1c_init_netdev(struct net_
atl1c_set_ethtool_ops(netdev);
/* TODO: add when ready */
netdev->hw_features = NETIF_F_SG |
NETIF_F_HW_CSUM |
NETIF_F_HW_VLAN_RX |
-@@ -2434,6 +2450,14 @@ static int atl1c_init_netdev(struct net_
+@@ -2433,6 +2449,14 @@ static int atl1c_init_netdev(struct net_
NETIF_F_TSO6;
netdev->features = netdev->hw_features |
NETIF_F_HW_VLAN_TX;
/*
* atl1e_change_mtu - Change the Maximum Transfer Unit
-@@ -1948,7 +1950,11 @@ void atl1e_down(struct atl1e_adapter *ad
+@@ -1943,7 +1945,11 @@ void atl1e_down(struct atl1e_adapter *ad
* reschedule our watchdog timer */
set_bit(__AT_DOWN, &adapter->flags);
/* reset MAC to disable all RX/TX */
atl1e_reset_hw(&adapter->hw);
-@@ -2218,8 +2224,10 @@ static const struct net_device_ops atl1e
+@@ -2213,8 +2219,10 @@ static const struct net_device_ops atl1e
.ndo_set_rx_mode = atl1e_set_multi,
.ndo_validate_addr = eth_validate_addr,
.ndo_set_mac_address = atl1e_set_mac_addr,
.ndo_change_mtu = atl1e_change_mtu,
.ndo_do_ioctl = atl1e_ioctl,
.ndo_tx_timeout = atl1e_tx_timeout,
-@@ -2239,10 +2247,15 @@ static int atl1e_init_netdev(struct net_
+@@ -2234,10 +2242,15 @@ static int atl1e_init_netdev(struct net_
netdev->watchdog_timeo = AT_TX_WATCHDOG;
atl1e_set_ethtool_ops(netdev);
#endif /* ATLX_C */
--- a/drivers/net/wireless/ath/ath6kl/main.c
+++ b/drivers/net/wireless/ath/ath6kl/main.c
-@@ -1109,6 +1109,7 @@ static struct net_device_stats *ath6kl_g
+@@ -1108,6 +1108,7 @@ static struct net_device_stats *ath6kl_g
return &vif->net_stats;
}
static int ath6kl_set_features(struct net_device *dev,
netdev_features_t features)
{
-@@ -1141,6 +1142,7 @@ static int ath6kl_set_features(struct ne
+@@ -1140,6 +1141,7 @@ static int ath6kl_set_features(struct ne
return err;
}
static void ath6kl_set_multicast_list(struct net_device *ndev)
{
-@@ -1285,7 +1287,9 @@ static const struct net_device_ops ath6k
+@@ -1284,7 +1286,9 @@ static const struct net_device_ops ath6k
.ndo_stop = ath6kl_close,
.ndo_start_xmit = ath6kl_data_tx,
.ndo_get_stats = ath6kl_get_stats,
.ndo_set_rx_mode = ath6kl_set_multicast_list,
};
-@@ -1300,7 +1304,11 @@ void init_netdev(struct net_device *dev)
+@@ -1299,7 +1303,11 @@ void init_netdev(struct net_device *dev)
sizeof(struct wmi_data_hdr) + HTC_HDR_LENGTH
+ WMI_MAX_TX_META_SZ + ATH6KL_HTC_ALIGN_BYTES;
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -4357,7 +4357,9 @@ static int nl80211_dump_scan(struct sk_b
+@@ -4413,7 +4413,9 @@ static int nl80211_dump_scan(struct sk_b
spin_lock_bh(&rdev->bss_lock);
cfg80211_bss_expire(rdev);
--- a/net/mac80211/Makefile
+++ b/net/mac80211/Makefile
-@@ -25,7 +25,9 @@ mac80211-y := \
+@@ -24,7 +24,9 @@ mac80211-y := \
wme.o \
event.o \
chan.o \
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
-@@ -1724,8 +1724,12 @@ int hci_register_dev(struct hci_dev *hde
+@@ -1725,8 +1725,12 @@ int hci_register_dev(struct hci_dev *hde
list_add(&hdev->list, &hci_dev_list);
write_unlock(&hci_dev_list_lock);
+#define path_lookup general_path_lookup
+
#ifdef CONFIG_MAC80211_VERBOSE_MPATH_DEBUG
- #define mpath_dbg(fmt, args...) printk(KERN_DEBUG fmt, ##args)
+ #define mpath_dbg(fmt, args...) pr_debug(fmt, ##args)
#else
atl1c_hw_set_mac_addr(&adapter->hw, adapter->hw.mac_addr);
-@@ -2571,7 +2573,9 @@ static int __devinit atl1c_probe(struct
+@@ -2570,7 +2572,9 @@ static int __devinit atl1c_probe(struct
}
if (atl1c_read_mac_addr(&adapter->hw)) {
/* got a random MAC address, set NET_ADDR_RANDOM to netdev */
module_usb_driver(rt2500usb_driver);
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
-@@ -1302,7 +1302,9 @@ static struct usb_driver rt2800usb_drive
+@@ -1303,7 +1303,9 @@ static struct usb_driver rt2800usb_drive
.disconnect = rt2x00usb_disconnect,
.suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume,