OpenCloudOS-Kernel/drivers/usb/gadget/function
Mike Looijmans bba787a860 usb: gadget: ether: Allow jumbo frames
USB network adapters support Jumbo frames. The only thing blocking
that feature is the code in the gadget driver that disposes of
packets larger than 1518 bytes, and the limit on the ioctl to set
the mtu.

This patch relaxes these limits, and allows up to 15k frames sizes.
The 15k value was chosen because 16k does not work on all platforms,
and usingclose to 16k will result in allocating 5 or 8 4k pages to
store the skb, wasting pages at no measurable performance gain.

On a topic-miami board (Zynq-7000), iperf3 performance reports:
MTU= 1500, PC-to-gadget: 139 Mbps, Gadget-to-PC: 116 Mbps
MTU=15000, PC-to-gadget: 239 Mbps, Gadget-to-PC: 361 Mbps

On boards with slower CPUs the performance improvement will be
relatively much larger, e.g. an OMAP-L138 increased from 40 to
220 Mbps using a similar patch on an  2.6.37 kernel.

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Felipe Balbi <balbi@ti.com>
2015-09-27 10:54:31 -05:00
..
Makefile usb: gadget: f_printer: convert to new function interface with backward compatibility 2015-03-10 15:33:40 -05:00
f_acm.c usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
f_ecm.c usb: gadget: f_ecm/f_ncm: check quirk instead of UDC name 2015-07-30 11:43:36 -05:00
f_eem.c usb: gadget: function: Remove redundant usb_free_all_descriptors 2014-10-23 13:57:24 -05:00
f_fs.c usb: gadget: ffs: call functionfs_unbind() if _ffs_func_bind() fails 2015-07-31 08:57:57 -05:00
f_hid.c usb: gadget: f_hid: actually limit the number of instances 2015-07-27 10:19:50 -05:00
f_loopback.c usb: gadget: loopback: Remove out-of-date comment 2015-07-29 09:59:18 -05:00
f_mass_storage.c usb: gadget: mass_storage: allow for deeper queue lengths 2015-09-27 10:54:31 -05:00
f_mass_storage.h usb: gadget: mass_storage: Use static array for luns 2015-07-31 09:01:19 -05:00
f_midi.c usb: gadget: f_midi: check for error on usb_ep_queue 2015-09-27 10:54:31 -05:00
f_ncm.c usb: gadget: f_ecm/f_ncm: check quirk instead of UDC name 2015-07-30 11:43:36 -05:00
f_obex.c usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
f_phonet.c usb: gadget: function: phonet: balance usb_ep_disable calls 2015-02-23 00:18:52 -06:00
f_printer.c usb: patches for v4.3 merge window 2015-08-14 16:41:11 -07:00
f_rndis.c usb: gadget: rndis: remove the limit of available rndis connections 2015-05-07 13:47:17 -05:00
f_serial.c usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
f_sourcesink.c usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
f_subset.c usb: gadget: function: Remove redundant usb_free_all_descriptors 2014-10-23 13:57:24 -05:00
f_uac1.c usb: gadget: f_uac1: check return code from config_ep_by_speed 2015-05-26 10:15:09 -05:00
f_uac2.c usb: patches for v4.3 merge window 2015-08-14 16:41:11 -07:00
f_uvc.c usb: gadget: f_uvc: use bind_deactivated flag 2015-07-29 09:59:20 -05:00
f_uvc.h usb: gadget: f_uvc: remove compatibility layer 2014-09-09 09:49:41 -05:00
g_zero.h Revert "usb: gadget: zero: Add support for interrupt EP" 2015-03-11 10:00:05 -05:00
ndis.h
rndis.c usb: gadget: rndis: use signed type for a signed value 2015-05-21 16:29:14 -05:00
rndis.h usb: gadget: rndis: use signed type for a signed value 2015-05-21 16:29:14 -05:00
storage_common.c vfs: add file_path() helper 2015-06-23 18:00:05 -04:00
storage_common.h usb: gadget: storage-common: Set FSG_MAX_LUNS to 16 2015-07-29 09:59:19 -05:00
u_ecm.h
u_eem.h
u_ether.c usb: gadget: ether: Allow jumbo frames 2015-09-27 10:54:31 -05:00
u_ether.h usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
u_ether_configfs.h
u_fs.h usb: gadget: ffs: add eventfd notification about ffs events 2015-01-27 09:34:59 -06:00
u_gether.h
u_hid.h usb: gadget: hid: add configfs support 2014-11-06 16:18:19 -06:00
u_midi.h usb: gadget: f_midi: add configfs support 2014-11-05 13:37:17 -06:00
u_ncm.h
u_phonet.h
u_printer.h usb: gadget: printer: add configfs support 2015-03-10 15:33:41 -05:00
u_rndis.h usb: gadget: rndis: remove the limit of available rndis connections 2015-05-07 13:47:17 -05:00
u_serial.c usb: gadget: serial: fix re-ordering of tx data 2015-04-27 14:44:29 -05:00
u_serial.h
u_uac1.c usb: gadget: u_uac1: fix one code style problem 2015-01-15 09:41:48 -06:00
u_uac1.h usb: gadget: remove gadget_chips.h 2015-08-06 09:35:20 -05:00
u_uac2.h usb: gadget: f_uac2: add configfs support 2014-08-20 14:04:42 -05:00
u_uvc.h usb: gadget: uvc: configfs support in uvc function 2015-01-12 12:13:26 -06:00
uvc.h usb: gadget: uvc: remove unused including <linux/version.h> 2015-04-27 15:48:11 -05:00
uvc_configfs.c usb: gadget: uvc: comments for iterating over streaming hierarchy 2015-01-27 10:00:27 -06:00
uvc_configfs.h usb: gadget: uvc: configfs support in uvc function 2015-01-12 12:13:26 -06:00
uvc_queue.c [media] uvc gadget: switch to v4l2 core locking 2015-03-02 17:05:23 -03:00
uvc_queue.h [media] uvc gadget: switch to v4l2 core locking 2015-03-02 17:05:23 -03:00
uvc_v4l2.c Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux into v4l_for_linus 2015-04-21 09:44:55 -03:00
uvc_v4l2.h usb: gadget: uvc: separately compile some components of f_uvc 2014-09-09 09:49:12 -05:00
uvc_video.c Merge branch 'drm-next-merged' of git://people.freedesktop.org/~airlied/linux into v4l_for_linus 2015-04-21 09:44:55 -03:00
uvc_video.h usb: gadget: uvc: separately compile some components of f_uvc 2014-09-09 09:49:12 -05:00