if (request_irq(priv->einfo->interruptPHY, 
if (request_irq(priv->einfo->interruptPHY, 
static void gfar_phy_startup_timer(unsigned long data){	int result;	static int secondary = GFAR_AN_TIMEOUT;	struct gfar_mii_info *mii_info = (struct gfar_mii_info *)data;	struct gfar_private *priv = netdev_priv(mii_info->dev);	/* Configure the Auto-negotiation */	result = mii_info->phyinfo->config_aneg(mii_info);	/* If autonegotiation failed to start, and	 * we haven't timed out, reset the timer, and return */	if (result && secondary--) {		mod_timer(&priv->phy_info_timer, jiffies + HZ);		return;	} else if (result) {		/* Couldn't start autonegotiation.		 * Try switching to forced */		mii_info->autoneg = 0;		result = mii_info->phyinfo->config_aneg(mii_info);		/* Forcing failed!  Give up */		if(result) {			printk(KERN_ERR "%s: Forcing failed!\n",					mii_info->dev->name);			return;		}	}	/* Kill the timer so it can be restarted */	del_timer_sync(&priv->phy_info_timer);	/* Grab the PHY interrupt, if necessary/possible */	if (priv->einfo->board_flags & FSL_GIANFAR_BRD_HAS_PHY_INTR) {		if (request_irq(priv->einfo->interruptPHY, 					phy_interrupt,					SA_SHIRQ, 					"phy_interrupt", 					mii_info->dev) < 0) {			printk(KERN_ERR "%s: Can't get IRQ %d (PHY)\n",					mii_info->dev->name,					priv->einfo->interruptPHY);		} else {			mii_configure_phy_interrupt(priv->mii_info, 					MII_INTERRUPT_ENABLED);			return;		}	}	/* Start the timer again, this time in order to	 * handle a change in status */	init_timer(&priv->phy_info_timer);	priv->phy_info_timer.function = &gfar_phy_timer;	priv->phy_info_timer.data = (unsigned long) mii_info->dev;	mod_timer(&priv->phy_info_timer, jiffies +			GFAR_PHY_CHANGE_TIME * HZ);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0bbaf069f053957e8d733784e18a2992afd1dd3c/gianfar.c/buggy/drivers/net/gianfar.c