aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb
diff options
context:
space:
mode:
authorPeter Chen <peter.chen@freescale.com>2014-08-18 21:51:56 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-09-24 00:28:41 -0400
commitf6a9ff07832a9d30d457e976e6233b4351cd4cdf (patch)
treef6df9103fd4466bf982148ecbff768c2740d16bc /drivers/usb
parent05f8b35a62efb8e70ebcd78e9c957324e9caddad (diff)
usb: chipidea: add TPL support for targeted hosts
For OTG and Embedded hosts, they may need TPL (Targeted Peripheral List) for usb certification and other vender specific requirements, the platform can tell chipidea core driver if it supports tpl through DT or platform data. Signed-off-by: Peter Chen <peter.chen@freescale.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb')
-rw-r--r--drivers/usb/chipidea/core.c4
-rw-r--r--drivers/usb/chipidea/host.c1
2 files changed, 5 insertions, 0 deletions
diff --git a/drivers/usb/chipidea/core.c b/drivers/usb/chipidea/core.c
index 619d13e29995..41d45a16dd30 100644
--- a/drivers/usb/chipidea/core.c
+++ b/drivers/usb/chipidea/core.c
@@ -473,6 +473,10 @@ static int ci_get_platdata(struct device *dev,
473 PTR_ERR(platdata->reg_vbus)); 473 PTR_ERR(platdata->reg_vbus));
474 return PTR_ERR(platdata->reg_vbus); 474 return PTR_ERR(platdata->reg_vbus);
475 } 475 }
476 /* Get TPL support */
477 if (!platdata->tpl_support)
478 platdata->tpl_support =
479 of_usb_host_tpl_support(dev->of_node);
476 } 480 }
477 481
478 if (of_usb_get_maximum_speed(dev->of_node) == USB_SPEED_FULL) 482 if (of_usb_get_maximum_speed(dev->of_node) == USB_SPEED_FULL)
diff --git a/drivers/usb/chipidea/host.c b/drivers/usb/chipidea/host.c
index a93d950e9468..0d6b24cb2270 100644
--- a/drivers/usb/chipidea/host.c
+++ b/drivers/usb/chipidea/host.c
@@ -60,6 +60,7 @@ static int host_start(struct ci_hdrc *ci)
60 60
61 hcd->power_budget = ci->platdata->power_budget; 61 hcd->power_budget = ci->platdata->power_budget;
62 hcd->phy = ci->transceiver; 62 hcd->phy = ci->transceiver;
63 hcd->tpl_support = ci->platdata->tpl_support;
63 64
64 ehci = hcd_to_ehci(hcd); 65 ehci = hcd_to_ehci(hcd);
65 ehci->caps = ci->hw_bank.cap; 66 ehci->caps = ci->hw_bank.cap;