Commit fcfa81aa authored by Ben Dooks's avatar Ben Dooks Committed by Jeff Garzik

DM9000: Remove old timer based poll routines

Remove the timer based MII phy polling, as this is
currently broken with the new EEPROM code that now
uses mutexes to protect the phy access.

This will need to be replaced in the future by some
form of mutex safe mechanism for reading the MII
phy status.

The replacement has not been done here as changing
this patch, which is early in the sequence has quite
a knock-on effect. Once this series is merged, then
a new presentation of an patch to poll the MII link
status can be added.
Signed-off-by: default avatarBen Dooks <ben-linux@fluff.org>
Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
parent 1a5f1c4f
...@@ -81,8 +81,6 @@ ...@@ -81,8 +81,6 @@
#define CARDNAME "dm9000" #define CARDNAME "dm9000"
#define PFX CARDNAME ": " #define PFX CARDNAME ": "
#define DM9000_TIMER_WUT jiffies+(HZ*2) /* timer wakeup time : 2 second */
#ifdef CONFIG_BLACKFIN #ifdef CONFIG_BLACKFIN
#define readsb insb #define readsb insb
#define readsw insw #define readsw insw
...@@ -131,7 +129,6 @@ typedef struct board_info { ...@@ -131,7 +129,6 @@ typedef struct board_info {
struct resource *data_req; struct resource *data_req;
struct resource *irq_res; struct resource *irq_res;
struct timer_list timer;
unsigned char srom[128]; unsigned char srom[128];
spinlock_t lock; spinlock_t lock;
...@@ -154,8 +151,6 @@ static int dm9000_open(struct net_device *); ...@@ -154,8 +151,6 @@ static int dm9000_open(struct net_device *);
static int dm9000_start_xmit(struct sk_buff *, struct net_device *); static int dm9000_start_xmit(struct sk_buff *, struct net_device *);
static int dm9000_stop(struct net_device *); static int dm9000_stop(struct net_device *);
static void dm9000_timer(unsigned long);
static void dm9000_init_dm9000(struct net_device *); static void dm9000_init_dm9000(struct net_device *);
static irqreturn_t dm9000_interrupt(int, void *); static irqreturn_t dm9000_interrupt(int, void *);
...@@ -638,13 +633,6 @@ dm9000_open(struct net_device *dev) ...@@ -638,13 +633,6 @@ dm9000_open(struct net_device *dev)
/* Init driver variable */ /* Init driver variable */
db->dbug_cnt = 0; db->dbug_cnt = 0;
/* set and active a timer process */
init_timer(&db->timer);
db->timer.expires = DM9000_TIMER_WUT;
db->timer.data = (unsigned long) dev;
db->timer.function = &dm9000_timer;
add_timer(&db->timer);
mii_check_media(&db->mii, netif_msg_link(db), 1); mii_check_media(&db->mii, netif_msg_link(db), 1);
netif_start_queue(dev); netif_start_queue(dev);
...@@ -766,9 +754,6 @@ dm9000_stop(struct net_device *ndev) ...@@ -766,9 +754,6 @@ dm9000_stop(struct net_device *ndev)
dm9000_dbg(db, 1, "entering %s\n", __func__); dm9000_dbg(db, 1, "entering %s\n", __func__);
/* deleted timer */
del_timer(&db->timer);
netif_stop_queue(ndev); netif_stop_queue(ndev);
netif_carrier_off(ndev); netif_carrier_off(ndev);
...@@ -849,25 +834,6 @@ dm9000_interrupt(int irq, void *dev_id) ...@@ -849,25 +834,6 @@ dm9000_interrupt(int irq, void *dev_id)
return IRQ_HANDLED; return IRQ_HANDLED;
} }
/*
* A periodic timer routine
* Dynamic media sense, allocated Rx buffer...
*/
static void
dm9000_timer(unsigned long data)
{
struct net_device *dev = (struct net_device *) data;
board_info_t *db = (board_info_t *) dev->priv;
dm9000_dbg(db, 3, "entering %s\n", __func__);
mii_check_media(&db->mii, netif_msg_link(db), 0);
/* Set timer again */
db->timer.expires = DM9000_TIMER_WUT;
add_timer(&db->timer);
}
struct dm9000_rxhdr { struct dm9000_rxhdr {
u8 RxPktReady; u8 RxPktReady;
u8 RxStatus; u8 RxStatus;
......
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