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

Commit f1ddc24c authored by Kishon Vijay Abraham I's avatar Kishon Vijay Abraham I Committed by Greg Kroah-Hartman
Browse files

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: default avatarKishon Vijay Abraham I <kishon@ti.com>
Acked-by: default avatarFelipe Balbi <balbi@ti.com>
Reviewed-by: default avatarSylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 3e3101d5
Loading
Loading
Loading
Loading
+13 −44
Original line number Diff line number Diff line
@@ -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)
static int twl4030_phy_power_off(struct phy *phy)
{
	struct twl4030_usb *twl = phy_get_drvdata(phy);

	if (twl->asleep)
		return;
		return 0;

	twl4030_phy_power(twl, 0);
	twl->asleep = 1;
	dev_dbg(twl->dev, "%s\n", __func__);
}

static int twl4030_phy_power_off(struct phy *phy)
{
	struct twl4030_usb *twl = phy_get_drvdata(phy);

	twl4030_phy_suspend(twl, 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_i2c_access(twl, 1);
@@ -449,11 +444,13 @@ static void __twl4030_phy_resume(struct twl4030_usb *twl)
		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)
		return;
	__twl4030_phy_resume(twl);
		return 0;
	__twl4030_phy_power_on(twl);
	twl->asleep = 0;
	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);
		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;
}

@@ -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;

	/*
@@ -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) {
		omap_musb_mailbox(twl->linkstat);
		twl4030_phy_resume(twl);
		twl4030_phy_power_on(phy);
	}

	sysfs_notify(&twl->dev->kobj, NULL, "vbus");
	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,
					struct usb_gadget *gadget)
{
@@ -719,8 +690,6 @@ static int twl4030_usb_probe(struct platform_device *pdev)
	twl->phy.label		= "twl4030";
	twl->phy.otg		= otg;
	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->set_host		= twl4030_set_host;