diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2001-01-10 05:27:25 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2001-01-10 05:27:25 +0000 |
commit | c9c06167e7933d93a6e396174c68abf242294abb (patch) | |
tree | d9a8bb30663e9a3405a1ef37ffb62bc14b9f019f /drivers/net/wan | |
parent | f79e8cc3c34e4192a3e5ef4cc9c6542fdef703c0 (diff) |
Merge with Linux 2.4.0-test12.
Diffstat (limited to 'drivers/net/wan')
-rw-r--r-- | drivers/net/wan/comx-hw-mixcom.c | 2 | ||||
-rw-r--r-- | drivers/net/wan/comx.h | 4 | ||||
-rw-r--r-- | drivers/net/wan/sdlamain.c | 24 | ||||
-rw-r--r-- | drivers/net/wan/x25_asy.h | 2 |
4 files changed, 16 insertions, 16 deletions
diff --git a/drivers/net/wan/comx-hw-mixcom.c b/drivers/net/wan/comx-hw-mixcom.c index 2bf564aba..e6a2837b8 100644 --- a/drivers/net/wan/comx-hw-mixcom.c +++ b/drivers/net/wan/comx-hw-mixcom.c @@ -76,7 +76,7 @@ static unsigned char* hscx_versions[]={"A1", NULL, "A2", NULL, "A3", "2.1"}; struct mixcom_privdata { u16 clock; char channel; - char txbusy; + long txbusy; struct sk_buff *sending; unsigned tx_ptr; struct sk_buff *recving; diff --git a/drivers/net/wan/comx.h b/drivers/net/wan/comx.h index b343eb4ca..1461d5fb1 100644 --- a/drivers/net/wan/comx.h +++ b/drivers/net/wan/comx.h @@ -55,12 +55,12 @@ struct comx_channel { unsigned char line_status; struct timer_list lineup_timer; // against line jitter - int lineup_pending; + long int lineup_pending; unsigned char lineup_delay; #if 0 struct timer_list reset_timer; // for board resetting - int reset_pending; + long reset_pending; int reset_timeout; #endif diff --git a/drivers/net/wan/sdlamain.c b/drivers/net/wan/sdlamain.c index 520b1341a..4ab0de121 100644 --- a/drivers/net/wan/sdlamain.c +++ b/drivers/net/wan/sdlamain.c @@ -106,14 +106,7 @@ static int active; /* number of active cards */ static sdla_t* card_array; /* adapter data space */ /* Task queue element for creating a 'thread' */ -static struct tq_struct sdla_tq = -{ - NULL, /* .next */ - 0, /* .sync */ - &sdla_poll, /* .routine */ - NULL /* .data */ -}; - +static struct tq_struct sdla_tq = { routine: sdla_poll }; /******* Kernel Loadable Module Entry Points ********************************/ @@ -480,8 +473,11 @@ static int setup (wan_device_t* wandev, wandev_conf_t* conf) if(card->hw.type != SDLA_S514 && !card->wandev.piggyback) request_region(card->hw.port, card->hw.io_range, wandev->name); - if (++active == 1) - queue_task(&sdla_tq, &tq_scheduler); + if (++active == 1) { + MOD_INC_USE_COUNT; + if (schedule_task(&sdla_tq) == 0) + MOD_DEC_USE_COUNT; + } wandev->critical = 0; return 0; @@ -859,8 +855,12 @@ STATIC void sdla_poll (void* data) card->poll(card); } } - if (active) - queue_task(&sdla_tq, &tq_scheduler); + if (active) { + MOD_INC_USE_COUNT; + if (schedule_task(&sdla_tq) == 0) /* Surely not? */ + MOD_DEC_USE_COUNT; + } + MOD_DEC_USE_COUNT; } /*============================================================================ diff --git a/drivers/net/wan/x25_asy.h b/drivers/net/wan/x25_asy.h index 5abeceb20..c54e2ed18 100644 --- a/drivers/net/wan/x25_asy.h +++ b/drivers/net/wan/x25_asy.h @@ -42,7 +42,7 @@ struct x25_asy { int mtu; /* Our mtu (to spot changes!) */ int buffsize; /* Max buffers sizes */ - unsigned int flags; /* Flag values/ mode etc */ + unsigned long flags; /* Flag values/ mode etc */ #define SLF_INUSE 0 /* Channel in use */ #define SLF_ESCAPE 1 /* ESC received */ #define SLF_ERROR 2 /* Parity, etc. error */ |