Commit d5b3b9ae authored by Stephen Hemminger's avatar Stephen Hemminger Committed by David S. Miller

ipw2x00: convert infrastructure for use by net_device_ops

Expose routines so drivers can hook. Only set ptrs in netdev
if using old compat code.
Signed-off-by: default avatarStephen Hemminger <shemminger@vyatta.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent ce55cbaf
...@@ -1016,6 +1016,7 @@ static inline int ieee80211_is_cck_rate(u8 rate) ...@@ -1016,6 +1016,7 @@ static inline int ieee80211_is_cck_rate(u8 rate)
/* ieee80211.c */ /* ieee80211.c */
extern void free_ieee80211(struct net_device *dev); extern void free_ieee80211(struct net_device *dev);
extern struct net_device *alloc_ieee80211(int sizeof_priv); extern struct net_device *alloc_ieee80211(int sizeof_priv);
extern int ieee80211_change_mtu(struct net_device *dev, int new_mtu);
extern void ieee80211_networks_age(struct ieee80211_device *ieee, extern void ieee80211_networks_age(struct ieee80211_device *ieee,
unsigned long age_secs); unsigned long age_secs);
......
...@@ -131,13 +131,14 @@ static void ieee80211_networks_initialize(struct ieee80211_device *ieee) ...@@ -131,13 +131,14 @@ static void ieee80211_networks_initialize(struct ieee80211_device *ieee)
&ieee->network_free_list); &ieee->network_free_list);
} }
static int ieee80211_change_mtu(struct net_device *dev, int new_mtu) int ieee80211_change_mtu(struct net_device *dev, int new_mtu)
{ {
if ((new_mtu < 68) || (new_mtu > IEEE80211_DATA_LEN)) if ((new_mtu < 68) || (new_mtu > IEEE80211_DATA_LEN))
return -EINVAL; return -EINVAL;
dev->mtu = new_mtu; dev->mtu = new_mtu;
return 0; return 0;
} }
EXPORT_SYMBOL(ieee80211_change_mtu);
struct net_device *alloc_ieee80211(int sizeof_priv) struct net_device *alloc_ieee80211(int sizeof_priv)
{ {
...@@ -153,8 +154,10 @@ struct net_device *alloc_ieee80211(int sizeof_priv) ...@@ -153,8 +154,10 @@ struct net_device *alloc_ieee80211(int sizeof_priv)
goto failed; goto failed;
} }
ieee = netdev_priv(dev); ieee = netdev_priv(dev);
#ifdef CONFIG_COMPAT_NET_DEV_OPS
dev->hard_start_xmit = ieee80211_xmit; dev->hard_start_xmit = ieee80211_xmit;
dev->change_mtu = ieee80211_change_mtu; dev->change_mtu = ieee80211_change_mtu;
#endif
ieee->dev = dev; ieee->dev = dev;
......
...@@ -541,5 +541,6 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev) ...@@ -541,5 +541,6 @@ int ieee80211_xmit(struct sk_buff *skb, struct net_device *dev)
dev->stats.tx_errors++; dev->stats.tx_errors++;
return 1; return 1;
} }
EXPORT_SYMBOL(ieee80211_xmit);
EXPORT_SYMBOL(ieee80211_txb_free); EXPORT_SYMBOL(ieee80211_txb_free);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment