| .. | .. |
|---|
| 8 | 8 | */ |
|---|
| 9 | 9 | #include <linux/platform_device.h> |
|---|
| 10 | 10 | #include <linux/clk.h> |
|---|
| 11 | | -#include <linux/platform_data/ehci-sh.h> |
|---|
| 12 | 11 | |
|---|
| 13 | 12 | struct ehci_sh_priv { |
|---|
| 14 | 13 | struct clk *iclk, *fclk; |
|---|
| .. | .. |
|---|
| 33 | 32 | * generic hardware linkage |
|---|
| 34 | 33 | */ |
|---|
| 35 | 34 | .irq = ehci_irq, |
|---|
| 36 | | - .flags = HCD_USB2 | HCD_MEMORY | HCD_BH, |
|---|
| 35 | + .flags = HCD_USB2 | HCD_DMA | HCD_MEMORY | HCD_BH, |
|---|
| 37 | 36 | |
|---|
| 38 | 37 | /* |
|---|
| 39 | 38 | * basic lifecycle operations |
|---|
| .. | .. |
|---|
| 76 | 75 | { |
|---|
| 77 | 76 | struct resource *res; |
|---|
| 78 | 77 | struct ehci_sh_priv *priv; |
|---|
| 79 | | - struct ehci_sh_platdata *pdata; |
|---|
| 80 | 78 | struct usb_hcd *hcd; |
|---|
| 81 | 79 | int irq, ret; |
|---|
| 82 | 80 | |
|---|
| .. | .. |
|---|
| 85 | 83 | |
|---|
| 86 | 84 | irq = platform_get_irq(pdev, 0); |
|---|
| 87 | 85 | if (irq <= 0) { |
|---|
| 88 | | - dev_err(&pdev->dev, |
|---|
| 89 | | - "Found HC with no IRQ. Check %s setup!\n", |
|---|
| 90 | | - dev_name(&pdev->dev)); |
|---|
| 91 | 86 | ret = -ENODEV; |
|---|
| 92 | 87 | goto fail_create_hcd; |
|---|
| 93 | 88 | } |
|---|
| 94 | | - |
|---|
| 95 | | - pdata = dev_get_platdata(&pdev->dev); |
|---|
| 96 | 89 | |
|---|
| 97 | 90 | /* initialize hcd */ |
|---|
| 98 | 91 | hcd = usb_create_hcd(&ehci_sh_hc_driver, &pdev->dev, |
|---|
| .. | .. |
|---|
| 129 | 122 | |
|---|
| 130 | 123 | clk_enable(priv->fclk); |
|---|
| 131 | 124 | clk_enable(priv->iclk); |
|---|
| 132 | | - |
|---|
| 133 | | - if (pdata && pdata->phy_init) |
|---|
| 134 | | - pdata->phy_init(); |
|---|
| 135 | 125 | |
|---|
| 136 | 126 | ret = usb_add_hcd(hcd, irq, IRQF_SHARED); |
|---|
| 137 | 127 | if (ret != 0) { |
|---|