if (hw->phy_type == SK_PHY_BCOM) genesis_bcom_intr(skge); else { int i; for (i = 0; i < 3; i++) if (xm_read16(hw, port, XM_ISRC) & XM_IS_INP_ASS) break;  if (i == 3) mod_timer(&skge->link_check, jiffies + LINK_POLL_HZ); else genesis_link_up(skge); } 
genesis_bcom_intr(skge); 
static void skge_link_timer(unsigned long __arg){	struct skge_port *skge = (struct skge_port *) __arg;	struct skge_hw *hw = skge->hw;	int port = skge->port;	if (hw->chip_id != CHIP_ID_GENESIS || !netif_running(skge->netdev))		return;	spin_lock_bh(&hw->phy_lock);	if (hw->phy_type == SK_PHY_BCOM)		genesis_bcom_intr(skge);	else {		int i;		for (i = 0; i < 3; i++)			if (xm_read16(hw, port, XM_ISRC) & XM_IS_INP_ASS)				break;		if (i == 3)			mod_timer(&skge->link_check, jiffies + LINK_POLL_HZ);		else			genesis_link_up(skge);	}	spin_unlock_bh(&hw->phy_lock);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/89bf5f231f776443a9d65da0f774aa3632534749/skge.c/clean/drivers/net/skge.c