return IRQ_RETVAL(IRQ_HANDLED); 
fec_enet_interrupt(int irq, void * dev_id, struct pt_regs * regs){	struct	net_device *dev = dev_id;	volatile fec_t	*fecp;	uint	int_events;#ifdef CONFIG_FEC_PACKETHOOK	struct	fec_enet_private *fep = dev->priv;	__u32 regval;	if (fep->ph_regaddr) regval = *fep->ph_regaddr;#endif	fecp = (volatile fec_t*)dev->base_addr;	/* Get the interrupt events that caused us to be here.	*/	while ((int_events = fecp->fec_ievent) != 0) {		fecp->fec_ievent = int_events;		if ((int_events & (FEC_ENET_HBERR | FEC_ENET_BABR |				   FEC_ENET_BABT | FEC_ENET_EBERR)) != 0) {			printk("FEC ERROR %x\n", int_events);		}		/* Handle receive event in its own function.		 */		if (int_events & FEC_ENET_RXF) {#ifdef CONFIG_FEC_PACKETHOOK			fec_enet_rx(dev, regval);#else			fec_enet_rx(dev);#endif		}		/* Transmit OK, or non-fatal error. Update the buffer		   descriptors. FEC handles all errors, we just discover		   them as part of the transmit process.		*/		if (int_events & FEC_ENET_TXF) {#ifdef CONFIG_FEC_PACKETHOOK			fec_enet_tx(dev, regval);#else			fec_enet_tx(dev);#endif		}		if (int_events & FEC_ENET_MII) {#ifdef	CONFIG_USE_MDIO			fec_enet_mii(dev);#elseprintk("%s[%d] %s: unexpected FEC_ENET_MII event\n", __FILE__,__LINE__,__FUNCTION__);#endif	/* CONFIG_USE_MDIO */		}	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/fbccb3d7f56654dbc407f757c884f22d26264e42/fec.c/clean/arch/ppc/8xx_io/fec.c