Commit cec551ea authored by Lubomir Rintel's avatar Lubomir Rintel Committed by Hans de Goede
Browse files

Platform: OLPC: Fix probe error handling



Reset ec_priv if probe ends unsuccessfully.

Signed-off-by: default avatarLubomir Rintel <lkundrak@v3.sk>
Link: https://lore.kernel.org/r/20210126073740.10232-2-lkundrak@v3.sk


Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
parent 745ed17a
Loading
Loading
Loading
Loading
+8 −7
Original line number Diff line number Diff line
@@ -426,11 +426,8 @@ static int olpc_ec_probe(struct platform_device *pdev)

	/* get the EC revision */
	err = olpc_ec_cmd(EC_FIRMWARE_REV, NULL, 0, &ec->version, 1);
	if (err) {
		ec_priv = NULL;
		kfree(ec);
		return err;
	}
	if (err)
		goto error;

	config.dev = pdev->dev.parent;
	config.driver_data = ec;
@@ -440,12 +437,16 @@ static int olpc_ec_probe(struct platform_device *pdev)
	if (IS_ERR(ec->dcon_rdev)) {
		dev_err(&pdev->dev, "failed to register DCON regulator\n");
		err = PTR_ERR(ec->dcon_rdev);
		kfree(ec);
		return err;
		goto error;
	}

	ec->dbgfs_dir = olpc_ec_setup_debugfs();

	return 0;

error:
	ec_priv = NULL;
	kfree(ec);
	return err;
}