summaryrefslogtreecommitdiffstats
path: root/drivers/isdn/hisax/config.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/isdn/hisax/config.c')
-rw-r--r--drivers/isdn/hisax/config.c38
1 files changed, 34 insertions, 4 deletions
diff --git a/drivers/isdn/hisax/config.c b/drivers/isdn/hisax/config.c
index a75810f02..8d389c623 100644
--- a/drivers/isdn/hisax/config.c
+++ b/drivers/isdn/hisax/config.c
@@ -1,10 +1,21 @@
-/* $Id: config.c,v 2.40 1999/10/30 13:09:45 keil Exp $
+/* $Id: config.c,v 2.43 2000/01/20 19:49:36 keil Exp $
* Author Karsten Keil (keil@isdn4linux.de)
* based on the teles driver from Jan den Ouden
*
*
* $Log: config.c,v $
+ * Revision 2.43 2000/01/20 19:49:36 keil
+ * Support teles 13.3c vendor version 2.1
+ *
+ * Revision 2.42 1999/12/19 13:09:41 keil
+ * changed TASK_INTERRUPTIBLE into TASK_UNINTERRUPTIBLE for
+ * signal proof delays
+ *
+ * Revision 2.41 1999/11/18 00:00:43 werner
+ *
+ * Added support for HFC-S+ and HFC-SP cards
+ *
* Revision 2.40 1999/10/30 13:09:45 keil
* Version 3.3c
*
@@ -202,6 +213,7 @@
* 34 Gazel ISDN cards
* 35 HFC 2BDS0 PCI none
* 36 Winbond 6692 PCI none
+ * 37 HFC 2BDS0 S+/SP p0=irq p1=iobase
*
* protocol can be either ISDN_PTYPE_EURO or ISDN_PTYPE_1TR6 or ISDN_PTYPE_NI1
*
@@ -217,6 +229,7 @@ const char *CardType[] =
"AMD 7930", "NICCY", "S0Box", "AVM A1 (PCMCIA)", "AVM Fritz PnP/PCI",
"Sedlbauer Speed Fax +", "Siemens I-Surf", "Acer P10", "HST Saphir",
"Telekom A4T", "Scitel Quadro", "Gazel", "HFC 2BDS0 PCI", "Winbond 6692",
+ "HFC 2BDS0 SX",
};
void HiSax_closecard(int cardnr);
@@ -352,6 +365,13 @@ EXPORT_SYMBOL(sedl_init_pcmcia);
#define DEFAULT_CFG {0,0,0,0}
#endif
+#ifdef CONFIG_HISAX_HFC_SX
+#undef DEFAULT_CARD
+#undef DEFAULT_CFG
+#define DEFAULT_CARD ISDN_CTYPE_HFC_SX
+#define DEFAULT_CFG {5,0x2E0,0,0}
+#endif
+
#ifdef CONFIG_HISAX_AMD7930
#undef DEFAULT_CARD
@@ -529,9 +549,9 @@ HiSaxVersion(void))
printk(KERN_INFO "HiSax: Linux Driver for passive ISDN cards\n");
#ifdef MODULE
- printk(KERN_INFO "HiSax: Version 3.3c (module)\n");
+ printk(KERN_INFO "HiSax: Version 3.3d (module)\n");
#else
- printk(KERN_INFO "HiSax: Version 3.3c (kernel)\n");
+ printk(KERN_INFO "HiSax: Version 3.3d (kernel)\n");
#endif
strcpy(tmp, l1_revision);
printk(KERN_INFO "HiSax: Layer1 Revision %s\n", HiSax_getrev(tmp));
@@ -687,6 +707,10 @@ extern int setup_hfcs(struct IsdnCard *card);
extern int setup_hfcpci(struct IsdnCard *card);
#endif
+#if CARD_HFC_SX
+extern int setup_hfcsx(struct IsdnCard *card);
+#endif
+
#if CARD_AMD7930
extern int setup_amd7930(struct IsdnCard *card);
#endif
@@ -994,7 +1018,7 @@ HISAX_INITFUNC(static int init_card(struct IsdnCardState *cs))
while (cnt) {
cs->cardmsg(cs, CARD_INIT, NULL);
sti();
- set_current_state(TASK_INTERRUPTIBLE);
+ set_current_state(TASK_UNINTERRUPTIBLE);
/* Timeout 10ms */
schedule_timeout((10*HZ)/1000);
restore_flags(flags);
@@ -1208,6 +1232,11 @@ checkcard(int cardnr, char *id, int *busy_flag))
ret = setup_hfcpci(card);
break;
#endif
+#if CARD_HFC_SX
+ case ISDN_CTYPE_HFC_SX:
+ ret = setup_hfcsx(card);
+ break;
+#endif
#if CARD_NICCY
case ISDN_CTYPE_NICCY:
ret = setup_niccy(card);
@@ -1515,6 +1544,7 @@ HiSax_init(void))
case ISDN_CTYPE_FRITZPCI:
case ISDN_CTYPE_HSTSAPHIR:
case ISDN_CTYPE_GAZEL:
+ case ISDN_CTYPE_HFC_SX:
cards[i].para[0] = irq[i];
cards[i].para[1] = io[i];
break;