struct board_chan *bc; 
struct board_chan __iomem *bc; 
static int pc_write_room(struct tty_struct *tty){ /* Begin pc_write_room */	int remain;	struct channel *ch;	unsigned long flags;	unsigned int head, tail;	struct board_chan *bc;	remain = 0;	/* ---------------------------------------------------------		verifyChannel returns the channel from the tty struct		if it is valid.  This serves as a sanity check.	------------------------------------------------------------- */	if ((ch = verifyChannel(tty)) != NULL)  {		spin_lock_irqsave(&epca_lock, flags);		globalwinon(ch);		bc   = ch->brdchan;		head = readw(&bc->tin) & (ch->txbufsize - 1);		tail = readw(&bc->tout);		if (tail != readw(&bc->tout))			tail = readw(&bc->tout);		/* Wrap tail if necessary */		tail &= (ch->txbufsize - 1);		if ((remain = tail - head - 1) < 0 )			remain += ch->txbufsize;		if (remain && (ch->statusflags & LOWWAIT) == 0) {			ch->statusflags |= LOWWAIT;			writeb(1, &bc->ilow);		}		memoff(ch);		spin_unlock_irqrestore(&epca_lock, flags);	}	/* Return how much room is left on card */	return remain;} /* End pc_write_room */
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/bc9a5154a24d16d41cc79dbf1442de34454bc7db/epca.c/buggy/drivers/char/epca.c