diff options
| -rw-r--r-- | p30.patch | 46 | ||||
| -rw-r--r-- | serial-8250_pci-add-support-for-fintek-4-8-and-12-port-cards.patch | 48 | ||||
| -rw-r--r-- | series | 2 | ||||
| -rw-r--r-- | usb-serial-option-add-support-for-inovia-sew858-device.patch | 39 |
4 files changed, 61 insertions, 74 deletions
diff --git a/p30.patch b/p30.patch new file mode 100644 index 00000000000000..87dd8fcdfc87a6 --- /dev/null +++ b/p30.patch @@ -0,0 +1,46 @@ +--- + drivers/uwb/lc-dev.c | 16 +++------------- + 1 file changed, 3 insertions(+), 13 deletions(-) + +--- a/drivers/uwb/lc-dev.c ++++ b/drivers/uwb/lc-dev.c +@@ -244,7 +244,7 @@ static ssize_t uwb_dev_RSSI_store(struct + static DEVICE_ATTR(RSSI, S_IRUGO | S_IWUSR, uwb_dev_RSSI_show, uwb_dev_RSSI_store); + + +-static struct attribute *dev_attrs[] = { ++static struct attribute *uwb_dev_attrs[] = { + &dev_attr_EUI_48.attr, + &dev_attr_DevAddr.attr, + &dev_attr_BPST.attr, +@@ -253,20 +253,10 @@ static struct attribute *dev_attrs[] = { + &dev_attr_RSSI.attr, + NULL, + }; +- +-static struct attribute_group dev_attr_group = { +- .attrs = dev_attrs, +-}; +- +-static const struct attribute_group *groups[] = { +- &dev_attr_group, +- NULL, +-}; ++ATTRIBUTE_GROUPS(uwb_dev); + + /** + * Device SYSFS registration +- * +- * + */ + static int __uwb_dev_sys_add(struct uwb_dev *uwb_dev, struct device *parent_dev) + { +@@ -276,7 +266,7 @@ static int __uwb_dev_sys_add(struct uwb_ + /* Device sysfs files are only useful for neighbor devices not + local radio controllers. */ + if (&uwb_dev->rc->uwb_dev != uwb_dev) +- dev->groups = groups; ++ dev->groups = uwb_dev_groups; + dev->parent = parent_dev; + dev_set_drvdata(dev, uwb_dev); + diff --git a/serial-8250_pci-add-support-for-fintek-4-8-and-12-port-cards.patch b/serial-8250_pci-add-support-for-fintek-4-8-and-12-port-cards.patch index e8115c7e1f53f9..700f5bd04d1914 100644 --- a/serial-8250_pci-add-support-for-fintek-4-8-and-12-port-cards.patch +++ b/serial-8250_pci-add-support-for-fintek-4-8-and-12-port-cards.patch @@ -16,21 +16,12 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> --- - drivers/tty/serial/8250/8250_pci.c | 125 ++++++++++++++++++++++++++++++++++++- - 1 file changed, 124 insertions(+), 1 deletion(-) + drivers/tty/serial/8250/8250_pci.c | 112 +++++++++++++++++++++++++++++++++++++ + 1 file changed, 112 insertions(+) --- a/drivers/tty/serial/8250/8250_pci.c +++ b/drivers/tty/serial/8250/8250_pci.c -@@ -9,7 +9,7 @@ - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License. - */ --#undef DEBUG -+#define DEBUG - #include <linux/module.h> - #include <linux/init.h> - #include <linux/pci.h> -@@ -1343,6 +1343,82 @@ pci_brcm_trumanage_setup(struct serial_p +@@ -1343,6 +1343,71 @@ pci_brcm_trumanage_setup(struct serial_p return ret; } @@ -43,9 +34,12 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + unsigned long iobase; + unsigned long ciobase = 0; + u8 config_base; -+ u8 data; + -+ /* FIXME: read these from the PCI config space */ ++ /* ++ * We are supposed to be able to read these from the PCI config space, ++ * but the values there don't seem to match what we need to use, so ++ * just use these hard-coded values for now, as they are correct. ++ */ + switch (idx) { + case 0: iobase = 0xe000; config_base = 0x40; break; + case 1: iobase = 0xe008; config_base = 0x48; break; @@ -64,13 +58,6 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + return -EINVAL; + } + -+ dev_dbg(&pdev->dev, "bar 0 = %lx\n", (unsigned long)pci_resource_start(pdev, 0)); -+ dev_dbg(&pdev->dev, "bar 1 = %lx\n", (unsigned long)pci_resource_start(pdev, 1)); -+ dev_dbg(&pdev->dev, "bar 2 = %lx\n", (unsigned long)pci_resource_start(pdev, 2)); -+ dev_dbg(&pdev->dev, "bar 3 = %lx\n", (unsigned long)pci_resource_start(pdev, 3)); -+ dev_dbg(&pdev->dev, "bar 4 = %lx\n", (unsigned long)pci_resource_start(pdev, 4)); -+ dev_dbg(&pdev->dev, "bar 5 = %lx\n", (unsigned long)pci_resource_start(pdev, 5)); -+ + if (idx < 4) { + base = pci_resource_start(priv->dev, 3); + ciobase = (int)(base + (0x8 * idx)); @@ -79,7 +66,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + dev_dbg(&pdev->dev, "%s: idx=%d iobase=0x%lx ciobase=0x%lx config_base=0x%2x\n", + __func__, idx, iobase, ciobase, config_base); + -+ /* Enable uart I/O port */ ++ /* Enable UART I/O port */ + pci_write_config_byte(pdev, config_base + 0x00, 0x01); + + /* Select 128-byte FIFO and 8x FIFO threshold */ @@ -91,16 +78,9 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> + /* MSB UART */ + pci_write_config_byte(pdev, config_base + 0x05, (u8)((iobase & 0xff00) >> 8)); + -+ /* irq number */ ++ /* irq number, this usually fails, but the spec says to do it anyway. */ + pci_write_config_byte(pdev, config_base + 0x06, pdev->irq); + -+ /* verify irq was set */ -+ pci_read_config_byte(pdev, config_base + 0x06, &data); -+ dev_dbg(&pdev->dev, "%s: irq = 0x%2x data=0x%02x\n", __func__, pdev->irq, data); -+ if (data != pdev->irq) { -+ dev_err(&pdev->dev, "Can not set irq!\n"); -+ } -+ + port->port.iotype = UPIO_PORT; + port->port.iobase = iobase; + port->port.mapbase = 0; @@ -113,7 +93,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> static int skip_tx_en_setup(struct serial_private *priv, const struct pciserial_board *board, struct uart_8250_port *port, int idx) -@@ -2252,6 +2328,27 @@ static struct pci_serial_quirk pci_seria +@@ -2252,6 +2317,27 @@ static struct pci_serial_quirk pci_seria .subdevice = PCI_ANY_ID, .setup = pci_brcm_trumanage_setup, }, @@ -141,7 +121,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> /* * Default "match everything" terminator entry -@@ -2449,6 +2546,9 @@ enum pci_board_num_t { +@@ -2449,6 +2535,9 @@ enum pci_board_num_t { pbn_omegapci, pbn_NETMOS9900_2s_115200, pbn_brcm_trumanage, @@ -151,7 +131,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> }; /* -@@ -3199,6 +3299,24 @@ static struct pciserial_board pci_boards +@@ -3199,6 +3288,24 @@ static struct pciserial_board pci_boards .reg_shift = 2, .base_baud = 115200, }, @@ -176,7 +156,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> }; static const struct pci_device_id blacklist[] = { -@@ -4916,6 +5034,11 @@ static struct pci_device_id serial_pci_t +@@ -4916,6 +5023,11 @@ static struct pci_device_id serial_pci_t 0, 0, pbn_exar_XR17V358 }, @@ -17,7 +17,6 @@ driver-core-remove-struct-bus_type.drv_attrs.patch # dev_groups to struct class work -usb-serial-option-add-support-for-inovia-sew858-device.patch 0001-Simulate-fake-Fn-key-on-PS-2-keyboards-w-o-one-eg.-C.patch @@ -88,5 +87,6 @@ p27.patch p28.patch p29.patch +p30.patch qlcnic_sysfs.patch diff --git a/usb-serial-option-add-support-for-inovia-sew858-device.patch b/usb-serial-option-add-support-for-inovia-sew858-device.patch deleted file mode 100644 index a7f684127f87c2..00000000000000 --- a/usb-serial-option-add-support-for-inovia-sew858-device.patch +++ /dev/null @@ -1,39 +0,0 @@ -From foo@baz Sat Oct 5 18:10:51 PDT 2013 -Date: Sat, 05 Oct 2013 18:10:51 -0700 -To: Greg KH <gregkh@linuxfoundation.org> -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Subject: [PATCH] USB: serial: option: add support for Inovia SEW858 device - -From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - -This patch adds the device id for the Inovia SEW858 device to the option driver. - -Reported-by: Pavel Parkhomenko <ra85551@gmail.com> -Cc: stable <stable@vger.kernel.org> -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> - ---- - drivers/usb/serial/option.c | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/drivers/usb/serial/option.c -+++ b/drivers/usb/serial/option.c -@@ -451,6 +451,10 @@ static void option_instat_callback(struc - #define CHANGHONG_VENDOR_ID 0x2077 - #define CHANGHONG_PRODUCT_CH690 0x7001 - -+/* Inovia */ -+#define INOVIA_VENDOR_ID 0x20a6 -+#define INOVIA_SEW858 0x1105 -+ - /* some devices interfaces need special handling due to a number of reasons */ - enum option_blacklist_reason { - OPTION_BLACKLIST_NONE = 0, -@@ -1345,6 +1349,7 @@ static const struct usb_device_id option - { USB_DEVICE_AND_INTERFACE_INFO(0x2001, 0x7d03, 0xff, 0x00, 0x00) }, - { USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e01, 0xff, 0xff, 0xff) }, /* D-Link DWM-152/C1 */ - { USB_DEVICE_AND_INTERFACE_INFO(0x07d1, 0x3e02, 0xff, 0xff, 0xff) }, /* D-Link DWM-156/C1 */ -+ { USB_DEVICE(INOVIA_VENDOR_ID, INOVIA_SEW858) }, - { } /* Terminating entry */ - }; - MODULE_DEVICE_TABLE(usb, option_ids); |
