Hi,

This patchset allows drivers to pass sg buffers which size can't be divided
by max packet size of endpoint if the host controllers support this kind
of sg buffers.

Previously we add check[1] on the situation and don't allow these sg buffers
passed to USB HCD, looks the check is too strict because some applications(such
as network stack) can't provide this sg buffers which size can be divided by
max packet size, so this patch looses the check in case that the host 
controllers
support it.

Also patch 3/4 implements DMA SG on usbnet driver, and patch 4/4
enables it on ax88179_178a USB3 NIC, so CPU utilization can be
decreased much with usbnet DMA SG when the USB3 NIC is attached to
xHCI controller.

[1], 
http://git.kernel.org/cgit/linux/kernel/git/gregkh/usb.git/commit/?h=usb-next&id=10e232c597ac757e7f8600649f7e872e86de190f

 drivers/net/usb/ax88179_178a.c |   30 +++++++++++++++++++++++++
 drivers/net/usb/usbnet.c       |   48 ++++++++++++++++++++++++++++++++++++++--
 drivers/usb/core/urb.c         |    3 ++-
 drivers/usb/host/xhci.c        |    4 ++++
 include/linux/usb.h            |    3 ++-
 include/linux/usb/usbnet.h     |    4 ++++
 6 files changed, 88 insertions(+), 4 deletions(-)


Thanks,
--
Ming Lei

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to