Commit 3a57312a authored by Kai Germaschewski's avatar Kai Germaschewski

ISDN: Un-split inithscxisac

It works just as nicely unsplit AFAICS, so no need for the added
complexity.
parent 0a055009
......@@ -295,7 +295,7 @@ Asus_card_msg(struct IsdnCardState *cs, int mt, void *arg)
return(0);
case CARD_INIT:
cs->debug |= L1_DEB_IPAC;
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -163,10 +163,9 @@ AVM_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_ioregs(cs, 0x3f);
return(0);
case CARD_INIT:
inithscxisac(cs, 1);
byteout(cs->hw.avm.cfg_reg, 0x16);
byteout(cs->hw.avm.cfg_reg, 0x1E);
inithscxisac(cs, 2);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -224,8 +224,7 @@ AVM_card_msg(struct IsdnCardState *cs, int mt, void *arg)
case CARD_INIT:
byteout(cs->hw.avm.cfg_reg+ASL0_OFFSET,ASL0_W_TDISABLE|ASL0_W_TRESET|ASL0_W_IRQENABLE);
inithscxisac(cs, 1);
inithscxisac(cs, 2);
inithscxisac(cs);
return 0;
case CARD_TEST:
......
......@@ -251,7 +251,7 @@ BKM_card_msg(struct IsdnCardState *cs, int mt, void *arg)
case CARD_INIT:
cs->debug |= L1_DEB_IPAC;
set_ipac_active(cs, 1);
inithscxisac(cs, 3);
inithscxisac(cs);
/* Enable ints */
enable_bkm_int(cs, 1);
return (0);
......
......@@ -860,7 +860,7 @@ Diva_card_msg(struct IsdnCardState *cs, int mt, void *arg)
ireg = (unsigned int *)cs->hw.diva.pci_cfg;
*ireg = PITA_INT0_ENABLE;
}
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -679,7 +679,6 @@ Elsa_card_msg(struct IsdnCardState *cs, int mt, void *arg)
return(0);
case CARD_INIT:
cs->debug |= L1_DEB_IPAC;
inithscxisac(cs, 1);
if ((cs->subtyp == ELSA_QS1000) ||
(cs->subtyp == ELSA_QS3000))
{
......@@ -687,7 +686,7 @@ Elsa_card_msg(struct IsdnCardState *cs, int mt, void *arg)
}
if (cs->hw.elsa.trig)
byteout(cs->hw.elsa.trig, 0xff);
inithscxisac(cs, 2);
inithscxisac(cs);
return(0);
case CARD_TEST:
if ((cs->subtyp == ELSA_PCMCIA) ||
......
......@@ -421,7 +421,7 @@ Gazel_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_gazel(cs);
return (0);
case CARD_INIT:
inithscxisac(cs, 1);
inithscxisac(cs);
if ((cs->subtyp==R647)||(cs->subtyp==R685)) {
int i;
for (i=0;i<(2+MAX_WAITING_CALLS);i++) {
......
......@@ -257,21 +257,18 @@ inithscx(struct IsdnCardState *cs)
modehscx(cs->bcs, 0, 0);
modehscx(cs->bcs + 1, 0, 0);
/* Reenable all IRQ */
cs->BC_Write_Reg(cs, 0, HSCX_MASK, 0);
cs->BC_Write_Reg(cs, 1, HSCX_MASK, 0);
}
void __init
inithscxisac(struct IsdnCardState *cs, int part)
inithscxisac(struct IsdnCardState *cs)
{
if (part & 1) {
initisac(cs);
inithscx(cs);
}
if (part & 2) {
/* Reenable all IRQ */
cs->writeisac(cs, ISAC_MASK, 0);
cs->BC_Write_Reg(cs, 0, HSCX_MASK, 0);
cs->BC_Write_Reg(cs, 1, HSCX_MASK, 0);
/* RESET Receiver and Transmitter */
cs->writeisac(cs, ISAC_CMDR, 0x41);
}
initisac(cs);
inithscx(cs);
/* RESET Receiver and Transmitter */
cs->writeisac(cs, ISAC_CMDR, 0x41);
}
......@@ -37,5 +37,4 @@
extern int HscxVersion(struct IsdnCardState *cs, char *s);
extern void hscx_sched_event(struct BCState *bcs, int event);
extern void modehscx(struct BCState *bcs, int mode, int bc);
extern void inithscx(struct IsdnCardState *cs);
extern void inithscxisac(struct IsdnCardState *cs, int part);
extern void inithscxisac(struct IsdnCardState *cs);
......@@ -205,7 +205,7 @@ ix1_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_ix1micro(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -188,8 +188,7 @@ mic_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_mic(cs);
return(0);
case CARD_INIT:
inithscx(cs); /* /RTSA := ISAC RST */
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -214,7 +214,7 @@ niccy_reset(struct IsdnCardState *cs)
val |= PCI_IRQ_ENABLE;
outl(val, cs->hw.niccy.cfg_reg + PCI_IRQ_CTRL_REG);
}
inithscxisac(cs, 3);
inithscxisac(cs);
}
static int
......
......@@ -207,7 +207,7 @@ S0Box_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_s0box(cs);
break;
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
break;
case CARD_TEST:
break;
......
......@@ -235,7 +235,7 @@ saphir_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_saphir(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -488,7 +488,7 @@ Sedl_card_msg(struct IsdnCardState *cs, int mt, void *arg)
/* RESET Receiver and Transmitter */
cs->writeisac(cs, ISAC_CMDR, 0x41);
} else {
inithscxisac(cs, 3);
inithscxisac(cs);
}
return(0);
case CARD_TEST:
......
......@@ -168,10 +168,9 @@ Sportster_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_sportster(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 1);
inithscxisac(cs);
cs->hw.spt.res_irq |= SPORTSTER_INTE; /* IRQ On */
byteout(cs->hw.spt.cfg_reg + SPORTSTER_RES_IRQ, cs->hw.spt.res_irq);
inithscxisac(cs, 2);
return(0);
case CARD_TEST:
return(0);
......
......@@ -251,7 +251,7 @@ Teles_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_teles0(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -238,7 +238,7 @@ Teles_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_teles3(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
......@@ -270,7 +270,7 @@ TelesPCI_card_msg(struct IsdnCardState *cs, int mt, void *arg)
release_io_telespci(cs);
return(0);
case CARD_INIT:
inithscxisac(cs, 3);
inithscxisac(cs);
return(0);
case CARD_TEST:
return(0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment