Merge 3.15-rc3 into usb-next
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
#include <linux/err.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/delay.h>
|
||||
#include "am35x-phy-control.h"
|
||||
|
||||
struct am335x_control_usb {
|
||||
@@ -86,6 +87,14 @@ static void am335x_phy_power(struct phy_control *phy_ctrl, u32 id, bool on)
|
||||
}
|
||||
|
||||
writel(val, usb_ctrl->phy_reg + reg);
|
||||
|
||||
/*
|
||||
* Give the PHY ~1ms to complete the power up operation.
|
||||
* Tests have shown unstable behaviour if other USB PHY related
|
||||
* registers are written too shortly after such a transition.
|
||||
*/
|
||||
if (on)
|
||||
mdelay(1);
|
||||
}
|
||||
|
||||
static const struct phy_control ctrl_am335x = {
|
||||
|
@@ -132,6 +132,9 @@ struct usb_phy *usb_get_phy(enum usb_phy_type type)
|
||||
if (IS_ERR(phy) || !try_module_get(phy->dev->driver->owner)) {
|
||||
pr_debug("PHY: unable to find transceiver of type %s\n",
|
||||
usb_phy_type_string(type));
|
||||
if (!IS_ERR(phy))
|
||||
phy = ERR_PTR(-ENODEV);
|
||||
|
||||
goto err0;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user