Message ID | 20200825055505.765782-4-lorenzo@google.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 7974ecd7d3c0f42a98566f281e44ea8573a2ad88 |
Headers | show |
Series | usb: gadget: f_ncm: support SuperSpeed Plus, improve on SuperSpeed | expand |
On Mon, Aug 24, 2020 at 10:55 PM Lorenzo Colitti <lorenzo@google.com> wrote: > > Currently, enabling f_ncm at SuperSpeed Plus speeds results in an > oops in config_ep_by_speed because ncm_set_alt passes in NULL > ssp_descriptors. Fix this by re-using the SuperSpeed descriptors. > This is safe because usb_assign_descriptors calls > usb_copy_descriptors. > > Tested: enabled f_ncm on a dwc3 gadget and 10Gbps link, ran iperf > Signed-off-by: Lorenzo Colitti <lorenzo@google.com> > --- > drivers/usb/gadget/function/f_ncm.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/usb/gadget/function/f_ncm.c b/drivers/usb/gadget/function/f_ncm.c > index cad3c9dd61..87f548bd97 100644 > --- a/drivers/usb/gadget/function/f_ncm.c > +++ b/drivers/usb/gadget/function/f_ncm.c > @@ -1505,7 +1505,7 @@ static int ncm_bind(struct usb_configuration *c, struct usb_function *f) > fs_ncm_notify_desc.bEndpointAddress; > > status = usb_assign_descriptors(f, ncm_fs_function, ncm_hs_function, > - ncm_ss_function, NULL); > + ncm_ss_function, ncm_ss_function); > if (status) > goto fail; > > -- > 2.28.0.297.g1956fa8f8d-goog Reviewed-by: Maciej Żenczykowski <maze@google.com>
diff --git a/drivers/usb/gadget/function/f_ncm.c b/drivers/usb/gadget/function/f_ncm.c index cad3c9dd61..87f548bd97 100644 --- a/drivers/usb/gadget/function/f_ncm.c +++ b/drivers/usb/gadget/function/f_ncm.c @@ -1505,7 +1505,7 @@ static int ncm_bind(struct usb_configuration *c, struct usb_function *f) fs_ncm_notify_desc.bEndpointAddress; status = usb_assign_descriptors(f, ncm_fs_function, ncm_hs_function, - ncm_ss_function, NULL); + ncm_ss_function, ncm_ss_function); if (status) goto fail;
Currently, enabling f_ncm at SuperSpeed Plus speeds results in an oops in config_ep_by_speed because ncm_set_alt passes in NULL ssp_descriptors. Fix this by re-using the SuperSpeed descriptors. This is safe because usb_assign_descriptors calls usb_copy_descriptors. Tested: enabled f_ncm on a dwc3 gadget and 10Gbps link, ran iperf Signed-off-by: Lorenzo Colitti <lorenzo@google.com> --- drivers/usb/gadget/function/f_ncm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)