Hi
flags should be long, not int.
build/drivers/sgi/char/sgiserial.c | 9 ++++++---
1 files changed, 6 insertions(+), 3 deletions(-)
diff -puN build/drivers/sgi/char/sgiserial.c~sgserial_flags
build/drivers/sgi/char/sgiserial.c
--- 24/build/drivers/sgi/char/sgiserial.c~sgserial_flags 2003-03-22
01:37:45.000000000 +0100
+++ 24-quintela/build/drivers/sgi/char/sgiserial.c 2003-03-22
01:43:17.000000000 +0100
@@ -886,7 +886,8 @@ static void zs_cons_put_char(char ch)
{
struct sgi_zschannel *chan = zs_conschan;
volatile unsigned char junk;
- int flags, loops = 0;
+ unsigned long flags;
+ int loops = 0;
save_flags(flags); cli();
while(((junk = chan->control) & Tx_BUF_EMP)==0 && loops < 10000) {
@@ -911,7 +912,8 @@ static void rs_put_char(struct tty_struc
struct sgi_zschannel *chan =
((struct sgi_serial *)tty->driver_data)->zs_channel;
volatile unsigned char junk;
- int flags, loops = 0;
+ unsigned long flags;
+ int loops = 0;
save_flags(flags); cli();
while(((junk = chan->control) & Tx_BUF_EMP)==0 && loops < 10000) {
@@ -1854,7 +1856,8 @@ volatile int test_done;
/* rs_init inits the driver */
int rs_init(void)
{
- int chip, channel, i, flags;
+ unsigned long flags;
+ int chip, channel, i;
struct sgi_serial *info;
_
--
In theory, practice and theory are the same, but in practice they
are different -- Larry McVoy
|