From 15de3bc28b7104e83fe320449a10e68bb27bb68b Mon Sep 17 00:00:00 2001 From: Lars-Peter Clausen Date: Wed, 22 Jul 2009 21:34:11 +0000 Subject: [PATCH] [s3c24xx] ar6000: use net_device_ops git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16959 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../drivers/ar6000/ar6000/ar6000_drv.c | 27 +++++++------------ .../drivers/ar6000/ar6000/ioctl.c | 10 +------ 2 files changed, 10 insertions(+), 27 deletions(-) diff --git a/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ar6000_drv.c b/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ar6000_drv.c index a37ef7238c..90533ab961 100644 --- a/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ar6000_drv.c +++ b/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ar6000_drv.c @@ -48,7 +48,6 @@ A_TIMER aptcTimer; APTC_TRAFFIC_RECORD aptcTR; #endif /* ADAPTIVE_POWER_THROUGHPUT_CONTROL */ -int bmienable = 0; unsigned int bypasswmi = 0; unsigned int debuglevel = 0; int tspecCompliance = 1; @@ -68,7 +67,6 @@ unsigned int testmode =0; #endif #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) -module_param(bmienable, int, 0644); module_param(bypasswmi, int, 0644); module_param(debuglevel, int, 0644); module_param(tspecCompliance, int, 0644); @@ -90,7 +88,6 @@ module_param(testmode, int, 0644); #define __user /* for linux 2.4 and lower */ -MODULE_PARM(bmienable,"i"); MODULE_PARM(bypasswmi,"i"); MODULE_PARM(debuglevel, "i"); MODULE_PARM(onebitmode,"i"); @@ -701,6 +698,14 @@ static int alloc_raw_buffers(AR_SOFTC_T *ar) return 0; } +static const struct net_device_ops ar6000_netdev_ops = { + .ndo_init = &ar6000_init, + .ndo_open = &ar6000_open, + .ndo_stop = &ar6000_close, + .ndo_start_xmit = &ar6000_data_tx, + .ndo_get_stats = &ar6000_get_stats, + .ndo_do_ioctl = &ar6000_ioctl, +}; /* * HTC Event handlers */ @@ -858,21 +863,7 @@ ar6000_avail_ev(HTC_HANDLE HTCHandle) spin_lock_init(&ar->arLock); - /* Don't install the init function if BMI is requested */ - if(!bmienable) - { - dev->init = ar6000_init; - } else { - AR_DEBUG_PRINTF(" BMI enabled \n"); - } - - dev->open = &ar6000_open; - dev->stop = &ar6000_close; - dev->hard_start_xmit = &ar6000_data_tx; - dev->get_stats = &ar6000_get_stats; - - /* dev->tx_timeout = ar6000_tx_timeout; */ - dev->do_ioctl = &ar6000_ioctl; + dev->netdev_ops = &ar6000_netdev_ops; dev->watchdog_timeo = AR6000_TX_TIMEOUT; ar6000_ioctl_iwsetup(&ath_iw_handler_def); dev->wireless_handlers = &ath_iw_handler_def; diff --git a/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ioctl.c b/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ioctl.c index 0b6e91ad09..04aa911f32 100644 --- a/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ioctl.c +++ b/target/linux/s3c24xx/files-2.6.30/drivers/ar6000/ar6000/ioctl.c @@ -25,7 +25,6 @@ extern USER_RSSI_THOLD rssi_map[12]; extern unsigned int wmitimeout; extern A_WAITQUEUE_HEAD arEvent; extern int tspecCompliance; -extern int bmienable; extern int bypasswmi; static int @@ -1061,14 +1060,7 @@ int ar6000_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) #endif /* CONFIG_HOST_TCMD_SUPPORT */ case AR6000_XIOCTL_BMI_DONE: - if(bmienable) - { - ret = ar6000_init(dev); - } - else - { - ret = BMIDone(hifDevice); - } + ret = BMIDone(hifDevice); break; case AR6000_XIOCTL_BMI_READ_MEMORY: