Commit 984c9d38 authored by Johan Hovold's avatar Johan Hovold Committed by Greg Kroah-Hartman
Browse files

greybus: interface: deactivate interface on enumeration failure



Deactivate an interface immediately on enumeration failure.

Note that an interface is always registered.

Signed-off-by: default avatarJohan Hovold <johan@hovoldconsulting.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
parent 4d5f6218
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -484,17 +484,23 @@ static void gb_svc_process_intf_hotplug(struct gb_operation *operation)
	if (ret) {
		dev_err(&svc->dev, "failed to activate interface %u: %d\n",
				intf_id, ret);
		goto out_interface_add;
		goto err_interface_add;
	}

	ret = gb_interface_enable(intf);
	if (ret) {
		dev_err(&svc->dev, "failed to enable interface %u: %d\n",
				intf_id, ret);
		goto out_interface_add;
		goto err_interface_deactivate;
	}

out_interface_add:
	gb_interface_add(intf);

	return;

err_interface_deactivate:
	gb_interface_deactivate(intf);
err_interface_add:
	gb_interface_add(intf);
}