/* Parameter: card = pointer to card struct. ch = channel to watch for.  */
static void isdnloop_start_ctimer(isdnloop_card *card, int ch)
/* Parameter: card = pointer to card struct. ch = channel to watch for.  */
static void isdnloop_start_ctimer(isdnloop_card *card, int ch)
{
	unsigned long flags;
	spin_lock_irqsave(&card->isdnloop_lock, flags);
	init_timer(&card->c_timer[ch]);
	card->c_timer[ch].expires = jiffies + ISDNLOOP_TIMER_ALERTWAIT;
	if (ch)
		card->c_timer[ch].function = isdnloop_atimeout1;
	else
		card->c_timer[ch].function = isdnloop_atimeout0;
	card->c_timer[ch].data = (unsigned long) card;
	add_timer(&card->c_timer[ch]);
	spin_unlock_irqrestore(&card->isdnloop_lock, flags);
}