#include <drm/drmP.h>
#include "nouveau_drm.h"
-@@ -228,4 +229,4 @@ fail_detach:
+@@ -224,4 +225,4 @@ fail_detach:
dma_buf_detach(dma_buf, attach);
return ERR_PTR(ret);
}
dev = drm->dev;
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
-@@ -591,7 +591,10 @@ driver = {
+@@ -622,7 +622,10 @@ driver = {
.driver_features =
DRIVER_USE_AGP | DRIVER_PCI_DMA | DRIVER_SG |
DRIVER_HAVE_IRQ | DRIVER_IRQ_SHARED | DRIVER_GEM |
.load = nouveau_drm_load,
.unload = nouveau_drm_unload,
-@@ -612,10 +615,12 @@ driver = {
+@@ -643,10 +646,12 @@ driver = {
.ioctls = nouveau_ioctls,
.fops = &nouveau_driver_fops,
static void i915_gem_object_flush_gtt_write_domain(struct drm_i915_gem_object *obj);
static void i915_gem_object_flush_cpu_write_domain(struct drm_i915_gem_object *obj);
-@@ -3778,8 +3780,10 @@ void i915_gem_free_object(struct drm_gem
+@@ -3773,8 +3775,10 @@ void i915_gem_free_object(struct drm_gem
BUG_ON(obj->pages);
+obj-$(CONFIG_COMPAT_DRM_MGAG200) += mgag200.o
--- a/drivers/gpu/drm/nouveau/Makefile
+++ b/drivers/gpu/drm/nouveau/Makefile
-@@ -187,6 +187,6 @@ nouveau-y += nouveau_mem.o
+@@ -217,6 +217,6 @@ nouveau-y += nouveau_mem.o
# other random bits
nouveau-$(CONFIG_COMPAT) += nouveau_ioc32.o
nouveau-$(CONFIG_ACPI) += nouveau_acpi.o
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -3911,9 +3911,14 @@ i915_gem_init_hw(struct drm_device *dev)
+@@ -3906,9 +3906,14 @@ i915_gem_init_hw(struct drm_device *dev)
drm_i915_private_t *dev_priv = dev->dev_private;
int ret;
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
-@@ -1650,7 +1650,14 @@ i915_gem_object_truncate(struct drm_i915
+@@ -1639,7 +1639,14 @@ i915_gem_object_truncate(struct drm_i915
* backing pages, *now*.
*/
inode = obj->base.filp->f_path.dentry->d_inode;
retval = rndis_set_oid(usbdev,
--- a/drivers/net/ethernet/broadcom/b44.c
+++ b/drivers/net/ethernet/broadcom/b44.c
-@@ -2175,7 +2175,7 @@ static int __devinit b44_init_one(struct
+@@ -2175,7 +2175,7 @@ static int b44_init_one(struct ssb_devic
bp->rx_pending = B44_DEF_RX_RING_PENDING;
bp->tx_pending = B44_DEF_TX_RING_PENDING;
priv->wireless_data.libipw = priv->ieee;
--- a/drivers/net/wireless/ipw2x00/ipw2200.c
+++ b/drivers/net/wireless/ipw2x00/ipw2200.c
-@@ -11690,7 +11690,7 @@ static int ipw_prom_alloc(struct ipw_pri
+@@ -11688,7 +11688,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);
-@@ -11828,7 +11828,7 @@ static int __devinit ipw_pci_probe(struc
+@@ -11826,7 +11826,7 @@ static int ipw_pci_probe(struct pci_dev
priv->ieee->perfect_rssi = -20;
priv->ieee->worst_rssi = -85;
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -1601,7 +1601,7 @@ static const struct net_device_ops hwsim
+@@ -1606,7 +1606,7 @@ static const struct net_device_ops hwsim
static void hwsim_mon_setup(struct net_device *dev)
{
--- a/drivers/net/ethernet/atheros/atlx/atl1.c
+++ b/drivers/net/ethernet/atheros/atlx/atl1.c
-@@ -3010,7 +3010,7 @@ static int __devinit atl1_probe(struct p
+@@ -3009,7 +3009,7 @@ static int atl1_probe(struct pci_dev *pd
adapter->mii.phy_id_mask = 0x1f;
adapter->mii.reg_num_mask = 0x1f;
--- a/drivers/net/ethernet/atheros/atlx/atl2.c
+++ b/drivers/net/ethernet/atheros/atlx/atl2.c
-@@ -1400,7 +1400,7 @@ static int __devinit atl2_probe(struct p
+@@ -1399,7 +1399,7 @@ static int atl2_probe(struct pci_dev *pd
atl2_setup_pcicmd(pdev);
strncpy(netdev->name, pci_name(pdev), sizeof(netdev->name) - 1);
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -1008,7 +1008,7 @@ static void ieee80211_if_setup(struct ne
+@@ -1053,7 +1053,7 @@ static void ieee80211_if_setup(struct ne
{
ether_setup(dev);
dev->priv_flags &= ~IFF_TX_SKB_SHARING;
dev->destructor = free_netdev;
}
-@@ -1171,7 +1171,7 @@ static void ieee80211_setup_sdata(struct
+@@ -1216,7 +1216,7 @@ static void ieee80211_setup_sdata(struct
/* only monitor/p2p-device differ */
if (sdata->dev) {
sdata->dev->type = ARPHRD_ETHER;
}
-@@ -1206,7 +1206,7 @@ static void ieee80211_setup_sdata(struct
+@@ -1251,7 +1251,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
-@@ -1009,6 +1009,11 @@ static void ieee80211_if_setup(struct ne
+@@ -1054,6 +1054,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
-@@ -1493,6 +1493,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1538,6 +1538,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 */
-@@ -1501,6 +1502,7 @@ int ieee80211_if_add(struct ieee80211_lo
+@@ -1546,6 +1547,7 @@ int ieee80211_if_add(struct ieee80211_lo
- ETH_HLEN /* ethernet hard_header_len */
+ IEEE80211_ENCRYPT_HEADROOM;
ndev->needed_tailroom = IEEE80211_ENCRYPT_TAILROOM;
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
-@@ -1925,10 +1925,10 @@ static int hwsim_register_received_nl(st
+@@ -1930,10 +1930,10 @@ static int hwsim_register_received_nl(st
if (info == NULL)
goto out;
return 0;
out:
-@@ -1965,7 +1965,7 @@ static int mac80211_hwsim_netlink_notify
+@@ -1970,7 +1970,7 @@ static int mac80211_hwsim_netlink_notify
if (state != NETLINK_URELEASE)
return NOTIFY_DONE;
wmediumd_portid = 0;
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -1282,7 +1282,7 @@ static int nl80211_dump_wiphy(struct sk_
+@@ -1284,7 +1284,7 @@ static int nl80211_dump_wiphy(struct sk_
continue;
if (++idx <= start)
continue;
cb->nlh->nlmsg_seq, NLM_F_MULTI,
dev) < 0) {
idx--;
-@@ -1305,7 +1305,7 @@ static int nl80211_get_wiphy(struct sk_b
+@@ -1307,7 +1307,7 @@ static int nl80211_get_wiphy(struct sk_b
if (!msg)
return -ENOMEM;
nlmsg_free(msg);
return -ENOBUFS;
}
-@@ -1940,7 +1940,7 @@ static int nl80211_dump_interface(struct
+@@ -1886,7 +1886,7 @@ static int nl80211_dump_interface(struct
if_idx++;
continue;
}
cb->nlh->nlmsg_seq, NLM_F_MULTI,
rdev, wdev) < 0) {
mutex_unlock(&rdev->devlist_mtx);
-@@ -1971,7 +1971,7 @@ static int nl80211_get_interface(struct
+@@ -1917,7 +1917,7 @@ static int nl80211_get_interface(struct
if (!msg)
return -ENOMEM;
dev, wdev) < 0) {
nlmsg_free(msg);
return -ENOBUFS;
-@@ -2189,7 +2189,7 @@ static int nl80211_new_interface(struct
+@@ -2135,7 +2135,7 @@ static int nl80211_new_interface(struct
break;
}
rdev, wdev) < 0) {
nlmsg_free(msg);
return -ENOBUFS;
-@@ -2324,7 +2324,7 @@ static int nl80211_get_key(struct sk_buf
+@@ -2270,7 +2270,7 @@ static int nl80211_get_key(struct sk_buf
if (!msg)
return -ENOMEM;
NL80211_CMD_NEW_KEY);
if (IS_ERR(hdr))
return PTR_ERR(hdr);
-@@ -3100,7 +3100,7 @@ static int nl80211_dump_station(struct s
+@@ -3072,7 +3072,7 @@ static int nl80211_dump_station(struct s
goto out_err;
if (nl80211_send_station(skb,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
dev, netdev, mac_addr,
&sinfo) < 0)
-@@ -3146,7 +3146,7 @@ static int nl80211_get_station(struct sk
+@@ -3118,7 +3118,7 @@ static int nl80211_get_station(struct sk
if (!msg)
return -ENOMEM;
rdev, dev, mac_addr, &sinfo) < 0) {
nlmsg_free(msg);
return -ENOBUFS;
-@@ -3562,7 +3562,7 @@ static int nl80211_dump_mpath(struct sk_
+@@ -3534,7 +3534,7 @@ static int nl80211_dump_mpath(struct sk_
if (err)
goto out_err;
cb->nlh->nlmsg_seq, NLM_F_MULTI,
netdev, dst, next_hop,
&pinfo) < 0)
-@@ -3611,7 +3611,7 @@ static int nl80211_get_mpath(struct sk_b
+@@ -3583,7 +3583,7 @@ static int nl80211_get_mpath(struct sk_b
if (!msg)
return -ENOMEM;
NL80211_CMD_GET_REG);
if (!hdr)
goto put_failure;
-@@ -4813,7 +4813,7 @@ static int nl80211_send_bss(struct sk_bu
+@@ -4814,7 +4814,7 @@ static int nl80211_send_bss(struct sk_bu
ASSERT_WDEV_LOCK(wdev);
NL80211_CMD_NEW_SCAN_RESULTS);
if (!hdr)
return -1;
-@@ -5032,7 +5032,7 @@ static int nl80211_dump_survey(struct sk
+@@ -5041,7 +5041,7 @@ static int nl80211_dump_survey(struct sk
}
if (nl80211_send_survey(skb,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
netdev,
&survey) < 0)
-@@ -5677,7 +5677,7 @@ static int nl80211_testmode_dump(struct
+@@ -5687,7 +5687,7 @@ static int nl80211_testmode_dump(struct
}
while (1) {
cb->nlh->nlmsg_seq, NLM_F_MULTI,
NL80211_CMD_TESTMODE);
struct nlattr *tmdata;
-@@ -5756,7 +5756,7 @@ struct sk_buff *cfg80211_testmode_alloc_
+@@ -5766,7 +5766,7 @@ struct sk_buff *cfg80211_testmode_alloc_
return NULL;
return __cfg80211_testmode_alloc_skb(rdev, approxlen,
rdev->testmode_info->snd_seq,
GFP_KERNEL);
}
-@@ -6089,7 +6089,7 @@ static int nl80211_remain_on_channel(str
+@@ -6099,7 +6099,7 @@ static int nl80211_remain_on_channel(str
if (!msg)
return -ENOMEM;
NL80211_CMD_REMAIN_ON_CHANNEL);
if (IS_ERR(hdr)) {
-@@ -6308,7 +6308,7 @@ static int nl80211_register_mgmt(struct
+@@ -6318,7 +6318,7 @@ static int nl80211_register_mgmt(struct
if (!rdev->ops->mgmt_tx)
return -EOPNOTSUPP;
nla_data(info->attrs[NL80211_ATTR_FRAME_MATCH]),
nla_len(info->attrs[NL80211_ATTR_FRAME_MATCH]));
}
-@@ -6378,7 +6378,7 @@ static int nl80211_tx_mgmt(struct sk_buf
+@@ -6388,7 +6388,7 @@ static int nl80211_tx_mgmt(struct sk_buf
if (!msg)
return -ENOMEM;
NL80211_CMD_FRAME);
if (IS_ERR(hdr)) {
-@@ -6493,7 +6493,7 @@ static int nl80211_get_power_save(struct
+@@ -6503,7 +6503,7 @@ static int nl80211_get_power_save(struct
if (!msg)
return -ENOMEM;
NL80211_CMD_GET_POWER_SAVE);
if (!hdr) {
err = -ENOBUFS;
-@@ -6684,7 +6684,7 @@ static int nl80211_get_wowlan(struct sk_
+@@ -6693,7 +6693,7 @@ static int nl80211_get_wowlan(struct sk_
if (!msg)
return -ENOMEM;
NL80211_CMD_GET_WOWLAN);
if (!hdr)
goto nla_put_failure;
-@@ -6961,7 +6961,7 @@ static int nl80211_register_unexpected_f
+@@ -6970,7 +6970,7 @@ static int nl80211_register_unexpected_f
if (wdev->ap_unexpected_nlportid)
return -EBUSY;
return 0;
}
-@@ -6991,7 +6991,7 @@ static int nl80211_probe_client(struct s
+@@ -7000,7 +7000,7 @@ static int nl80211_probe_client(struct s
if (!msg)
return -ENOMEM;
NL80211_CMD_PROBE_CLIENT);
if (IS_ERR(hdr)) {
-@@ -7035,13 +7035,13 @@ static int nl80211_register_beacons(stru
+@@ -7044,13 +7044,13 @@ static int nl80211_register_beacons(stru
/* First, check if already registered. */
spin_lock_bh(&rdev->beacon_registrations_lock);
list_for_each_entry(reg, &rdev->beacon_registrations, list) {
list_add(&nreg->list, &rdev->beacon_registrations);
spin_unlock_bh(&rdev->beacon_registrations_lock);
-@@ -9169,12 +9169,12 @@ static int nl80211_netlink_notify(struct
+@@ -9178,12 +9178,12 @@ static int nl80211_netlink_notify(struct
list_for_each_entry_rcu(rdev, &cfg80211_rdev_list, list) {
list_for_each_entry_rcu(wdev, &rdev->wdev_list, list)
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -5940,7 +5940,9 @@ static int nl80211_wiphy_netns(struct sk
+@@ -5950,7 +5950,9 @@ static int nl80211_wiphy_netns(struct sk
if (!net_eq(wiphy_net(&rdev->wiphy), net))
err = cfg80211_switch_netns(rdev, net);
ath9k-$(CONFIG_ATH9K_DEBUGFS) += debug.o
--- a/drivers/net/wireless/ath/ath9k/init.c
+++ b/drivers/net/wireless/ath/ath9k/init.c
-@@ -760,7 +760,7 @@ void ath9k_set_hw_capab(struct ath_softc
+@@ -817,7 +817,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
-@@ -2259,6 +2259,9 @@ struct wiphy_wowlan_support {
+@@ -2294,6 +2294,9 @@ struct wiphy_wowlan_support {
struct wiphy {
/* assign these fields before you register the wiphy */
}
mutex_lock(&wl->mutex);
dev = wl->current_dev;
-@@ -4255,9 +4260,17 @@ static int b43_wireless_core_start(struc
+@@ -4259,9 +4264,17 @@ static int b43_wireless_core_start(struc
goto out;
}
} else {
if (err) {
b43err(dev->wl, "Cannot request IRQ-%d\n",
dev->dev->irq);
-@@ -5080,6 +5093,10 @@ static int b43_setup_bands(struct b43_wl
+@@ -5084,6 +5097,10 @@ static int b43_setup_bands(struct b43_wl
static void b43_wireless_core_detach(struct b43_wldev *dev)
{
out_free_nvs:
kfree(wl->nvs);
-@@ -5696,7 +5711,12 @@ int __devexit wlcore_remove(struct platf
+@@ -5696,7 +5711,12 @@ int wlcore_remove(struct platform_device
disable_irq_wake(wl->irq);
}
wl1271_unregister_hw(wl);
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
-@@ -2691,6 +2691,9 @@ static const struct pci_error_handlers a
+@@ -2690,6 +2690,9 @@ static const struct pci_error_handlers a
.resume = atl1c_io_resume,
};
static SIMPLE_DEV_PM_OPS(atl1c_pm_ops, atl1c_suspend, atl1c_resume);
static struct pci_driver atl1c_driver = {
-@@ -2700,7 +2703,12 @@ static struct pci_driver atl1c_driver =
- .remove = __devexit_p(atl1c_remove),
+@@ -2699,7 +2702,12 @@ static struct pci_driver atl1c_driver =
+ .remove = atl1c_remove,
.shutdown = atl1c_shutdown,
.err_handler = &atl1c_err_handler,
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29))
static SIMPLE_DEV_PM_OPS(atl1_pm_ops, atl1_suspend, atl1_resume);
#define ATL1_PM_OPS (&atl1_pm_ops)
-@@ -3148,7 +3151,12 @@ static struct pci_driver atl1_driver = {
+@@ -3147,7 +3150,12 @@ static struct pci_driver atl1_driver = {
.probe = atl1_probe,
- .remove = __devexit_p(atl1_remove),
+ .remove = atl1_remove,
.shutdown = atl1_shutdown,
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29))
.driver.pm = ATL1_PM_OPS,
--- a/drivers/net/wireless/iwlegacy/common.h
+++ b/drivers/net/wireless/iwlegacy/common.h
-@@ -1843,7 +1843,14 @@ __le32 il_add_beacon_time(struct il_priv
+@@ -1835,7 +1835,14 @@ __le32 il_add_beacon_time(struct il_priv
u32 beacon_interval);
#ifdef CONFIG_PM
int __must_check iwl_pci_register_driver(void)
--- a/drivers/net/wireless/libertas/if_spi.c
+++ b/drivers/net/wireless/libertas/if_spi.c
-@@ -1249,6 +1249,7 @@ static int __devexit libertas_spi_remove
+@@ -1249,6 +1249,7 @@ static int libertas_spi_remove(struct sp
return 0;
}
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
-@@ -3203,7 +3203,12 @@ void ieee80211_rx(struct ieee80211_hw *h
+@@ -3243,7 +3243,12 @@ void ieee80211_rx(struct ieee80211_hw *h
drop:
kfree_skb(skb);
}
+#endif
hid->hid_output_raw_report = hidp_output_raw_report;
- return 0;
-@@ -953,6 +1036,7 @@ fault:
+ /* True if device is blacklisted in drivers/hid/hid-core.c */
+@@ -960,6 +1043,7 @@ fault:
return err;
}
int hidp_add_connection(struct hidp_connadd_req *req, struct socket *ctrl_sock, struct socket *intr_sock)
{
-@@ -968,6 +1052,39 @@ int hidp_add_connection(struct hidp_conn
+@@ -975,6 +1059,39 @@ int hidp_add_connection(struct hidp_conn
BT_DBG("rd_data %p rd_size %d", req->rd_data, req->rd_size);
down_write(&hidp_session_sem);
s = __hidp_get_session(&bt_sk(ctrl_sock->sk)->dst);
-@@ -1015,6 +1132,7 @@ int hidp_add_connection(struct hidp_conn
+@@ -1022,6 +1139,7 @@ int hidp_add_connection(struct hidp_conn
__hidp_link_session(session);
+#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,27))
if (req->rd_size > 0) {
err = hidp_setup_hid(session, req);
- if (err)
-@@ -1026,6 +1144,16 @@ int hidp_add_connection(struct hidp_conn
+ if (err && err != -ENODEV)
+@@ -1033,6 +1151,16 @@ int hidp_add_connection(struct hidp_conn
if (err < 0)
goto purge;
}
hidp_set_timer(session);
-@@ -1084,6 +1212,7 @@ unlink:
+@@ -1091,6 +1219,7 @@ unlink:
session->input = NULL;
}
if (session->hid) {
hid_destroy_device(session->hid);
session->hid = NULL;
-@@ -1097,10 +1226,15 @@ purge:
+@@ -1104,10 +1233,15 @@ purge:
skb_queue_purge(&session->ctrl_transmit);
skb_queue_purge(&session->intr_transmit);
struct rfcomm_dlc *dlc = dev->dlc;
--- a/net/bluetooth/sco.c
+++ b/net/bluetooth/sco.c
-@@ -433,8 +433,12 @@ static struct sock *sco_sock_alloc(struc
+@@ -424,8 +424,12 @@ static struct sock *sco_sock_alloc(struc
return sk;
}
{
struct sock *sk;
-@@ -685,7 +689,11 @@ static int sco_sock_recvmsg(struct kiocb
+@@ -676,7 +680,11 @@ static int sco_sock_recvmsg(struct kiocb
return bt_sock_recvmsg(iocb, sock, msg, len, flags);
}
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -1613,6 +1613,7 @@ void ieee80211_sdata_stop(struct ieee802
+@@ -1658,6 +1658,7 @@ void ieee80211_sdata_stop(struct ieee802
* 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;
-@@ -1640,6 +1641,22 @@ void ieee80211_remove_interfaces(struct
+@@ -1685,6 +1686,22 @@ void ieee80211_remove_interfaces(struct
kfree(sdata);
}
}
--- a/drivers/net/wireless/b43/pcmcia.c
+++ b/drivers/net/wireless/b43/pcmcia.c
@@ -63,6 +63,9 @@ static int b43_pcmcia_resume(struct pcmc
- static int __devinit b43_pcmcia_probe(struct pcmcia_device *dev)
+ static int b43_pcmcia_probe(struct pcmcia_device *dev)
{
struct ssb_bus *ssb;
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37))
int err = -ENOMEM;
int res = 0;
-@@ -72,6 +75,7 @@ static int __devinit b43_pcmcia_probe(st
+@@ -72,6 +75,7 @@ static int b43_pcmcia_probe(struct pcmci
err = -ENODEV;
dev->config_flags |= CONF_ENABLE_IRQ;
dev->resource[2]->flags |= WIN_ENABLE | WIN_DATA_WIDTH_16 |
-@@ -79,21 +83,46 @@ static int __devinit b43_pcmcia_probe(st
+@@ -79,21 +83,46 @@ static int b43_pcmcia_probe(struct pcmci
dev->resource[2]->start = 0;
dev->resource[2]->end = SSB_CORE_SIZE;
res = pcmcia_request_window(dev, dev->resource[2], 250);
if (err)
goto err_disable;
dev->priv = ssb;
-@@ -122,7 +151,13 @@ static void __devexit b43_pcmcia_remove(
+@@ -122,7 +151,13 @@ static void b43_pcmcia_remove(struct pcm
static struct pcmcia_driver b43_pcmcia_driver = {
.owner = THIS_MODULE,
+#endif
.id_table = b43_pcmcia_tbl,
.probe = b43_pcmcia_probe,
- .remove = __devexit_p(b43_pcmcia_remove),
+ .remove = b43_pcmcia_remove,
--- a/drivers/net/wireless/libertas/if_cs.c
+++ b/drivers/net/wireless/libertas/if_cs.c
@@ -757,7 +757,11 @@ static void if_cs_prog_firmware(struct l
.suspend = spectrum_cs_suspend,
--- a/drivers/ssb/main.c
+++ b/drivers/ssb/main.c
-@@ -504,7 +504,11 @@ static int ssb_devices_register(struct s
+@@ -510,7 +510,11 @@ static int ssb_devices_register(struct s
break;
case SSB_BUSTYPE_PCMCIA:
#ifdef CONFIG_SSB_PCMCIAHOST
}
--- a/include/net/mac80211.h
+++ b/include/net/mac80211.h
-@@ -2494,7 +2494,11 @@ struct ieee80211_ops {
+@@ -2499,7 +2499,11 @@ struct ieee80211_ops {
void (*stop_ap)(struct ieee80211_hw *hw, struct ieee80211_vif *vif);
u64 (*prepare_multicast)(struct ieee80211_hw *hw,
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
-@@ -925,7 +925,12 @@ struct ieee80211_local {
+@@ -927,7 +927,12 @@ struct ieee80211_local {
struct work_struct reconfig_filter;
/* aggregated multicast list */
--- a/net/mac80211/iface.c
+++ b/net/mac80211/iface.c
-@@ -762,8 +762,13 @@ static void ieee80211_do_stop(struct iee
+@@ -807,8 +807,13 @@ static void ieee80211_do_stop(struct iee
if (sdata->dev) {
netif_addr_lock_bh(sdata->dev);
spin_lock_bh(&local->filter_lock);
spin_unlock_bh(&local->filter_lock);
netif_addr_unlock_bh(sdata->dev);
-@@ -920,7 +925,12 @@ static void ieee80211_set_multicast_list
+@@ -965,7 +970,12 @@ static void ieee80211_set_multicast_list
sdata->flags ^= IEEE80211_SDATA_PROMISC;
}
spin_lock_bh(&local->filter_lock);
spin_unlock_bh(&local->filter_lock);
/* be a bit nasty */
-@@ -642,9 +646,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
+@@ -645,9 +649,11 @@ struct ieee80211_hw *ieee80211_alloc_hw(
wiphy->ht_capa_mod_mask = &mac80211_ht_capa_mod_mask;
INIT_LIST_HEAD(&local->interfaces);
int retry = 0;
while (atomic_read(&sdiodev->suspend) && retry++ != 30)
wait_event_timeout(*wq, false, HZ/100);
-@@ -550,7 +550,7 @@ static void brcmf_ops_sdio_remove(struct
+@@ -548,7 +548,7 @@ static void brcmf_ops_sdio_remove(struct
brcmf_dbg(TRACE, "Exit\n");
}
static int brcmf_sdio_suspend(struct device *dev)
{
mmc_pm_flag_t sdio_flags;
-@@ -600,7 +600,7 @@ static struct sdio_driver brcmf_sdmmc_dr
+@@ -598,7 +598,7 @@ static struct sdio_driver brcmf_sdmmc_dr
.remove = brcmf_ops_sdio_remove,
.name = "brcmfmac",
.id_table = brcmf_sdmmc_ids,
--- a/net/wireless/util.c
+++ b/net/wireless/util.c
-@@ -813,7 +813,7 @@ int cfg80211_change_iface(struct cfg8021
+@@ -816,7 +816,7 @@ int cfg80211_change_iface(struct cfg8021
return -EOPNOTSUPP;
/* if it's part of a bridge, reject changing type to station/ibss */
ntype == NL80211_IFTYPE_P2P_CLIENT))
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -2014,7 +2014,7 @@ static int nl80211_valid_4addr(struct cf
+@@ -1960,7 +1960,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
-@@ -1194,6 +1194,10 @@ static void __exit ieee80211_exit(void)
+@@ -1197,6 +1197,10 @@ static void __exit ieee80211_exit(void)
rc80211_minstrel_ht_exit();
rc80211_minstrel_exit();
.ndo_do_ioctl = atlx_ioctl,
.ndo_tx_timeout = atlx_tx_timeout,
#ifdef CONFIG_NET_POLL_CONTROLLER
-@@ -3029,11 +3031,13 @@ static int __devinit atl1_probe(struct p
+@@ -3028,11 +3030,13 @@ static int atl1_probe(struct pci_dev *pd
netdev->features |= NETIF_F_SG;
netdev->features |= (NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX);
/*
* patch for some L1 of old version,
-@@ -3646,6 +3650,14 @@ static int atl1_set_pauseparam(struct ne
+@@ -3645,6 +3649,14 @@ static int atl1_set_pauseparam(struct ne
return 0;
}
static void atl1_get_strings(struct net_device *netdev, u32 stringset,
u8 *data)
{
-@@ -3718,4 +3730,10 @@ static const struct ethtool_ops atl1_eth
+@@ -3717,4 +3729,10 @@ static const struct ethtool_ops atl1_eth
.nway_reset = atl1_nway_reset,
.get_ethtool_stats = atl1_get_ethtool_stats,
.get_sset_count = atl1_get_sset_count,
.ndo_do_ioctl = atl2_ioctl,
.ndo_tx_timeout = atl2_tx_timeout,
#ifdef CONFIG_NET_POLL_CONTROLLER
-@@ -1421,8 +1425,12 @@ static int __devinit atl2_probe(struct p
+@@ -1420,8 +1424,12 @@ static int atl2_probe(struct pci_dev *pd
err = -EIO;
/* Init PHY as early as possible due to power saving issue */
atl2_phy_init(&adapter->hw);
-@@ -1849,6 +1857,13 @@ static int atl2_set_settings(struct net_
+@@ -1848,6 +1856,13 @@ static int atl2_set_settings(struct net_
return 0;
}
static u32 atl2_get_msglevel(struct net_device *netdev)
{
return 0;
-@@ -2118,6 +2133,14 @@ static const struct ethtool_ops atl2_eth
+@@ -2117,6 +2132,14 @@ static const struct ethtool_ops atl2_eth
.get_eeprom_len = atl2_get_eeprom_len,
.get_eeprom = atl2_get_eeprom,
.set_eeprom = atl2_set_eeprom,
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
-@@ -4910,7 +4910,9 @@ static int nl80211_dump_scan(struct sk_b
+@@ -4919,7 +4919,9 @@ static int nl80211_dump_scan(struct sk_b
spin_lock_bh(&rdev->bss_lock);
cfg80211_bss_expire(rdev);
--- a/net/bluetooth/hci_core.c
+++ b/net/bluetooth/hci_core.c
-@@ -1789,8 +1789,12 @@ int hci_register_dev(struct hci_dev *hde
+@@ -1792,8 +1792,12 @@ int hci_register_dev(struct hci_dev *hde
list_add(&hdev->list, &hci_dev_list);
write_unlock(&hci_dev_list_lock);
--- a/drivers/net/wireless/b43legacy/main.c
+++ b/drivers/net/wireless/b43legacy/main.c
-@@ -2504,11 +2504,11 @@ static void b43legacy_op_tx(struct ieee8
+@@ -2529,11 +2529,11 @@ static void b43legacy_op_tx(struct ieee8
}
B43legacy_WARN_ON(skb_shinfo(skb)->nr_frags);
atl1c_hw_set_mac_addr(&adapter->hw, adapter->hw.mac_addr);
-@@ -2569,7 +2571,9 @@ static int __devinit atl1c_probe(struct
+@@ -2568,7 +2570,9 @@ static int atl1c_probe(struct pci_dev *p
}
if (atl1c_read_mac_addr(&adapter->hw)) {
/* got a random MAC address, set NET_ADDR_RANDOM to netdev */
return 0;
--- a/drivers/net/ethernet/atheros/atlx/atl1.c
+++ b/drivers/net/ethernet/atheros/atlx/atl1.c
-@@ -3061,7 +3061,9 @@ static int __devinit atl1_probe(struct p
+@@ -3060,7 +3060,9 @@ static int atl1_probe(struct pci_dev *pd
/* copy the MAC address out of the EEPROM */
if (atl1_read_mac_addr(&adapter->hw)) {
/* mark random mac */
module_usb_driver(carl9170_driver);
--- a/drivers/net/wireless/brcm80211/brcmfmac/usb.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/usb.c
-@@ -1502,7 +1502,9 @@ static struct usb_driver brcmf_usbdrvr =
+@@ -1507,7 +1507,9 @@ static struct usb_driver brcmf_usbdrvr =
.resume = brcmf_usb_resume,
.reset_resume = brcmf_usb_reset_resume,
.supports_autosuspend = 1,
module_usb_driver(rt2500usb_driver);
--- a/drivers/net/wireless/rt2x00/rt2800usb.c
+++ b/drivers/net/wireless/rt2x00/rt2800usb.c
-@@ -1284,7 +1284,9 @@ static struct usb_driver rt2800usb_drive
+@@ -1285,7 +1285,9 @@ static struct usb_driver rt2800usb_drive
.suspend = rt2x00usb_suspend,
.resume = rt2x00usb_resume,
.reset_resume = rt2x00usb_resume,