diff options
Diffstat (limited to 'drivers/tty/rocket.c')
| -rw-r--r-- | drivers/tty/rocket.c | 40 | 
1 files changed, 21 insertions, 19 deletions
diff --git a/drivers/tty/rocket.c b/drivers/tty/rocket.c index f5abc288882..82d35c5a58f 100644 --- a/drivers/tty/rocket.c +++ b/drivers/tty/rocket.c @@ -2519,6 +2519,7 @@ static int sInitController(CONTROLLER_T * CtlP, int CtlNum, ByteIO_t MudbacIO,  		return (CtlP->NumAiop);  } +#ifdef CONFIG_PCI  /***************************************************************************  Function: sPCIInitController  Purpose:  Initialization of controller global registers and controller @@ -2639,6 +2640,26 @@ static int sPCIInitController(CONTROLLER_T * CtlP, int CtlNum,  		return (CtlP->NumAiop);  } +/*  Resets the speaker controller on RocketModem II and III devices */ +static void rmSpeakerReset(CONTROLLER_T * CtlP, unsigned long model) +{ +	ByteIO_t addr; + +	/* RocketModem II speaker control is at the 8th port location of offset 0x40 */ +	if ((model == MODEL_RP4M) || (model == MODEL_RP6M)) { +		addr = CtlP->AiopIO[0] + 0x4F; +		sOutB(addr, 0); +	} + +	/* RocketModem III speaker control is at the 1st port location of offset 0x80 */ +	if ((model == MODEL_UPCI_RM3_8PORT) +	    || (model == MODEL_UPCI_RM3_4PORT)) { +		addr = CtlP->AiopIO[0] + 0x88; +		sOutB(addr, 0); +	} +} +#endif +  /***************************************************************************  Function: sReadAiopID  Purpose:  Read the AIOP idenfication number directly from an AIOP. @@ -3128,25 +3149,6 @@ static void sPCIModemReset(CONTROLLER_T * CtlP, int chan, int on)  	sOutB(addr + chan, 0);	/* apply or remove reset */  } -/*  Resets the speaker controller on RocketModem II and III devices */ -static void rmSpeakerReset(CONTROLLER_T * CtlP, unsigned long model) -{ -	ByteIO_t addr; - -	/* RocketModem II speaker control is at the 8th port location of offset 0x40 */ -	if ((model == MODEL_RP4M) || (model == MODEL_RP6M)) { -		addr = CtlP->AiopIO[0] + 0x4F; -		sOutB(addr, 0); -	} - -	/* RocketModem III speaker control is at the 1st port location of offset 0x80 */ -	if ((model == MODEL_UPCI_RM3_8PORT) -	    || (model == MODEL_UPCI_RM3_4PORT)) { -		addr = CtlP->AiopIO[0] + 0x88; -		sOutB(addr, 0); -	} -} -  /*  Returns the line number given the controller (board), aiop and channel number */  static unsigned char GetLineNumber(int ctrl, int aiop, int ch)  {  |