From: Sasha Levin Date: Mon, 26 Oct 2020 17:40:29 +0000 (-0400) Subject: Fixes for 5.9 X-Git-Tag: v4.4.241~3^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=22755c99f2f832d239c4183ee1e747fcef8421ba;p=thirdparty%2Fkernel%2Fstable-queue.git Fixes for 5.9 Signed-off-by: Sasha Levin --- diff --git a/queue-5.9/series b/queue-5.9/series index d388b7792a4..408e69317a2 100644 --- a/queue-5.9/series +++ b/queue-5.9/series @@ -748,3 +748,4 @@ drm-panfrost-perfcnt-fix-ref-count-leak-in-panfrost_.patch ath10k-check-idx-validity-in-__ath10k_htt_rx_ring_fi.patch net-korina-cast-kseg0-address-to-pointer-in-kfree.patch s390-qeth-don-t-let-hw-override-the-configured-port-.patch +usb-gadget-f_ncm-allow-using-ncm-in-superspeed-plus-.patch diff --git a/queue-5.9/usb-gadget-f_ncm-allow-using-ncm-in-superspeed-plus-.patch b/queue-5.9/usb-gadget-f_ncm-allow-using-ncm-in-superspeed-plus-.patch new file mode 100644 index 00000000000..1f98bcf2b1d --- /dev/null +++ b/queue-5.9/usb-gadget-f_ncm-allow-using-ncm-in-superspeed-plus-.patch @@ -0,0 +1,43 @@ +From 33acac54982527bbb07b889f680c66e9933d6181 Mon Sep 17 00:00:00 2001 +From: Sasha Levin +Date: Tue, 25 Aug 2020 14:55:05 +0900 +Subject: usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Lorenzo Colitti + +[ Upstream commit 7974ecd7d3c0f42a98566f281e44ea8573a2ad88 ] + +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 +Reviewed-by: Maciej Żenczykowski +Signed-off-by: Lorenzo Colitti +Signed-off-by: Felipe Balbi +Signed-off-by: Sasha Levin +--- + 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 7672fa25085b0..92a7c3a839454 100644 +--- a/drivers/usb/gadget/function/f_ncm.c ++++ b/drivers/usb/gadget/function/f_ncm.c +@@ -1536,7 +1536,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.25.1 +