Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 070b8ed9 authored by Hema HK's avatar Hema HK Committed by Felipe Balbi
Browse files

usb: otg: TWL6030: Introduce the twl6030_phy_suspend function.



Introduce the twl6030_phy_suspend function and assign to otg.set_suspend
function pointer.
This function is used by the musb-omap2430 platform driver
during suspend/resume.

Signed-off-by: default avatarHema HK <hemahk@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Paul Walmsley <paul@pwsan.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent ee896e34
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -177,6 +177,17 @@ static void twl6030_phy_shutdown(struct otg_transceiver *x)
	pdata->phy_power(twl->dev, 0, 0);
}

static int twl6030_phy_suspend(struct otg_transceiver *x, int suspend)
{
	struct twl6030_usb *twl = xceiv_to_twl(x);
	struct device *dev = twl->dev;
	struct twl4030_usb_data *pdata = dev->platform_data;

	pdata->phy_suspend(dev, suspend);

	return 0;
}

static int twl6030_usb_ldo_init(struct twl6030_usb *twl)
{

@@ -388,6 +399,7 @@ static int __devinit twl6030_usb_probe(struct platform_device *pdev)
	twl->otg.set_vbus	= twl6030_set_vbus;
	twl->otg.init		= twl6030_phy_init;
	twl->otg.shutdown	= twl6030_phy_shutdown;
	twl->otg.set_suspend	= twl6030_phy_suspend;

	/* init spinlock for workqueue */
	spin_lock_init(&twl->lock);
@@ -432,6 +444,7 @@ static int __devinit twl6030_usb_probe(struct platform_device *pdev)

	twl->asleep = 0;
	pdata->phy_init(dev);
	twl6030_phy_suspend(&twl->otg, 0);
	twl6030_enable_irq(&twl->otg);
	dev_info(&pdev->dev, "Initialized TWL6030 USB module\n");