printk(KERN_WARNING PFX "%s: phy read timed out\n", hw->dev[port]->name); return 0; ready: v = xm_read16(hw, port, XM_PHY_DATA); 
/* Need to wait for external PHY */ for (i = 0; i < PHY_RETRIES; i++) { udelay(1); if (xm_read16(hw, port, XM_MMU_CMD) & XM_MMU_PHY_RDY) goto ready; 
static u16 xm_phy_read(struct skge_hw *hw, int port, u16 reg){	int i;	u16 v;	xm_write16(hw, port, XM_PHY_ADDR, reg | hw->phy_addr);	v = xm_read16(hw, port, XM_PHY_DATA);	if (hw->phy_type != SK_PHY_XMAC) {		for (i = 0; i < PHY_RETRIES; i++) {			udelay(1);			if (xm_read16(hw, port, XM_MMU_CMD)			    & XM_MMU_PHY_RDY)				goto ready;		}		printk(KERN_WARNING PFX "%s: phy read timed out\n",		       hw->dev[port]->name);		return 0;	ready:		v = xm_read16(hw, port, XM_PHY_DATA);	}	return v;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/89bf5f231f776443a9d65da0f774aa3632534749/skge.c/clean/drivers/net/skge.c