
From: Olivier Blin <oblin@mandriva.com>

This patch adds support for the Olitec ISDN PCI card in the hisax gazel
driver.  The gazel driver supports this card, but wasn't aware of its PCI
ids.  Users used to modify the PCI ids of a supported card in
include/linux/pci_ids.h and recompile their kernel to get this card
running, as said in most Howtos.  This patch makes the hisax gazel driver
recognize the PCI ids of the Olitec ISDN PCI card.

Signed-off-by: Olivier Blin <oblin@mandriva.com>
Signed-off-by: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 drivers/isdn/hisax/config.c |    1 +
 drivers/isdn/hisax/gazel.c  |    9 +++++++--
 include/linux/pci_ids.h     |    1 +
 3 files changed, 9 insertions(+), 2 deletions(-)

diff -puN drivers/isdn/hisax/config.c~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver drivers/isdn/hisax/config.c
--- devel/drivers/isdn/hisax/config.c~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver	2005-07-26 00:37:36.000000000 -0700
+++ devel-akpm/drivers/isdn/hisax/config.c	2005-07-26 00:37:36.000000000 -0700
@@ -1900,6 +1900,7 @@ static struct pci_device_id hisax_pci_tb
 	{PCI_VENDOR_ID_PLX,      PCI_DEVICE_ID_PLX_R685,         PCI_ANY_ID, PCI_ANY_ID},
 	{PCI_VENDOR_ID_PLX,      PCI_DEVICE_ID_PLX_R753,         PCI_ANY_ID, PCI_ANY_ID},
 	{PCI_VENDOR_ID_PLX,      PCI_DEVICE_ID_PLX_DJINN_ITOO,   PCI_ANY_ID, PCI_ANY_ID},
+	{PCI_VENDOR_ID_PLX,      PCI_DEVICE_ID_PLX_OLITEC,       PCI_ANY_ID, PCI_ANY_ID},
 #endif
 #ifdef CONFIG_HISAX_QUADRO
 	{PCI_VENDOR_ID_PLX,      PCI_DEVICE_ID_PLX_9050,         PCI_ANY_ID, PCI_ANY_ID},
diff -puN drivers/isdn/hisax/gazel.c~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver drivers/isdn/hisax/gazel.c
--- devel/drivers/isdn/hisax/gazel.c~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver	2005-07-26 00:37:36.000000000 -0700
+++ devel-akpm/drivers/isdn/hisax/gazel.c	2005-07-26 00:37:36.000000000 -0700
@@ -546,8 +546,9 @@ setup_gazelpci(struct IsdnCardState *cs)
 
 	found = 0;
 	seekcard = PCI_DEVICE_ID_PLX_R685;
-	for (nbseek = 0; nbseek < 3; nbseek++) {
-		if ((dev_tel = pci_find_device(PCI_VENDOR_ID_PLX, seekcard, dev_tel))) {
+	for (nbseek = 0; nbseek < 4; nbseek++) {
+		if ((dev_tel = pci_find_device(PCI_VENDOR_ID_PLX,
+					seekcard, dev_tel))) {
 			if (pci_enable_device(dev_tel))
 				return 1;
 			pci_irq = dev_tel->irq;
@@ -565,6 +566,9 @@ setup_gazelpci(struct IsdnCardState *cs)
 				case PCI_DEVICE_ID_PLX_R753:
 					seekcard = PCI_DEVICE_ID_PLX_DJINN_ITOO;
 					break;
+				case PCI_DEVICE_ID_PLX_DJINN_ITOO:
+					seekcard = PCI_DEVICE_ID_PLX_OLITEC;
+					break;
 			}
 		}
 	}
@@ -605,6 +609,7 @@ setup_gazelpci(struct IsdnCardState *cs)
 			break;
 		case PCI_DEVICE_ID_PLX_R753:
 		case PCI_DEVICE_ID_PLX_DJINN_ITOO:
+		case PCI_DEVICE_ID_PLX_OLITEC:
 			printk(KERN_INFO "Gazel: Card PCI R753 found\n");
 			cs->subtyp = R753;
 			test_and_set_bit(HW_IPAC, &cs->HW_Flags);
diff -puN include/linux/pci_ids.h~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver include/linux/pci_ids.h
--- devel/include/linux/pci_ids.h~i4l-add-olitec-isdn-pci-card-in-hisax-gazel-driver	2005-07-26 00:37:36.000000000 -0700
+++ devel-akpm/include/linux/pci_ids.h	2005-07-26 00:37:36.000000000 -0700
@@ -1011,6 +1011,7 @@
 #define PCI_DEVICE_ID_PLX_SPCOM200	0x1103
 #define PCI_DEVICE_ID_PLX_DJINN_ITOO	0x1151
 #define PCI_DEVICE_ID_PLX_R753		0x1152
+#define PCI_DEVICE_ID_PLX_OLITEC	0x1187
 #define PCI_DEVICE_ID_PLX_9030		0x9030
 #define PCI_DEVICE_ID_PLX_9050		0x9050
 #define PCI_DEVICE_ID_PLX_9060		0x9060
_
