提交 03779f05 编写于 作者: F Fabio Estevam 提交者: Greg Kroah-Hartman

usb: chipidea: move hw_phymode_configure() into probe

Currently hw_phymode_configure() is located inside hw_device_reset(), which is
only called by chipidea udc driver.

When operating in host mode, we also need to call hw_phymode_configure() in
order to properly configure the PHY mode, so move this function into probe.

After this change, USB Host1 port on mx53qsb board is functional.
Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com>
Tested-by: NArnaud Patard <arnaud.patard@rtp-net.org>
Reviewed-by: NPeter Chen <peter.chen@freescale.com>
Signed-off-by: NAlexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 5bb3da0e
...@@ -264,8 +264,6 @@ int hw_device_reset(struct ci_hdrc *ci, u32 mode) ...@@ -264,8 +264,6 @@ int hw_device_reset(struct ci_hdrc *ci, u32 mode)
while (hw_read(ci, OP_USBCMD, USBCMD_RST)) while (hw_read(ci, OP_USBCMD, USBCMD_RST))
udelay(10); /* not RTOS friendly */ udelay(10); /* not RTOS friendly */
hw_phymode_configure(ci);
if (ci->platdata->notify_event) if (ci->platdata->notify_event)
ci->platdata->notify_event(ci, ci->platdata->notify_event(ci,
CI_HDRC_CONTROLLER_RESET_EVENT); CI_HDRC_CONTROLLER_RESET_EVENT);
...@@ -457,6 +455,8 @@ static int ci_hdrc_probe(struct platform_device *pdev) ...@@ -457,6 +455,8 @@ static int ci_hdrc_probe(struct platform_device *pdev)
if (!ci->platdata->phy_mode) if (!ci->platdata->phy_mode)
ci->platdata->phy_mode = of_usb_get_phy_mode(dev->of_node); ci->platdata->phy_mode = of_usb_get_phy_mode(dev->of_node);
hw_phymode_configure(ci);
if (!ci->platdata->dr_mode) if (!ci->platdata->dr_mode)
ci->platdata->dr_mode = of_usb_get_dr_mode(dev->of_node); ci->platdata->dr_mode = of_usb_get_dr_mode(dev->of_node);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册