struct usb_hcd_platform_data *pd = pdev->dev.platform_data; 
static int usb_hcd_ppc_soc_probe(const struct hc_driver *driver,			  struct platform_device *pdev){	int retval;	struct usb_hcd *hcd;	struct ohci_hcd	*ohci;	struct resource *res;	int irq;	struct usb_hcd_platform_data *pd = pdev->dev.platform_data;	pr_debug("initializing PPC-SOC USB Controller\n");	res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);	if (!res) {		pr_debug(__FILE__ ": no irq\n");		return -ENODEV;	}	irq = res->start;	res = platform_get_resource(pdev, IORESOURCE_MEM, 0);	if (!res) {		pr_debug(__FILE__ ": no reg addr\n");		return -ENODEV;	}	hcd = usb_create_hcd(driver, &pdev->dev, "PPC-SOC USB");	if (!hcd)		return -ENOMEM;	hcd->rsrc_start = res->start;	hcd->rsrc_len = res->end - res->start + 1;	if (!request_mem_region(hcd->rsrc_start, hcd->rsrc_len, hcd_name)) {		pr_debug(__FILE__ ": request_mem_region failed\n");		retval = -EBUSY;		goto err1;	}	hcd->regs = ioremap(hcd->rsrc_start, hcd->rsrc_len);	if (!hcd->regs) {		pr_debug(__FILE__ ": ioremap failed\n");		retval = -ENOMEM;		goto err2;	}	if (pd->start && (retval = pd->start(pdev)))		goto err3;	ohci = hcd_to_ohci(hcd);	ohci->flags |= OHCI_BIG_ENDIAN;	ohci_hcd_init(ohci);	retval = usb_add_hcd(hcd, irq, SA_INTERRUPT);	if (retval == 0)		return retval;	pr_debug("Removing PPC-SOC USB Controller\n");	if (pd && pd->stop)		pd->stop(pdev); err3:	iounmap(hcd->regs); err2:	release_mem_region(hcd->rsrc_start, hcd->rsrc_len); err1: 	usb_put_hcd(hcd);	return retval;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/4fbd55f03e294d18bd7a5c4c98974e157f6f84e7/ohci-ppc-soc.c/clean/drivers/usb/host/ohci-ppc-soc.c