Commit 8ec32c38 authored by Philipp Zabel's avatar Philipp Zabel Committed by Felipe Balbi

usb: dwc2: simplify optional reset handling

As of commit bb475230 ("reset: make optional functions really
optional"), the reset framework API calls use NULL pointers to describe
optional, non-present reset controls.

This allows to return errors from devm_reset_control_get_optional and to
call reset_control_(de)assert unconditionally.
Signed-off-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
Acked-by: default avatarJohn Youn <johnyoun@synopsys.com>
Signed-off-by: default avatarFelipe Balbi <felipe.balbi@linux.intel.com>
parent 20839dbb
...@@ -214,19 +214,10 @@ static int dwc2_lowlevel_hw_init(struct dwc2_hsotg *hsotg) ...@@ -214,19 +214,10 @@ static int dwc2_lowlevel_hw_init(struct dwc2_hsotg *hsotg)
hsotg->reset = devm_reset_control_get_optional(hsotg->dev, "dwc2"); hsotg->reset = devm_reset_control_get_optional(hsotg->dev, "dwc2");
if (IS_ERR(hsotg->reset)) { if (IS_ERR(hsotg->reset)) {
ret = PTR_ERR(hsotg->reset); ret = PTR_ERR(hsotg->reset);
switch (ret) { dev_err(hsotg->dev, "error getting reset control %d\n", ret);
case -ENOENT:
case -ENOTSUPP:
hsotg->reset = NULL;
break;
default:
dev_err(hsotg->dev, "error getting reset control %d\n",
ret);
return ret; return ret;
} }
}
if (hsotg->reset)
reset_control_deassert(hsotg->reset); reset_control_deassert(hsotg->reset);
/* Set default UTMI width */ /* Set default UTMI width */
...@@ -326,7 +317,6 @@ static int dwc2_driver_remove(struct platform_device *dev) ...@@ -326,7 +317,6 @@ static int dwc2_driver_remove(struct platform_device *dev)
if (hsotg->ll_hw_enabled) if (hsotg->ll_hw_enabled)
dwc2_lowlevel_hw_disable(hsotg); dwc2_lowlevel_hw_disable(hsotg);
if (hsotg->reset)
reset_control_assert(hsotg->reset); reset_control_assert(hsotg->reset);
return 0; return 0;
......
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