return; 
static void yenta_allocate_res(struct yenta_socket *socket, int nr, unsigned type, int addr_start, int addr_end){	struct pci_bus *bus;	struct resource *root, *res;	u32 start, end;	u32 align, size, min;	unsigned mask;	res = socket->dev->resource + PCI_BRIDGE_RESOURCES + nr;	/* Already allocated? */	if (res->parent)		return;	/* The granularity of the memory limit is 4kB, on IO it's 4 bytes */	mask = ~0xfff;	if (type & IORESOURCE_IO)		mask = ~3;	bus = socket->dev->subordinate;	res->name = bus->name;	res->flags = type;	start = config_readl(socket, addr_start) & mask;	end = config_readl(socket, addr_end) | ~mask;	if (start && end > start && !override_bios) {		res->start = start;		res->end = end;		root = pci_find_parent_resource(socket->dev, res);		if (root && (request_resource(root, res) == 0))			return;		printk(KERN_INFO "yenta %s: Preassigned resource %d busy or not available, reconfiguring...\n",				pci_name(socket->dev), nr);	}	res->start = 0;	res->end = 0;	root = pci_find_parent_resource(socket->dev, res);	if (type & IORESOURCE_IO) {		align = 1024;		size = BRIDGE_IO_MAX;		min = BRIDGE_IO_MIN;		start = PCIBIOS_MIN_CARDBUS_IO;		end = ~0U;	} else {		unsigned long avail = root->end - root->start;		int i;		size = BRIDGE_MEM_MAX;		if (size > avail/8) {			size=(avail+1)/8;			/* round size down to next power of 2 */			i = 0;			while ((size /= 2) != 0)				i++;			size = 1 << i;		}		if (size < BRIDGE_MEM_MIN)			size = BRIDGE_MEM_MIN;		min = BRIDGE_MEM_MIN;		align = size;		start = PCIBIOS_MIN_MEM;		end = ~0U;	}		do {		if (allocate_resource(root, res, size, start, end, align, NULL, NULL)==0) {			config_writel(socket, addr_start, res->start);			config_writel(socket, addr_end, res->end);			return;		}		size = size/2;		align = size;	} while (size >= min);	printk(KERN_INFO "yenta %s: no resource of type %x available, trying to continue...\n",			pci_name(socket->dev), type);	res->start = res->end = 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/eb0a90b4970d667e9ae9df538710f12b8e78e442/yenta_socket.c/clean/drivers/pcmcia/yenta_socket.c