Commit 168bdb88 authored by Fabio Estevam's avatar Fabio Estevam Committed by Felipe Balbi

usb: phy: phy-generic: No need to call gpiod_direction_output() twice

Commit 9eb07977 ("usb: phy: generic: fix the gpios to be optional")
calls gpiod_direction_output() in the probe function, so there is no need to
call it again, as we can simply call gpiod_set_value() directly.

Also, in usb_gen_phy_shutdown() we can simply put the GPIO directly in its
active level state and this allows us to simplify the nop_reset function to
treat only the reset case.
Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent f4e4f8da
...@@ -62,14 +62,14 @@ static int nop_set_suspend(struct usb_phy *x, int suspend) ...@@ -62,14 +62,14 @@ static int nop_set_suspend(struct usb_phy *x, int suspend)
return 0; return 0;
} }
static void nop_reset_set(struct usb_phy_generic *nop, int asserted) static void nop_reset(struct usb_phy_generic *nop)
{ {
if (!nop->gpiod_reset) if (!nop->gpiod_reset)
return; return;
gpiod_direction_output(nop->gpiod_reset, !asserted); gpiod_set_value(nop->gpiod_reset, 1);
usleep_range(10000, 20000); usleep_range(10000, 20000);
gpiod_set_value(nop->gpiod_reset, asserted); gpiod_set_value(nop->gpiod_reset, 0);
} }
/* interface to regulator framework */ /* interface to regulator framework */
...@@ -151,8 +151,7 @@ int usb_gen_phy_init(struct usb_phy *phy) ...@@ -151,8 +151,7 @@ int usb_gen_phy_init(struct usb_phy *phy)
if (!IS_ERR(nop->clk)) if (!IS_ERR(nop->clk))
clk_prepare_enable(nop->clk); clk_prepare_enable(nop->clk);
/* De-assert RESET */ nop_reset(nop);
nop_reset_set(nop, 0);
return 0; return 0;
} }
...@@ -162,8 +161,7 @@ void usb_gen_phy_shutdown(struct usb_phy *phy) ...@@ -162,8 +161,7 @@ void usb_gen_phy_shutdown(struct usb_phy *phy)
{ {
struct usb_phy_generic *nop = dev_get_drvdata(phy->dev); struct usb_phy_generic *nop = dev_get_drvdata(phy->dev);
/* Assert RESET */ gpiod_set_value(nop->gpiod_reset, 1);
nop_reset_set(nop, 1);
if (!IS_ERR(nop->clk)) if (!IS_ERR(nop->clk))
clk_disable_unprepare(nop->clk); clk_disable_unprepare(nop->clk);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment