You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
1.7 KiB
43 lines
1.7 KiB
From 8272cd893c3bca2f047dcf06ae11d9ada6d26f33 Mon Sep 17 00:00:00 2001
|
|
From: Sam Nazarko <email@samnazarko.co.uk>
|
|
Date: Fri, 1 Apr 2016 17:27:21 +0100
|
|
Subject: [PATCH] smsc95xx: Experimental: Enable turbo_mode and packetsize=2560
|
|
by default
|
|
|
|
See: http://forum.kodi.tv/showthread.php?tid=285288
|
|
---
|
|
drivers/net/usb/smsc95xx.c | 14 +++++++++-----
|
|
1 file changed, 9 insertions(+), 5 deletions(-)
|
|
|
|
--- a/drivers/net/usb/smsc95xx.c
|
|
+++ b/drivers/net/usb/smsc95xx.c
|
|
@@ -86,6 +86,10 @@ static bool truesize_mode = false;
|
|
module_param(truesize_mode, bool, 0644);
|
|
MODULE_PARM_DESC(truesize_mode, "Report larger truesize value");
|
|
|
|
+static int packetsize = 2560;
|
|
+module_param(packetsize, int, 0644);
|
|
+MODULE_PARM_DESC(packetsize, "Override the RX URB packet size");
|
|
+
|
|
static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index,
|
|
u32 *data, int in_pm)
|
|
{
|
|
@@ -1106,13 +1110,13 @@ static int smsc95xx_reset(struct usbnet
|
|
|
|
if (!turbo_mode) {
|
|
burst_cap = 0;
|
|
- dev->rx_urb_size = MAX_SINGLE_PACKET_SIZE;
|
|
+ dev->rx_urb_size = packetsize ? packetsize : MAX_SINGLE_PACKET_SIZE;
|
|
} else if (dev->udev->speed == USB_SPEED_HIGH) {
|
|
- burst_cap = DEFAULT_HS_BURST_CAP_SIZE / HS_USB_PKT_SIZE;
|
|
- dev->rx_urb_size = DEFAULT_HS_BURST_CAP_SIZE;
|
|
+ dev->rx_urb_size = packetsize ? packetsize : DEFAULT_HS_BURST_CAP_SIZE;
|
|
+ burst_cap = dev->rx_urb_size / HS_USB_PKT_SIZE;
|
|
} else {
|
|
- burst_cap = DEFAULT_FS_BURST_CAP_SIZE / FS_USB_PKT_SIZE;
|
|
- dev->rx_urb_size = DEFAULT_FS_BURST_CAP_SIZE;
|
|
+ dev->rx_urb_size = packetsize ? packetsize : DEFAULT_FS_BURST_CAP_SIZE;
|
|
+ burst_cap = dev->rx_urb_size / FS_USB_PKT_SIZE;
|
|
}
|
|
|
|
netif_dbg(dev, ifup, dev->net, "rx_urb_size=%ld\n",
|
|
|