29 static void tilegx_start_ehc(
void)
33 static void tilegx_stop_ehc(
void)
37 static int tilegx_ehci_setup(
struct usb_hcd *hcd)
39 int ret = ehci_init(hcd);
55 static const struct hc_driver ehci_tilegx_hc_driver = {
56 .description = hcd_name,
57 .product_desc =
"Tile-Gx EHCI",
58 .hcd_priv_size =
sizeof(
struct ehci_hcd),
64 .flags = HCD_MEMORY | HCD_USB2,
69 .reset = tilegx_ehci_setup,
72 .shutdown = ehci_shutdown,
77 .urb_enqueue = ehci_urb_enqueue,
78 .urb_dequeue = ehci_urb_dequeue,
79 .endpoint_disable = ehci_endpoint_disable,
80 .endpoint_reset = ehci_endpoint_reset,
85 .get_frame_number = ehci_get_frame,
90 .hub_status_data = ehci_hub_status_data,
91 .hub_control = ehci_hub_control,
94 .relinquish_port = ehci_relinquish_port,
95 .port_handed_over = ehci_port_handed_over,
97 .clear_tt_buffer_complete = ehci_clear_tt_buffer_complete,
120 dev_name(&pdev->
dev));
135 ehci = hcd_to_ehci(hcd);
136 ehci->
caps = hcd->regs;
144 if (pdata->
irq < 0) {
170 platform_set_drvdata(pdev, hcd);
185 struct usb_hcd *hcd = platform_get_drvdata(pdev);
193 platform_set_drvdata(pdev,
NULL);
201 ehci_hcd_tilegx_drv_remove(pdev);
205 .probe = ehci_hcd_tilegx_drv_probe,
206 .remove = ehci_hcd_tilegx_drv_remove,
207 .shutdown = ehci_hcd_tilegx_drv_shutdown,
209 .name =
"tilegx-ehci",