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

Commit 94dcde66 authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "usb: gadget: android: Save/restore ep0 completion function"

parents c8edb7d2 4f13ea7d
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -174,6 +174,9 @@ struct android_dev {
	struct usb_composite_dev *cdev;
	struct device *dev;

	void (*setup_complete)(struct usb_ep *ep,
				struct usb_request *req);

	bool enabled;
	int disable_depth;
	struct mutex mutex;
@@ -3166,6 +3169,9 @@ static int android_bind(struct usb_composite_dev *cdev)

	dev->cdev = cdev;

	/* Save the default handler */
	dev->setup_complete = cdev->req->complete;

	/*
	 * Start disconnected. Userspace will connect the gadget once
	 * it is done configuring the functions.
@@ -3245,6 +3251,7 @@ android_setup(struct usb_gadget *gadget, const struct usb_ctrlrequest *c)

	req->zero = 0;
	req->length = 0;
	req->complete = dev->setup_complete;
	gadget->ep0->driver_data = cdev;

	list_for_each_entry(conf, &dev->configs, list_item)