usb: phy: twl4030-usb: remove *set_suspend* and *phy_init* ops

Now that twl4030-usb is adapted to the new generic PHY framework,
*set_suspend* and *phy_init* ops can be removed from twl4030-usb driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Acked-by: Felipe Balbi <balbi@ti.com>
Reviewed-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Kishon Vijay Abraham I 2013-09-27 11:53:31 +05:30 committed by Greg Kroah-Hartman
parent 3e3101d57c
commit f1ddc24c9e

View File

@ -422,25 +422,20 @@ static void twl4030_phy_power(struct twl4030_usb *twl, int on)
} }
} }
static void twl4030_phy_suspend(struct twl4030_usb *twl, int controller_off)
{
if (twl->asleep)
return;
twl4030_phy_power(twl, 0);
twl->asleep = 1;
dev_dbg(twl->dev, "%s\n", __func__);
}
static int twl4030_phy_power_off(struct phy *phy) static int twl4030_phy_power_off(struct phy *phy)
{ {
struct twl4030_usb *twl = phy_get_drvdata(phy); struct twl4030_usb *twl = phy_get_drvdata(phy);
twl4030_phy_suspend(twl, 0); if (twl->asleep)
return 0;
twl4030_phy_power(twl, 0);
twl->asleep = 1;
dev_dbg(twl->dev, "%s\n", __func__);
return 0; return 0;
} }
static void __twl4030_phy_resume(struct twl4030_usb *twl) static void __twl4030_phy_power_on(struct twl4030_usb *twl)
{ {
twl4030_phy_power(twl, 1); twl4030_phy_power(twl, 1);
twl4030_i2c_access(twl, 1); twl4030_i2c_access(twl, 1);
@ -449,11 +444,13 @@ static void __twl4030_phy_resume(struct twl4030_usb *twl)
twl4030_i2c_access(twl, 0); twl4030_i2c_access(twl, 0);
} }
static void twl4030_phy_resume(struct twl4030_usb *twl) static int twl4030_phy_power_on(struct phy *phy)
{ {
struct twl4030_usb *twl = phy_get_drvdata(phy);
if (!twl->asleep) if (!twl->asleep)
return; return 0;
__twl4030_phy_resume(twl); __twl4030_phy_power_on(twl);
twl->asleep = 0; twl->asleep = 0;
dev_dbg(twl->dev, "%s\n", __func__); dev_dbg(twl->dev, "%s\n", __func__);
@ -466,13 +463,6 @@ static void twl4030_phy_resume(struct twl4030_usb *twl)
cancel_delayed_work(&twl->id_workaround_work); cancel_delayed_work(&twl->id_workaround_work);
schedule_delayed_work(&twl->id_workaround_work, HZ); schedule_delayed_work(&twl->id_workaround_work, HZ);
} }
}
static int twl4030_phy_power_on(struct phy *phy)
{
struct twl4030_usb *twl = phy_get_drvdata(phy);
twl4030_phy_resume(twl);
return 0; return 0;
} }
@ -604,9 +594,9 @@ static void twl4030_id_workaround_work(struct work_struct *work)
} }
} }
static int twl4030_usb_phy_init(struct usb_phy *phy) static int twl4030_phy_init(struct phy *phy)
{ {
struct twl4030_usb *twl = phy_to_twl(phy); struct twl4030_usb *twl = phy_get_drvdata(phy);
enum omap_musb_vbus_id_status status; enum omap_musb_vbus_id_status status;
/* /*
@ -621,32 +611,13 @@ static int twl4030_usb_phy_init(struct usb_phy *phy)
if (status == OMAP_MUSB_ID_GROUND || status == OMAP_MUSB_VBUS_VALID) { if (status == OMAP_MUSB_ID_GROUND || status == OMAP_MUSB_VBUS_VALID) {
omap_musb_mailbox(twl->linkstat); omap_musb_mailbox(twl->linkstat);
twl4030_phy_resume(twl); twl4030_phy_power_on(phy);
} }
sysfs_notify(&twl->dev->kobj, NULL, "vbus"); sysfs_notify(&twl->dev->kobj, NULL, "vbus");
return 0; return 0;
} }
static int twl4030_phy_init(struct phy *phy)
{
struct twl4030_usb *twl = phy_get_drvdata(phy);
return twl4030_usb_phy_init(&twl->phy);
}
static int twl4030_set_suspend(struct usb_phy *x, int suspend)
{
struct twl4030_usb *twl = phy_to_twl(x);
if (suspend)
twl4030_phy_suspend(twl, 1);
else
twl4030_phy_resume(twl);
return 0;
}
static int twl4030_set_peripheral(struct usb_otg *otg, static int twl4030_set_peripheral(struct usb_otg *otg,
struct usb_gadget *gadget) struct usb_gadget *gadget)
{ {
@ -719,8 +690,6 @@ static int twl4030_usb_probe(struct platform_device *pdev)
twl->phy.label = "twl4030"; twl->phy.label = "twl4030";
twl->phy.otg = otg; twl->phy.otg = otg;
twl->phy.type = USB_PHY_TYPE_USB2; twl->phy.type = USB_PHY_TYPE_USB2;
twl->phy.set_suspend = twl4030_set_suspend;
twl->phy.init = twl4030_usb_phy_init;
otg->phy = &twl->phy; otg->phy = &twl->phy;
otg->set_host = twl4030_set_host; otg->set_host = twl4030_set_host;