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

Commit 97f93227 authored by Kuninori Morimoto's avatar Kuninori Morimoto Committed by Greg Kroah-Hartman
Browse files

usb: renesas_usbhs: fixup error processing on probe/remove



The error processing order was wrong.
This patch modify it.

Signed-off-by: default avatarKuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent c786e09c
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -321,11 +321,11 @@ static int __devinit usbhs_probe(struct platform_device *pdev)
	/* call pipe and module init */
	ret = usbhs_pipe_probe(priv);
	if (ret < 0)
		goto probe_end_mod_exit;
		goto probe_end_iounmap;

	ret = usbhs_mod_probe(priv);
	if (ret < 0)
		goto probe_end_iounmap;
		goto probe_end_pipe_exit;

	/* dev_set_drvdata should be called after usbhs_mod_init */
	dev_set_drvdata(&pdev->dev, priv);
@@ -346,7 +346,7 @@ static int __devinit usbhs_probe(struct platform_device *pdev)
	ret = usbhs_platform_call(priv, hardware_init, pdev);
	if (ret < 0) {
		dev_err(&pdev->dev, "platform prove failed.\n");
		goto probe_end_pipe_exit;
		goto probe_end_mod_exit;
	}

	/* reset phy for connection */
@@ -372,10 +372,10 @@ static int __devinit usbhs_probe(struct platform_device *pdev)

probe_end_call_remove:
	usbhs_platform_call(priv, hardware_exit, pdev);
probe_end_pipe_exit:
	usbhs_pipe_remove(priv);
probe_end_mod_exit:
	usbhs_mod_remove(priv);
probe_end_pipe_exit:
	usbhs_pipe_remove(priv);
probe_end_iounmap:
	iounmap(priv->base);
probe_end_kfree:
@@ -403,8 +403,8 @@ static int __devexit usbhs_remove(struct platform_device *pdev)
	pm_runtime_disable(&pdev->dev);

	usbhs_platform_call(priv, hardware_exit, pdev);
	usbhs_pipe_remove(priv);
	usbhs_mod_remove(priv);
	usbhs_pipe_remove(priv);
	iounmap(priv->base);
	kfree(priv);