kernels/linux-2.4.0/drivers/net/tokenring/tms380tr.c
/*
 * Write a command value to the SIFCMD register
 */
Write a command value to the SIFCMD register
Write a command value to the SIFCMD register
static void tms380tr_exec_sifcmd(struct net_device *dev, unsigned int WriteValue)
{
	unsigned short cmd;
	unsigned short SifStsValue;
	unsigned long loop_counter;
	WriteValue = ((WriteValue ^ CMD_SYSTEM_IRQ) | CMD_INTERRUPT_ADAPTER);
	cmd = (unsigned short)WriteValue;
	loop_counter = 0,5 * 800000;
	do {
		SifStsValue = SIFREADW(SIFSTS);
	} while((SifStsValue & CMD_INTERRUPT_ADAPTER) && loop_counter--);
	SIFWRITEW(cmd, SIFCMD);
	return;
}
static void tms380tr_exec_sifcmd ( struct net_device * dev , unsigned int WriteValue ) { unsigned short cmd ; unsigned short SifStsValue ; unsigned long loop_counter ; WriteValue = ( ( WriteValue ^ CMD_SYSTEM_IRQ ) | CMD_INTERRUPT_ADAPTER ) ; cmd = ( unsigned short ) WriteValue ; loop_counter = 0 , 5 * 800000 ; do { SifStsValue = SIFREADW ( SIFSTS ) ; } while ( ( SifStsValue & CMD_INTERRUPT_ADAPTER ) && loop_counter -- ) ; SIFWRITEW ( cmd , SIFCMD ) ; return ; }
Write a command value to the SIFCMD register
Write a command value to the SIFCMD register