dev = prism2_init_local_data(&prism2_pci_funcs, cards_found); 
dev = prism2_init_local_data(&prism2_pci_funcs, cards_found, &pdev->dev); 
static int prism2_pci_probe(struct pci_dev *pdev,			    const struct pci_device_id *id){	unsigned long phymem;	void __iomem *mem = NULL;	local_info_t *local = NULL;	struct net_device *dev = NULL;	static int cards_found /* = 0 */;	int irq_registered = 0;	struct hostap_interface *iface;	if (pci_enable_device(pdev))		return -EIO;	phymem = pci_resource_start(pdev, 0);	if (!request_mem_region(phymem, pci_resource_len(pdev, 0), "Prism2")) {		printk(KERN_ERR "prism2: Cannot reserve PCI memory region\n");		goto err_out_disable;	}	mem = ioremap(phymem, pci_resource_len(pdev, 0));	if (mem == NULL) {		printk(KERN_ERR "prism2: Cannot remap PCI memory region\n") ;		goto fail;	}#ifdef PRISM2_BUS_MASTER	pci_set_master(pdev);#endif /* PRISM2_BUS_MASTER */	dev = prism2_init_local_data(&prism2_pci_funcs, cards_found);	if (dev == NULL)		goto fail;	iface = netdev_priv(dev);	local = iface->local;	cards_found++;        dev->irq = pdev->irq;        local->mem_start = mem;	prism2_pci_cor_sreset(local);	pci_set_drvdata(pdev, dev);	if (request_irq(dev->irq, prism2_interrupt, SA_SHIRQ, dev->name,			dev)) {		printk(KERN_WARNING "%s: request_irq failed\n", dev->name);		goto fail;	} else		irq_registered = 1;	if (!local->pri_only && prism2_hw_config(dev, 1)) {		printk(KERN_DEBUG "%s: hardware initialization failed\n",		       dev_info);		goto fail;	}	printk(KERN_INFO "%s: Intersil Prism2.5 PCI: "	       "mem=0x%lx, irq=%d\n", dev->name, phymem, dev->irq);	return hostap_hw_ready(dev); fail:	if (irq_registered && dev)		free_irq(dev->irq, dev);	if (mem)		iounmap(mem);	release_mem_region(phymem, pci_resource_len(pdev, 0)); err_out_disable:	pci_disable_device(pdev);	prism2_free_local_data(dev);	return -ENODEV;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/0cd545d6ba0e0138782eb0ec287d0eb3db529b69/hostap_pci.c/buggy/drivers/net/wireless/hostap/hostap_pci.c