usb: gadget: f_mass_storage: reset endpoint driver data when disabled

Gadgets endpoint driver data is a criteria to judge that
whether the endpoints are in use or not. When gadget gets
assigned an endpoint from endpoint list, they check its
driver data if the driver data is NULL.

If the driver data is not NULL then they regard it as in use.
Therefore all of gadgets should reset their endpoints driver
data to NULL as they are disabled. Otherwise it causes a leak
of endpoint resource.

Signed-off-by: Peter Oh <poh@broadcom.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>

authored by Peter Oh and committed by Felipe Balbi 7f2ccc8c 660479aa

+2
+2
drivers/usb/gadget/f_mass_storage.c
··· 2260 /* Disable the endpoints */ 2261 if (fsg->bulk_in_enabled) { 2262 usb_ep_disable(fsg->bulk_in); 2263 fsg->bulk_in_enabled = 0; 2264 } 2265 if (fsg->bulk_out_enabled) { 2266 usb_ep_disable(fsg->bulk_out); 2267 fsg->bulk_out_enabled = 0; 2268 } 2269
··· 2260 /* Disable the endpoints */ 2261 if (fsg->bulk_in_enabled) { 2262 usb_ep_disable(fsg->bulk_in); 2263 + fsg->bulk_in->driver_data = NULL; 2264 fsg->bulk_in_enabled = 0; 2265 } 2266 if (fsg->bulk_out_enabled) { 2267 usb_ep_disable(fsg->bulk_out); 2268 + fsg->bulk_out->driver_data = NULL; 2269 fsg->bulk_out_enabled = 0; 2270 } 2271