lkml.org 
[lkml]   [2001]   [Oct]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
Subject[PATCH] MODULE_DEVICE_TABLE for Multi-Tech serial card driver
From

Ugh .. yet another MODULE_DEVICE_TABLE, looks like many drivers lack it.
Also some static zero initializers removed.

--
Andrey Panin | Embedded systems software engineer
pazke@orbita1.ru | PGP key: http://www.orbita1.ru/~pazke/AndreyPanin.ascdiff -u -X dontdiff linux.old/drivers/char/isicom.c linux/drivers/char/isicom.c
--- linux.old/drivers/char/isicom.c Mon Oct 15 15:34:17 2001
+++ linux/drivers/char/isicom.c Fri Oct 19 16:19:06 2001
@@ -60,24 +60,27 @@

#include <linux/isicom.h>

-static int device_id[] = { 0x2028,
- 0x2051,
- 0x2052,
- 0x2053,
- 0x2054,
- 0x2055,
- 0x2056,
- 0x2057,
- 0x2058
- };
+static struct pci_device_id isicom_pci_tbl[] = {
+ { VENDOR_ID, 0x2028, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2051, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2052, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2053, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2054, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2055, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2056, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2057, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { VENDOR_ID, 0x2058, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
+ { 0 }
+};
+MODULE_DEVICE_TABLE(pci, isicom_pci_tbl);

-static int isicom_refcount = 0;
+static int isicom_refcount;
static int prev_card = 3; /* start servicing isi_card[0] */
-static struct isi_board * irq_to_board[16] = { NULL, };
+static struct isi_board * irq_to_board[16];
static struct tty_driver isicom_normal, isicom_callout;
-static struct tty_struct * isicom_table[PORT_COUNT] = { NULL, };
-static struct termios * isicom_termios[PORT_COUNT] = { NULL, };
-static struct termios * isicom_termios_locked[PORT_COUNT] = { NULL, };
+static struct tty_struct * isicom_table[PORT_COUNT];
+static struct termios * isicom_termios[PORT_COUNT];
+static struct termios * isicom_termios_locked[PORT_COUNT];

static struct isi_board isi_card[BOARD_COUNT];
static struct isi_port isi_ports[PORT_COUNT];
@@ -1974,7 +1977,7 @@
for (idx=0; idx < DEVID_COUNT; idx++) {
dev = NULL;
for (;;){
- if (!(dev = pci_find_device(VENDOR_ID, device_id[idx], dev)))
+ if (!(dev = pci_find_device(VENDOR_ID, isicom_pci_tbl[idx].device, dev)))
break;
if (card >= BOARD_COUNT)
break;
@@ -1988,7 +1991,7 @@
* space.
*/
pciirq = dev->irq;
- printk(KERN_INFO "ISI PCI Card(Device ID 0x%x)\n", device_id[idx]);
+ printk(KERN_INFO "ISI PCI Card(Device ID 0x%x)\n", isicom_pci_tbl[idx].device);
/*
* allot the first empty slot in the array
*/ [unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2005-03-22 13:08    [W:0.032 / U:0.440 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site