current->state=TASK_UNINTERRUPTIBLE; schedule_timeout(TR_RST_TIME); /* wait 50ms */ 
schedule_timeout_uninterruptible(TR_RST_TIME); /* wait 50ms */ 
static int tok_init_card(struct net_device *dev){	struct tok_info *ti;	short PIOaddr;	unsigned long i;	PIOaddr = dev->base_addr;	ti = (struct tok_info *) dev->priv;	/* Special processing for first interrupt after reset */	ti->do_tok_int = FIRST_INT;	/* Reset adapter */	writeb(~INT_ENABLE, ti->mmio + ACA_OFFSET + ACA_RESET + ISRP_EVEN);	outb(0, PIOaddr + ADAPTRESET);	current->state=TASK_UNINTERRUPTIBLE;	schedule_timeout(TR_RST_TIME); /* wait 50ms */	outb(0, PIOaddr + ADAPTRESETREL);#ifdef ENABLE_PAGING	if (ti->page_mask)		writeb(SRPR_ENABLE_PAGING,ti->mmio+ACA_OFFSET+ACA_RW+SRPR_EVEN);#endif	writeb(INT_ENABLE, ti->mmio + ACA_OFFSET + ACA_SET + ISRP_EVEN);	i = sleep_on_timeout(&ti->wait_for_reset, 4 * HZ);	return i? 0 : -EAGAIN;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/3173c8907ffb2c64456142da3df2bd0500bd59e0/ibmtr.c/buggy/drivers/net/tokenring/ibmtr.c