On Thu, Jun 17, 2021 at 02:58:16AM -0700, Wesley Cheng wrote: > +static int dwc3_gadget_check_config(struct usb_gadget *g, unsigned long ep_map) > +{ > + struct dwc3 *dwc = gadget_to_dwc(g); > + unsigned long in_ep_map; > + int fifo_size = 0; > + int ram1_depth; > + int ep_num; > + > + if (!dwc->do_fifo_resize) > + return 0; > + > + /* Only interested in the IN endpoints */ > + in_ep_map = ep_map >> 16; Wait, this "map" is split up into 16/16 somehow? So it's only 32bits big? Where did you document this map structure? Why is it needed at all, you have the gadget, don't you have access to the full list of endpoints here as well? confused, greg k-h