From 22b99f32a13348502bc0f33b93b70565e941d99c Mon Sep 17 00:00:00 2001 From: juhosg Date: Sun, 22 Jan 2012 22:38:11 +0000 Subject: ar71xx: move arch specific files to files-2.6.39 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@29867 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../ar71xx/files/drivers/usb/host/ohci-ar71xx.c | 165 --------------------- 1 file changed, 165 deletions(-) delete mode 100644 target/linux/ar71xx/files/drivers/usb/host/ohci-ar71xx.c (limited to 'target/linux/ar71xx/files/drivers/usb/host/ohci-ar71xx.c') diff --git a/target/linux/ar71xx/files/drivers/usb/host/ohci-ar71xx.c b/target/linux/ar71xx/files/drivers/usb/host/ohci-ar71xx.c deleted file mode 100644 index 1ab33f3bf..000000000 --- a/target/linux/ar71xx/files/drivers/usb/host/ohci-ar71xx.c +++ /dev/null @@ -1,165 +0,0 @@ -/* - * OHCI HCD (Host Controller Driver) for USB. - * - * Bus Glue for Atheros AR71xx built-in OHCI controller. - * - * Copyright (C) 2008 Gabor Juhos - * Copyright (C) 2008 Imre Kaloz - * - * Parts of this file are based on Atheros' 2.6.15 BSP - * Copyright (C) 2007 Atheros Communications, Inc. - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - */ - -#include -#include - -extern int usb_disabled(void); - -static int usb_hcd_ar71xx_probe(const struct hc_driver *driver, - struct platform_device *pdev) -{ - struct usb_hcd *hcd; - struct resource *res; - int irq; - int ret; - - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0); - if (!res) { - dev_dbg(&pdev->dev, "no IRQ specified for %s\n", - dev_name(&pdev->dev)); - return -ENODEV; - } - irq = res->start; - - hcd = usb_create_hcd(driver, &pdev->dev, dev_name(&pdev->dev)); - if (!hcd) - return -ENOMEM; - - res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (!res) { - dev_dbg(&pdev->dev, "no base address specified for %s\n", - dev_name(&pdev->dev)); - ret = -ENODEV; - goto err_put_hcd; - } - 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)) { - dev_dbg(&pdev->dev, "controller already in use\n"); - ret = -EBUSY; - goto err_put_hcd; - } - - hcd->regs = ioremap(hcd->rsrc_start, hcd->rsrc_len); - if (!hcd->regs) { - dev_dbg(&pdev->dev, "error mapping memory\n"); - ret = -EFAULT; - goto err_release_region; - } - - ohci_hcd_init(hcd_to_ohci(hcd)); - - ret = usb_add_hcd(hcd, irq, IRQF_DISABLED); - if (ret) - goto err_stop_hcd; - - return 0; - -err_stop_hcd: - iounmap(hcd->regs); -err_release_region: - release_mem_region(hcd->rsrc_start, hcd->rsrc_len); -err_put_hcd: - usb_put_hcd(hcd); - return ret; -} - -void usb_hcd_ar71xx_remove(struct usb_hcd *hcd, struct platform_device *pdev) -{ - usb_remove_hcd(hcd); - iounmap(hcd->regs); - release_mem_region(hcd->rsrc_start, hcd->rsrc_len); - usb_put_hcd(hcd); -} - -static int __devinit ohci_ar71xx_start(struct usb_hcd *hcd) -{ - struct ohci_hcd *ohci = hcd_to_ohci(hcd); - int ret; - - ret = ohci_init(ohci); - if (ret < 0) - return ret; - - ret = ohci_run(ohci); - if (ret < 0) - goto err; - - return 0; - -err: - ohci_stop(hcd); - return ret; -} - -static const struct hc_driver ohci_ar71xx_hc_driver = { - .description = hcd_name, - .product_desc = "Atheros AR71xx built-in OHCI controller", - .hcd_priv_size = sizeof(struct ohci_hcd), - - .irq = ohci_irq, - .flags = HCD_USB11 | HCD_MEMORY, - - .start = ohci_ar71xx_start, - .stop = ohci_stop, - .shutdown = ohci_shutdown, - - .urb_enqueue = ohci_urb_enqueue, - .urb_dequeue = ohci_urb_dequeue, - .endpoint_disable = ohci_endpoint_disable, - - /* - * scheduling support - */ - .get_frame_number = ohci_get_frame, - - /* - * root hub support - */ - .hub_status_data = ohci_hub_status_data, - .hub_control = ohci_hub_control, - .start_port_reset = ohci_start_port_reset, -}; - -static int ohci_hcd_ar71xx_drv_probe(struct platform_device *pdev) -{ - if (usb_disabled()) - return -ENODEV; - - return usb_hcd_ar71xx_probe(&ohci_ar71xx_hc_driver, pdev); -} - -static int ohci_hcd_ar71xx_drv_remove(struct platform_device *pdev) -{ - struct usb_hcd *hcd = platform_get_drvdata(pdev); - - usb_hcd_ar71xx_remove(hcd, pdev); - return 0; -} - -MODULE_ALIAS("platform:ar71xx-ohci"); - -static struct platform_driver ohci_hcd_ar71xx_driver = { - .probe = ohci_hcd_ar71xx_drv_probe, - .remove = ohci_hcd_ar71xx_drv_remove, - .shutdown = usb_hcd_platform_shutdown, - .driver = { - .name = "ar71xx-ohci", - .owner = THIS_MODULE, - }, -}; -- cgit v1.2.3