client_reg.EventMask = CS_EVENT_CARD_INSERTION | CS_EVENT_CARD_REMOVAL | CS_EVENT_RESET_PHYSICAL | CS_EVENT_CARD_RESET | CS_EVENT_PM_SUSPEND | CS_EVENT_PM_RESUME; client_reg.event_handler = &tc574_event; 
static dev_link_t *tc574_attach(void){	struct el3_private *lp;	client_reg_t client_reg;	dev_link_t *link;	struct net_device *dev;	int ret;	DEBUG(0, "3c574_attach()\n");	/* Create the PC card device object. */	dev = alloc_etherdev(sizeof(struct el3_private));	if (!dev)		return NULL;	lp = netdev_priv(dev);	link = &lp->link;	link->priv = dev;	spin_lock_init(&lp->window_lock);	link->io.NumPorts1 = 32;	link->io.Attributes1 = IO_DATA_PATH_WIDTH_16;	link->irq.Attributes = IRQ_TYPE_EXCLUSIVE | IRQ_HANDLE_PRESENT;	link->irq.IRQInfo1 = IRQ_LEVEL_ID;	link->irq.Handler = &el3_interrupt;	link->irq.Instance = dev;	link->conf.Attributes = CONF_ENABLE_IRQ;	link->conf.Vcc = 50;	link->conf.IntType = INT_MEMORY_AND_IO;	link->conf.ConfigIndex = 1;	link->conf.Present = PRESENT_OPTION;	/* The EL3-specific entries in the device structure. */	dev->hard_start_xmit = &el3_start_xmit;	dev->get_stats = &el3_get_stats;	dev->do_ioctl = &el3_ioctl;	SET_ETHTOOL_OPS(dev, &netdev_ethtool_ops);	dev->set_multicast_list = &set_rx_mode;	dev->open = &el3_open;	dev->stop = &el3_close;#ifdef HAVE_TX_TIMEOUT	dev->tx_timeout = el3_tx_timeout;	dev->watchdog_timeo = TX_TIMEOUT;#endif	/* Register with Card Services */	link->next = dev_list;	dev_list = link;	client_reg.dev_info = &dev_info;	client_reg.EventMask =		CS_EVENT_CARD_INSERTION | CS_EVENT_CARD_REMOVAL |			CS_EVENT_RESET_PHYSICAL | CS_EVENT_CARD_RESET |				CS_EVENT_PM_SUSPEND | CS_EVENT_PM_RESUME;	client_reg.event_handler = &tc574_event;	client_reg.Version = 0x0210;	client_reg.event_callback_args.client_data = link;	ret = pcmcia_register_client(&link->handle, &client_reg);	if (ret != 0) {		cs_error(link->handle, RegisterClient, ret);		tc574_detach(link);		return NULL;	}	return link;} /* tc574_attach */
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/1e212f3645a6b355de8c43a23376bc0e2ac49a63/3c574_cs.c/buggy/drivers/net/pcmcia/3c574_cs.c