2002-01-30 23:32:21

by Andi Kleen

[permalink] [raw]
Subject: [PATCH] Fix rocket port driver


This patch fixes the rocketport serial driver to compile again
(after the kdev_t changes) and also adds support for a rocketport
card I managed to buy second hand with a non standard pci ID.

Patch for 2.5.3. Please apply.

-Andi


--- linux-2.5.3-work/drivers/char/rocket.c-o Fri Sep 21 19:55:22 2001
+++ linux-2.5.3-work/drivers/char/rocket.c Wed Jan 30 23:00:48 2002
@@ -227,7 +227,7 @@
if (!info)
return 1;
if (info->magic != RPORT_MAGIC) {
- printk(badmagic, MAJOR(device), MINOR(device), routine);
+ printk(badmagic, major(device), minor(device), routine);
return 1;
}
#endif
@@ -896,7 +896,7 @@
CHANNEL_t *cp;
unsigned long page;

- line = MINOR(tty->device) - tty->driver.minor_start;
+ line = minor(tty->device) - tty->driver.minor_start;
if ((line < 0) || (line >= MAX_RP_PORTS))
return -ENODEV;
if (!tmp_buf) {
@@ -1467,7 +1467,7 @@
{
if (tty)
sprintf(buf, "%s%d", tty->driver.name,
- MINOR(tty->device) - tty->driver.minor_start +
+ minor(tty->device) - tty->driver.minor_start +
tty->driver.name_base);
else
strcpy(buf, "NULL tty");
@@ -1964,6 +1964,10 @@
str = "8-port Modem";
max_num_aiops = 1;
break;
+ case 0x8:
+ str = "mysterious 8 port";
+ max_num_aiops = 1;
+ break;
default:
str = "(unknown/unsupported)";
max_num_aiops = 0;
@@ -2042,6 +2046,10 @@
PCI_DEVICE_ID_RP8M, i, &bus, &device_fn))
if(register_PCI(count+boards_found, bus, device_fn))
count++;
+ if(!pcibios_find_device(PCI_VENDOR_ID_RP,
+ 0x8, i, &bus, &device_fn))
+ if(register_PCI(count+boards_found, bus, device_fn))
+ count++;
}
return(count);
}


2002-01-31 01:17:08

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH] Fix rocket port driver

On Thu, Jan 31, 2002 at 12:31:30AM +0100, Andi Kleen wrote:

Cool.


> @@ -2042,6 +2046,10 @@
> PCI_DEVICE_ID_RP8M, i, &bus, &device_fn))
> if(register_PCI(count+boards_found, bus, device_fn))
> count++;
> + if(!pcibios_find_device(PCI_VENDOR_ID_RP,
> + 0x8, i, &bus, &device_fn))
> + if(register_PCI(count+boards_found, bus, device_fn))
> + count++;

Would it be possible to beg and plead and convince you to convert this
driver to the new PCI API?

It hasn't been touched in ages AFAICS, and both 2.4 as well as 2.5 would
greatly benefit from such a [tested] change.

Jeff



2002-01-31 01:27:01

by Andi Kleen

[permalink] [raw]
Subject: Re: [PATCH] Fix rocket port driver

On Thu, Jan 31, 2002 at 02:16:40AM +0100, Jeff Garzik wrote:
> > @@ -2042,6 +2046,10 @@
> > PCI_DEVICE_ID_RP8M, i, &bus, &device_fn))
> > if(register_PCI(count+boards_found, bus, device_fn))
> > count++;
> > + if(!pcibios_find_device(PCI_VENDOR_ID_RP,
> > + 0x8, i, &bus, &device_fn))
> > + if(register_PCI(count+boards_found, bus, device_fn))
> > + count++;
>
> Would it be possible to beg and plead and convince you to convert this
> driver to the new PCI API?

I can do that, but not tonight.

Linus, Dave, please does that not let stop you from merging my previous
patch anyways until I get to it..

>
> It hasn't been touched in ages AFAICS, and both 2.4 as well as 2.5 would
> greatly benefit from such a [tested] change.

Comtrol has a newer "beta" driver on their ftp site, but it only adds support
for some new hardware features, but doesn't change much otherwise.

-Andi

2002-01-31 01:27:00

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH] Fix rocket port driver

On Thu, Jan 31, 2002 at 02:24:13AM +0100, Andi Kleen wrote:
> > Would it be possible to beg and plead and convince you to convert this
> > driver to the new PCI API?
>
> I can do that, but not tonight.
>
> Linus, Dave, please does that not let stop you from merging my previous
> patch anyways until I get to it..

Agreed...

Jeff