/* Close it down - release our resources and go home..  */
static void __devexit yenta_close(struct pci_dev *dev)
/* Close it down - release our resources and go home..  */
static void __devexit yenta_close(struct pci_dev *dev)
{
	struct yenta_socket *sock = pci_get_drvdata(dev);
	device_remove_file(&dev->dev, &dev_attr_yenta_registers);
	pcmcia_unregister_socket(&sock->socket);
	cb_writel(sock, CB_SOCKET_MASK, 0x0);
	exca_writeb(sock, I365_CSCINT, 0);
	if (sock->cb_irq)
		free_irq(sock->cb_irq, sock);
	else
		del_timer_sync(&sock->poll_timer);
	if (sock->base)
		iounmap(sock->base);
	yenta_free_resources(sock);
	pci_release_regions(dev);
	pci_disable_device(dev);
	pci_set_drvdata(dev, NULL);
}