From patchwork Sat Mar 21 05:36:39 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: stephen hemminger X-Patchwork-Id: 24814 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id 93F19DDED1 for ; Sat, 21 Mar 2009 16:49:49 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1761449AbZCUFt0 (ORCPT ); Sat, 21 Mar 2009 01:49:26 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1761350AbZCUFtX (ORCPT ); Sat, 21 Mar 2009 01:49:23 -0400 Received: from suva.vyatta.com ([76.74.103.44]:36737 "EHLO suva.vyatta.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1761157AbZCUFsa (ORCPT ); Sat, 21 Mar 2009 01:48:30 -0400 Received: from suva.vyatta.com (suva [127.0.0.1]) by suva.vyatta.com (8.13.7/8.13.7) with ESMTP id n2L5mOFK027334; Fri, 20 Mar 2009 22:48:24 -0700 Received: (from shemminger@localhost) by suva.vyatta.com (8.13.7/8.13.7/Submit) id n2L5mOsg027333; Fri, 20 Mar 2009 22:48:24 -0700 Message-Id: <20090321053718.065171867@vyatta.com> References: <20090321053527.316395697@vyatta.com> User-Agent: quilt/0.46-1 Date: Fri, 20 Mar 2009 22:36:39 -0700 From: Stephen Hemminger To: David Miller , jkosina@suse.cz, dstreba@suse.cz Cc: netdev@vger.kernel.org, linux-wireless@vger.kernel.org Subject: [PATCH 72/77] ipw2x00: convert infrastructure for use by net_device_ops Content-Disposition: inline; filename=ipw-netdev.patch Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Expose routines so drivers can hook. Only set ptrs in netdev if using old compat code. Signed-off-by: Stephen Hemminger --- drivers/net/wireless/ipw2x00/ieee80211.h | 1 + drivers/net/wireless/ipw2x00/libipw_module.c | 5 ++++- drivers/net/wireless/ipw2x00/libipw_tx.c | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) --- a/drivers/net/wireless/ipw2x00/libipw_module.c 2009-03-20 21:39:32.901088992 -0700 +++ b/drivers/net/wireless/ipw2x00/libipw_module.c 2009-03-20 21:39:34.508964994 -0700 @@ -131,13 +131,14 @@ static void ieee80211_networks_initializ &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)) return -EINVAL; dev->mtu = new_mtu; return 0; } +EXPORT_SYMBOL(ieee80211_change_mtu); struct net_device *alloc_ieee80211(int sizeof_priv) { @@ -153,8 +154,10 @@ struct net_device *alloc_ieee80211(int s goto failed; } ieee = netdev_priv(dev); +#ifdef CONFIG_COMPAT_NET_DEV_OPS dev->hard_start_xmit = ieee80211_xmit; dev->change_mtu = ieee80211_change_mtu; +#endif ieee->dev = dev; --- a/drivers/net/wireless/ipw2x00/ieee80211.h 2009-03-20 21:39:32.900089558 -0700 +++ b/drivers/net/wireless/ipw2x00/ieee80211.h 2009-03-20 21:39:34.509964918 -0700 @@ -1016,6 +1016,7 @@ static inline int ieee80211_is_cck_rate( /* ieee80211.c */ extern void free_ieee80211(struct net_device *dev); 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, unsigned long age_secs); --- a/drivers/net/wireless/ipw2x00/libipw_tx.c 2009-03-20 21:39:59.063966304 -0700 +++ b/drivers/net/wireless/ipw2x00/libipw_tx.c 2009-03-20 21:40:37.667839502 -0700 @@ -541,5 +541,6 @@ int ieee80211_xmit(struct sk_buff *skb, dev->stats.tx_errors++; return 1; } +EXPORT_SYMBOL(ieee80211_xmit); EXPORT_SYMBOL(ieee80211_txb_free);