kernel/4.3: update to version 4.3.3
authorHauke Mehrtens <hauke@hauke-m.de>
Tue, 12 Jan 2016 20:52:19 +0000 (20:52 +0000)
committerHauke Mehrtens <hauke@hauke-m.de>
Tue, 12 Jan 2016 20:52:19 +0000 (20:52 +0000)
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de
SVN-Revision: 48224

39 files changed:
include/kernel-version.mk
target/linux/arc770/patches-4.3/0001-openwrt-arc-remove-dependency-on-DEVTMPFS.patch
target/linux/arc770/patches-4.3/0002-openwrt-arc-add-OWRTDTB-section.patch
target/linux/bcm53xx/patches-4.3/043-clk-iproc-Fix-PLL-output-frequency-calculation.patch [deleted file]
target/linux/bcm53xx/patches-4.3/191-usb-xhci-add-Broadcom-specific-fake-doorbell.patch
target/linux/generic/patches-4.3/103-packet_allow_empty_payload.patch
target/linux/generic/patches-4.3/143-mtd-bcm47xxpart-limit-scanned-flash-area-on-BCM47XX-.patch
target/linux/generic/patches-4.3/144-mtd-bcm47xxpart-don-t-fail-because-of-bit-flips.patch
target/linux/generic/patches-4.3/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch [deleted file]
target/linux/generic/patches-4.3/192-net-Fix-presrc-lookups.patch [deleted file]
target/linux/generic/patches-4.3/193-USB-qmi_wwan-Add-quirk-for-Quectel-EC20-Mini-PCIe-mo.patch
target/linux/generic/patches-4.3/630-packet_socket_type.patch
target/linux/generic/patches-4.3/662-use_fq_codel_by_default.patch
target/linux/generic/patches-4.3/664-codel_fix_3_12.patch
target/linux/generic/patches-4.3/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch
target/linux/imx6/patches-4.3/035-ARM-dts-imx-ventana-set-GW54xx-PMIC-swbst-regulator-.patch
target/linux/imx6/patches-4.3/036-ARM-dts-imx-ventana-fix-GW53xx-GW54xx-lvds-channel.patch
target/linux/imx6/patches-4.3/037-ARM-dts-imx-ventana-fix-GW53xx-GW54xx-lvds-channel.patch
target/linux/imx6/patches-4.3/040-ARM-dts-imx-ventana-add-pwm-nodes.patch
target/linux/imx6/patches-4.3/041-ARM-dts-imx-ventana-add-spi-support-for-gw52xx.patch
target/linux/imx6/patches-4.3/045-imx-thermal-use-cpu-temperature-grade-info-for-thresholds
target/linux/imx6/patches-4.3/100-bootargs.patch
target/linux/imx6/patches-4.3/202-net-igb-add-i210-i211-support-for-phy-read-write.patch
target/linux/imx6/patches-4.3/203-net-igb-add-phy-read-write-functions-that-accept-phy.patch
target/linux/imx6/patches-4.3/204-net-igb-register-mii_bus-for-SerDes-w-external-phy.patch
target/linux/imx6/patches-4.3/205-phy-add-driver-for-GW16083-Ethernet-Expansion-Mezzan.patch
target/linux/imx6/patches-4.3/206-ARM-imx-ventana-added-GW16083-to-device-tree.patch
target/linux/imx6/patches-4.3/207-i2c-imx-add-retries-for-NAK-s-on-ventana-boards.patch
target/linux/imx6/patches-4.3/208-sky2-allow-mac-to-come-from-dt.patch
target/linux/imx6/patches-4.3/209-ARM-imx-ventana-add-sky2-alias.patch
target/linux/octeon/patches-4.3/100-ubnt_edgerouter2_support.patch
target/linux/octeon/patches-4.3/110-er200-ethernet_probe_order.patch
target/linux/octeon/patches-4.3/150-mmc-octeon-add-host-driver-for-octeon-mmc-controller.patch
target/linux/octeon/patches-4.3/160-cmdline-hack.patch
target/linux/ramips/patches-4.3/0002-MIPS-ralink-add-MT7621-defconfig.patch
target/linux/ramips/patches-4.3/0003-MIPS-ralink-cleanup-early_printk.patch
target/linux/ramips/patches-4.3/0029-phy-usb-add-ralink-phy.patch
target/linux/ramips/patches-4.3/0033-USB-add-xhci-hooks.patch
target/linux/ramips/patches-4.3/0065-mt7688-fixes.patch

index f212c7ad6964fd6208e53dffa7c9c92d4a218f69..79492ebd8a4ac342b7a9d372ef237fb837e6af00 100644 (file)
@@ -4,12 +4,12 @@ LINUX_RELEASE?=1
 
 LINUX_VERSION-3.18 = .23
 LINUX_VERSION-4.1 = .15
-LINUX_VERSION-4.3 =
+LINUX_VERSION-4.3 = .3
 LINUX_VERSION-4.4 =
 
 LINUX_KERNEL_MD5SUM-3.18.23 = dc6d265ab38716be3676ac294b481ad8
 LINUX_KERNEL_MD5SUM-4.1.15 = b227333912b161c96ff3e30f5041e1c0
-LINUX_KERNEL_MD5SUM-4.3 = 58b35794eee3b6d52ce7be39357801e7
+LINUX_KERNEL_MD5SUM-4.3.3 = f3068333fa524ff98914cf751d0b5710
 LINUX_KERNEL_MD5SUM-4.4 = 9a78fa2eb6c68ca5a40ed5af08142599
 
 ifdef KERNEL_PATCHVER
index 53f80749bd575291ce14169e78688d28bcda2e8d..135bfb6e2ab122a2974e6b67ad207c8657cd65fa 100644 (file)
@@ -18,11 +18,9 @@ Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
  arch/arc/Kconfig | 2 --
  1 file changed, 2 deletions(-)
 
-diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
-index cf96ef2..f0c6d4c 100644
 --- a/arch/arc/Kconfig
 +++ b/arch/arc/Kconfig
-@@ -11,8 +11,6 @@ config ARC
+@@ -12,8 +12,6 @@ config ARC
        select BUILDTIME_EXTABLE_SORT
        select COMMON_CLK
        select CLONE_BACKWARDS
@@ -31,6 +29,3 @@ index cf96ef2..f0c6d4c 100644
        select GENERIC_ATOMIC64
        select GENERIC_CLOCKEVENTS
        select GENERIC_FIND_FIRST_BIT
--- 
-2.4.3
-
index ddb426f15b8e7759b42099e51256c4c68cc6b52a..a0392cb2f5c93f16db3ca585a6622cccad1263fa 100644 (file)
@@ -19,8 +19,6 @@ Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
  arch/arc/kernel/vmlinux.lds.S | 13 +++++++++++++
  3 files changed, 26 insertions(+), 1 deletion(-)
 
-diff --git a/arch/arc/kernel/head.S b/arch/arc/kernel/head.S
-index 689dd86..51154ae 100644
 --- a/arch/arc/kernel/head.S
 +++ b/arch/arc/kernel/head.S
 @@ -49,6 +49,16 @@
@@ -38,13 +36,11 @@ index 689dd86..51154ae 100644
 +END(__image_dtb)
 +
        .section .init.text, "ax",@progbits
- ;----------------------------------------------------------------
-diff --git a/arch/arc/kernel/setup.c b/arch/arc/kernel/setup.c
-index c33e77c..96fbfd0 100644
+       .type stext, @function
+       .globl stext
 --- a/arch/arc/kernel/setup.c
 +++ b/arch/arc/kernel/setup.c
-@@ -370,6 +370,8 @@ static inline int is_kernel(unsigned long addr)
+@@ -374,6 +374,8 @@ static inline int is_kernel(unsigned lon
        return 0;
  }
  
@@ -53,7 +49,7 @@ index c33e77c..96fbfd0 100644
  void __init setup_arch(char **cmdline_p)
  {
  #ifdef CONFIG_ARC_UBOOT_SUPPORT
-@@ -383,7 +385,7 @@ void __init setup_arch(char **cmdline_p)
+@@ -387,7 +389,7 @@ void __init setup_arch(char **cmdline_p)
  #endif
        {
                /* No, so try the embedded one */
@@ -62,8 +58,6 @@ index c33e77c..96fbfd0 100644
                if (!machine_desc)
                        panic("Embedded DT invalid\n");
  
-diff --git a/arch/arc/kernel/vmlinux.lds.S b/arch/arc/kernel/vmlinux.lds.S
-index dd35bde..f309104 100644
 --- a/arch/arc/kernel/vmlinux.lds.S
 +++ b/arch/arc/kernel/vmlinux.lds.S
 @@ -30,6 +30,19 @@ SECTIONS
@@ -86,6 +80,3 @@ index dd35bde..f309104 100644
        _int_vec_base_lds = .;
        .vector : {
                *(.vector)
--- 
-2.4.3
-
diff --git a/target/linux/bcm53xx/patches-4.3/043-clk-iproc-Fix-PLL-output-frequency-calculation.patch b/target/linux/bcm53xx/patches-4.3/043-clk-iproc-Fix-PLL-output-frequency-calculation.patch
deleted file mode 100644 (file)
index 20dd90e..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-From 63243a4da7d0dfa19dcacd0a529782eeb2f86f92 Mon Sep 17 00:00:00 2001
-From: Simran Rai <ssimran@broadcom.com>
-Date: Mon, 19 Oct 2015 15:27:19 -0700
-Subject: [PATCH] clk: iproc: Fix PLL output frequency calculation
-
-This patch affects the clocks that use fractional ndivider in their
-PLL output frequency calculation. Instead of 2^20 divide factor, the
-clock's ndiv integer shift was used. Fixed the bug by replacing ndiv
-integer shift with 2^20 factor.
-
-Signed-off-by: Simran Rai <ssimran@broadcom.com>
-Signed-off-by: Ray Jui <rjui@broadcom.com>
-Reviewed-by: Scott Branden <sbranden@broadcom.com>
-Fixes: 5fe225c105fd ("clk: iproc: add initial common clock support")
-Cc: <stable@vger.kernel.org> # v4.1+
-Signed-off-by: Michael Turquette <mturquette@baylibre.com>
----
- drivers/clk/bcm/clk-iproc-pll.c | 13 +++++--------
- 1 file changed, 5 insertions(+), 8 deletions(-)
-
---- a/drivers/clk/bcm/clk-iproc-pll.c
-+++ b/drivers/clk/bcm/clk-iproc-pll.c
-@@ -345,8 +345,8 @@ static unsigned long iproc_pll_recalc_ra
-       struct iproc_pll *pll = clk->pll;
-       const struct iproc_pll_ctrl *ctrl = pll->ctrl;
-       u32 val;
--      u64 ndiv;
--      unsigned int ndiv_int, ndiv_frac, pdiv;
-+      u64 ndiv, ndiv_int, ndiv_frac;
-+      unsigned int pdiv;
-       if (parent_rate == 0)
-               return 0;
-@@ -366,22 +366,19 @@ static unsigned long iproc_pll_recalc_ra
-       val = readl(pll->pll_base + ctrl->ndiv_int.offset);
-       ndiv_int = (val >> ctrl->ndiv_int.shift) &
-               bit_mask(ctrl->ndiv_int.width);
--      ndiv = (u64)ndiv_int << ctrl->ndiv_int.shift;
-+      ndiv = ndiv_int << 20;
-       if (ctrl->flags & IPROC_CLK_PLL_HAS_NDIV_FRAC) {
-               val = readl(pll->pll_base + ctrl->ndiv_frac.offset);
-               ndiv_frac = (val >> ctrl->ndiv_frac.shift) &
-                       bit_mask(ctrl->ndiv_frac.width);
--
--              if (ndiv_frac != 0)
--                      ndiv = ((u64)ndiv_int << ctrl->ndiv_int.shift) |
--                              ndiv_frac;
-+              ndiv += ndiv_frac;
-       }
-       val = readl(pll->pll_base + ctrl->pdiv.offset);
-       pdiv = (val >> ctrl->pdiv.shift) & bit_mask(ctrl->pdiv.width);
--      clk->rate = (ndiv * parent_rate) >> ctrl->ndiv_int.shift;
-+      clk->rate = (ndiv * parent_rate) >> 20;
-       if (pdiv == 0)
-               clk->rate *= 2;
index ae70f429e99bf0f1c2f138fd3ded70cebfc8443a..a0cc267422994449bb87ba54a02a8b0d8c92c836 100644 (file)
@@ -74,7 +74,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
  /*
   * Set the run bit and wait for the host to be running.
   */
-@@ -557,10 +590,25 @@ int xhci_init(struct usb_hcd *hcd)
+@@ -567,10 +600,25 @@ int xhci_init(struct usb_hcd *hcd)
  
  static int xhci_run_finished(struct xhci_hcd *xhci)
  {
@@ -103,7 +103,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
        xhci->shared_hcd->state = HC_STATE_RUNNING;
        xhci->cmd_ring_state = CMD_RING_STATE_RUNNING;
  
-@@ -570,6 +618,9 @@ static int xhci_run_finished(struct xhci
+@@ -580,6 +628,9 @@ static int xhci_run_finished(struct xhci
        xhci_dbg_trace(xhci, trace_xhci_dbg_init,
                        "Finished xhci_run for USB3 roothub");
        return 0;
index 3e38bdfee290c1735dfb088b4fa6dd0ee89da1c5..ce37d5b3602a0e183cc9a5cec82c3fe091899a06 100644 (file)
@@ -6,7 +6,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
 
 --- a/net/packet/af_packet.c
 +++ b/net/packet/af_packet.c
-@@ -2323,7 +2323,7 @@ static void tpacket_destruct_skb(struct
+@@ -2329,7 +2329,7 @@ static void tpacket_destruct_skb(struct
  static bool ll_header_truncated(const struct net_device *dev, int len)
  {
        /* net device doesn't like empty head */
index aa315143fe2837b0357b237852e2f2052a412e7b..761cff316d0426ac707fc8b2651cf92799417d43 100644 (file)
@@ -20,7 +20,7 @@ Signed-off-by: RafaÅ‚ MiÅ‚ecki <zajec5@gmail.com>
 
 --- a/drivers/mtd/bcm47xxpart.c
 +++ b/drivers/mtd/bcm47xxpart.c
-@@ -118,8 +118,8 @@ static int bcm47xxpart_parse(struct mtd_info *master,
+@@ -118,8 +118,8 @@ static int bcm47xxpart_parse(struct mtd_
        /* Parse block by block looking for magics */
        for (offset = 0; offset <= master->size - blocksize;
             offset += blocksize) {
index f9e81f939594b18a321f31328ba8fa6328c61f5e..9073f795e2e356c172996b24037396e8861a236e 100644 (file)
@@ -14,11 +14,9 @@ Signed-off-by: RafaÅ‚ MiÅ‚ecki <zajec5@gmail.com>
  drivers/mtd/bcm47xxpart.c | 38 ++++++++++++++++++++++----------------
  1 file changed, 22 insertions(+), 16 deletions(-)
 
-diff --git a/drivers/mtd/bcm47xxpart.c b/drivers/mtd/bcm47xxpart.c
-index 4450e74..1ab3451 100644
 --- a/drivers/mtd/bcm47xxpart.c
 +++ b/drivers/mtd/bcm47xxpart.c
-@@ -66,11 +66,13 @@ static const char *bcm47xxpart_trx_data_part_name(struct mtd_info *master,
+@@ -66,11 +66,13 @@ static const char *bcm47xxpart_trx_data_
  {
        uint32_t buf;
        size_t bytes_read;
@@ -36,7 +34,7 @@ index 4450e74..1ab3451 100644
                goto out_default;
        }
  
-@@ -95,6 +97,7 @@ static int bcm47xxpart_parse(struct mtd_info *master,
+@@ -95,6 +97,7 @@ static int bcm47xxpart_parse(struct mtd_
        int trx_part = -1;
        int last_trx_part = -1;
        int possible_nvram_sizes[] = { 0x8000, 0xF000, 0x10000, };
@@ -44,7 +42,7 @@ index 4450e74..1ab3451 100644
  
        /*
         * Some really old flashes (like AT45DB*) had smaller erasesize-s, but
-@@ -128,10 +131,11 @@ static int bcm47xxpart_parse(struct mtd_info *master,
+@@ -128,10 +131,11 @@ static int bcm47xxpart_parse(struct mtd_
                }
  
                /* Read beginning of the block */
@@ -60,7 +58,7 @@ index 4450e74..1ab3451 100644
                        continue;
                }
  
-@@ -254,10 +258,11 @@ static int bcm47xxpart_parse(struct mtd_info *master,
+@@ -254,10 +258,11 @@ static int bcm47xxpart_parse(struct mtd_
                }
  
                /* Read middle of the block */
@@ -76,7 +74,7 @@ index 4450e74..1ab3451 100644
                        continue;
                }
  
-@@ -277,10 +282,11 @@ static int bcm47xxpart_parse(struct mtd_info *master,
+@@ -277,10 +282,11 @@ static int bcm47xxpart_parse(struct mtd_
                }
  
                offset = master->size - possible_nvram_sizes[i];
@@ -92,6 +90,3 @@ index 4450e74..1ab3451 100644
                        continue;
                }
  
--- 
-1.8.4.5
-
diff --git a/target/linux/generic/patches-4.3/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch b/target/linux/generic/patches-4.3/192-USB-qcserial-Add-support-for-Quectel-EC20-Mini-PCIe-.patch
deleted file mode 100644 (file)
index 1d0db6b..0000000
+++ /dev/null
@@ -1,114 +0,0 @@
-From 128524b9db3e4f4245226852bee771bd03db75be Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Petr=20=C5=A0tetiar?= <ynezz@true.cz>
-Date: Tue, 3 Nov 2015 11:01:42 +0100
-Subject: [PATCH 1/2] USB: qcserial: Add support for Quectel EC20 Mini PCIe
- module
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-It seems like this device has same vendor and product IDs as G2K
-devices, but it has different number of interfaces(4 vs 5) and also
-different interface layout which makes it currently unusable:
-
-       usbcore: registered new interface driver qcserial
-       usbserial: USB Serial support registered for Qualcomm USB modem
-       usb 2-1.2: unknown number of interfaces: 5
-
-lsusb output:
-
-       Bus 002 Device 003: ID 05c6:9215 Qualcomm, Inc. Acer Gobi 2000 Wireless
-       Device Descriptor:
-         bLength                18
-         bDescriptorType         1
-         bcdUSB               2.00
-         bDeviceClass            0 (Defined at Interface level)
-         bDeviceSubClass         0
-         bDeviceProtocol         0
-         bMaxPacketSize0        64
-         idVendor           0x05c6 Qualcomm, Inc.
-         idProduct          0x9215 Acer Gobi 2000 Wireless Modem
-         bcdDevice            2.32
-         iManufacturer           1 Quectel
-         iProduct                2 Quectel LTE Module
-         iSerial                 0
-         bNumConfigurations      1
-         Configuration Descriptor:
-           bLength                 9
-           bDescriptorType         2
-           wTotalLength          209
-           bNumInterfaces          5
-           bConfigurationValue     1
-           iConfiguration          0
-           bmAttributes         0xa0
-             (Bus Powered)
-             Remote Wakeup
-           MaxPower              500mA
-
-Signed-off-by: Petr Å tetiar <ynezz@true.cz>
----
- drivers/usb/serial/qcserial.c |   39 +++++++++++++++++++++++++++++++++++++++
- 1 file changed, 39 insertions(+)
-
---- a/drivers/usb/serial/qcserial.c
-+++ b/drivers/usb/serial/qcserial.c
-@@ -22,6 +22,8 @@
- #define DRIVER_AUTHOR "Qualcomm Inc"
- #define DRIVER_DESC "Qualcomm USB Serial driver"
-+#define QUECTEL_EC20_IDPRODUCT 0x9215
-+
- /* standard device layouts supported by this driver */
- enum qcserial_layouts {
-       QCSERIAL_G2K = 0,       /* Gobi 2000 */
-@@ -167,6 +169,38 @@ static const struct usb_device_id id_tab
- };
- MODULE_DEVICE_TABLE(usb, id_table);
-+static int handle_quectel_ec20(struct device *dev, int ifnum)
-+{
-+      int altsetting = 0;
-+
-+      /*
-+       * Quectel EC20 Mini PCIe LTE module layout:
-+       * 0: DM/DIAG (use libqcdm from ModemManager for communication)
-+       * 1: NMEA
-+       * 2: AT-capable modem port
-+       * 3: Modem interface
-+       * 4: NDIS
-+       */
-+      switch (ifnum) {
-+      case 0:
-+              dev_dbg(dev, "Quectel EC20 DM/DIAG interface found\n");
-+              break;
-+      case 1:
-+              dev_dbg(dev, "Quectel EC20 NMEA GPS interface found\n");
-+              break;
-+      case 2:
-+      case 3:
-+              dev_dbg(dev, "Quectel EC20 Modem port found\n");
-+              break;
-+      case 4:
-+              /* Don't claim the QMI/net interface */
-+              altsetting = -1;
-+              break;
-+      }
-+
-+      return altsetting;
-+}
-+
- static int qcprobe(struct usb_serial *serial, const struct usb_device_id *id)
- {
-       struct usb_host_interface *intf = serial->interface->cur_altsetting;
-@@ -235,6 +269,11 @@ static int qcprobe(struct usb_serial *se
-                       altsetting = -1;
-               break;
-       case QCSERIAL_G2K:
-+              if (nintf == 5 && id->idProduct == QUECTEL_EC20_IDPRODUCT) {
-+                      altsetting = handle_quectel_ec20(dev, ifnum);
-+                      goto done;
-+              }
-+
-               /*
-                * Gobi 2K+ USB layout:
-                * 0: QMI/net
diff --git a/target/linux/generic/patches-4.3/192-net-Fix-presrc-lookups.patch b/target/linux/generic/patches-4.3/192-net-Fix-presrc-lookups.patch
deleted file mode 100644 (file)
index d47e808..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-From patchwork Tue Nov  3 23:59:28 2015
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: net: Fix prefsrc lookups
-From: David Ahern <dsa@cumulusnetworks.com>
-X-Patchwork-Id: 539645
-Message-Id: <1446595168-27323-1-git-send-email-dsa@cumulusnetworks.com>
-To: netdev@vger.kernel.org
-Cc: vladi@aresgate.net, David Ahern <dsa@cumulusnetworks.com>
-Date: Tue,  3 Nov 2015 15:59:28 -0800
-
-A bug report (https://bugzilla.kernel.org/show_bug.cgi?id=107071) noted
-that the follwoing ip command is failing with v4.3:
-
-    $ ip route add 10.248.5.0/24 dev bond0.250 table vlan_250 src 10.248.5.154
-    RTNETLINK answers: Invalid argument
-
-021dd3b8a142d changed the lookup of the given preferred source address to
-use the table id passed in, but this assumes the local entries are in the
-given table which is not necessarily true for non-VRF use cases. When
-validating the preferred source fallback to the local table on failure.
-
-Fixes: 021dd3b8a142d ("net: Add routes to the table associated with the device")
-Signed-off-by: David Ahern <dsa@cumulusnetworks.com>
----
-This is needed in v4.3.
-
- net/ipv4/fib_semantics.c | 13 ++++++++++---
- 1 file changed, 10 insertions(+), 3 deletions(-)
-
---- a/net/ipv4/fib_semantics.c
-+++ b/net/ipv4/fib_semantics.c
-@@ -864,14 +864,21 @@ static bool fib_valid_prefsrc(struct fib
-       if (cfg->fc_type != RTN_LOCAL || !cfg->fc_dst ||
-           fib_prefsrc != cfg->fc_dst) {
-               u32 tb_id = cfg->fc_table;
-+              int rc;
-               if (tb_id == RT_TABLE_MAIN)
-                       tb_id = RT_TABLE_LOCAL;
--              if (inet_addr_type_table(cfg->fc_nlinfo.nl_net,
--                                       fib_prefsrc, tb_id) != RTN_LOCAL) {
--                      return false;
-+              rc = inet_addr_type_table(cfg->fc_nlinfo.nl_net,
-+                                        fib_prefsrc, tb_id);
-+
-+              if (rc != RTN_LOCAL && tb_id != RT_TABLE_LOCAL) {
-+                      rc = inet_addr_type_table(cfg->fc_nlinfo.nl_net,
-+                                                fib_prefsrc, RT_TABLE_LOCAL);
-               }
-+
-+              if (rc != RTN_LOCAL)
-+                      return false;
-       }
-       return true;
- }
index 1b1afd5d31d06fe2448ecd45e95ea52d69788bf6..bdba30d4158a23e44996dd405d0fe55b66de13fb 100644 (file)
@@ -48,7 +48,7 @@ Signed-off-by: Petr Å tetiar <ynezz@true.cz>
 
 --- a/drivers/net/usb/qmi_wwan.c
 +++ b/drivers/net/usb/qmi_wwan.c
-@@ -822,6 +822,7 @@ static const struct usb_device_id produc
+@@ -823,6 +823,7 @@ static const struct usb_device_id produc
        {QMI_GOBI_DEVICE(0x05c6, 0x9245)},      /* Samsung Gobi 2000 Modem device (VL176) */
        {QMI_GOBI_DEVICE(0x03f0, 0x251d)},      /* HP Gobi 2000 Modem device (VP412) */
        {QMI_GOBI_DEVICE(0x05c6, 0x9215)},      /* Acer Gobi 2000 Modem device (VP413) */
@@ -56,7 +56,7 @@ Signed-off-by: Petr Å tetiar <ynezz@true.cz>
        {QMI_GOBI_DEVICE(0x05c6, 0x9265)},      /* Asus Gobi 2000 Modem device (VR305) */
        {QMI_GOBI_DEVICE(0x05c6, 0x9235)},      /* Top Global Gobi 2000 Modem device (VR306) */
        {QMI_GOBI_DEVICE(0x05c6, 0x9275)},      /* iRex Technologies Gobi 2000 Modem device (VR307) */
-@@ -853,10 +854,24 @@ static const struct usb_device_id produc
+@@ -854,10 +855,24 @@ static const struct usb_device_id produc
  };
  MODULE_DEVICE_TABLE(usb, products);
  
@@ -81,7 +81,7 @@ Signed-off-by: Petr Å tetiar <ynezz@true.cz>
  
        /* Workaround to enable dynamic IDs.  This disables usbnet
         * blacklisting functionality.  Which, if required, can be
-@@ -868,6 +883,12 @@ static int qmi_wwan_probe(struct usb_int
+@@ -869,6 +884,12 @@ static int qmi_wwan_probe(struct usb_int
                id->driver_info = (unsigned long)&qmi_wwan_info;
        }
  
index add00c7923feaf2772a5d34686d61d069b1d95c0..11c543636f938b8ec460d7e7eb21f0e5b94fc47e 100644 (file)
@@ -26,7 +26,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  #define PACKET_FANOUT_LB              1
 --- a/net/packet/af_packet.c
 +++ b/net/packet/af_packet.c
-@@ -1750,6 +1750,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1764,6 +1764,7 @@ static int packet_rcv_spkt(struct sk_buf
  {
        struct sock *sk;
        struct sockaddr_pkt *spkt;
@@ -34,7 +34,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  
        /*
         *      When we registered the protocol we saved the socket in the data
-@@ -1757,6 +1758,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1771,6 +1772,7 @@ static int packet_rcv_spkt(struct sk_buf
         */
  
        sk = pt->af_packet_priv;
@@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  
        /*
         *      Yank back the headers [hope the device set this
-@@ -1769,7 +1771,7 @@ static int packet_rcv_spkt(struct sk_buf
+@@ -1783,7 +1785,7 @@ static int packet_rcv_spkt(struct sk_buf
         *      so that this procedure is noop.
         */
  
@@ -51,7 +51,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
                goto out;
  
        if (!net_eq(dev_net(dev), sock_net(sk)))
-@@ -1976,12 +1978,12 @@ static int packet_rcv(struct sk_buff *sk
+@@ -1982,12 +1984,12 @@ static int packet_rcv(struct sk_buff *sk
        int skb_len = skb->len;
        unsigned int snaplen, res;
  
@@ -67,7 +67,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
        if (!net_eq(dev_net(dev), sock_net(sk)))
                goto drop;
  
-@@ -2101,12 +2103,12 @@ static int tpacket_rcv(struct sk_buff *s
+@@ -2107,12 +2109,12 @@ static int tpacket_rcv(struct sk_buff *s
        BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32);
        BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48);
  
@@ -83,7 +83,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
        if (!net_eq(dev_net(dev), sock_net(sk)))
                goto drop;
  
-@@ -3069,6 +3071,7 @@ static int packet_create(struct net *net
+@@ -3089,6 +3091,7 @@ static int packet_create(struct net *net
        mutex_init(&po->pg_vec_lock);
        po->rollover = NULL;
        po->prot_hook.func = packet_rcv;
@@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  
        if (sock->type == SOCK_PACKET)
                po->prot_hook.func = packet_rcv_spkt;
-@@ -3684,6 +3687,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3704,6 +3707,16 @@ packet_setsockopt(struct socket *sock, i
                po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
                return 0;
        }
@@ -108,7 +108,7 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
        default:
                return -ENOPROTOOPT;
        }
-@@ -3736,6 +3749,13 @@ static int packet_getsockopt(struct sock
+@@ -3756,6 +3769,13 @@ static int packet_getsockopt(struct sock
        case PACKET_VNET_HDR:
                val = po->has_vnet_hdr;
                break;
index fba373a3c034eba3dd54ed305fa61030c934742b..4ba20be3537031b0f99ab5ae4867bef60a017f1b 100644 (file)
@@ -32,7 +32,7 @@
  {
 --- a/include/net/sch_generic.h
 +++ b/include/net/sch_generic.h
-@@ -341,6 +341,7 @@ extern struct Qdisc_ops noop_qdisc_ops;
+@@ -344,6 +344,7 @@ extern struct Qdisc_ops noop_qdisc_ops;
  extern struct Qdisc_ops pfifo_fast_ops;
  extern struct Qdisc_ops mq_qdisc_ops;
  extern struct Qdisc_ops noqueue_qdisc_ops;
index 838c9f62060033e0f66a80f95b09b99b974b05ba..2682441b1cfcda5dd11353b0c12883b8be33ff8a 100644 (file)
@@ -1,6 +1,6 @@
 --- a/net/sched/sch_api.c
 +++ b/net/sched/sch_api.c
-@@ -1936,7 +1936,7 @@ static int __init pktsched_init(void)
+@@ -1945,7 +1945,7 @@ static int __init pktsched_init(void)
                return err;
        }
  
index 7ae6abf80d65a65ec7ebae8f7428beb56d66b30a..e325e5d020b0f664d18b29ae5f0ca57f09017c0a 100644 (file)
@@ -143,7 +143,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  static const struct rt6_info ip6_blk_hole_entry_template = {
        .dst = {
                .__refcnt       = ATOMIC_INIT(1),
-@@ -1886,6 +1903,11 @@ int ip6_route_info_create(struct fib6_co
+@@ -1902,6 +1919,11 @@ int ip6_route_info_create(struct fib6_co
                        rt->dst.output = ip6_pkt_prohibit_out;
                        rt->dst.input = ip6_pkt_prohibit;
                        break;
@@ -155,7 +155,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                case RTN_THROW:
                case RTN_UNREACHABLE:
                default:
-@@ -2488,6 +2510,17 @@ static int ip6_pkt_prohibit_out(struct s
+@@ -2504,6 +2526,17 @@ static int ip6_pkt_prohibit_out(struct s
        return ip6_pkt_drop(skb, ICMPV6_ADM_PROHIBITED, IPSTATS_MIB_OUTNOROUTES);
  }
  
@@ -173,7 +173,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  /*
   *    Allocate a dst for local (unicast / anycast) address.
   */
-@@ -2728,7 +2761,8 @@ static int rtm_to_fib6_config(struct sk_
+@@ -2744,7 +2777,8 @@ static int rtm_to_fib6_config(struct sk_
        if (rtm->rtm_type == RTN_UNREACHABLE ||
            rtm->rtm_type == RTN_BLACKHOLE ||
            rtm->rtm_type == RTN_PROHIBIT ||
@@ -183,7 +183,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                cfg->fc_flags |= RTF_REJECT;
  
        if (rtm->rtm_type == RTN_LOCAL)
-@@ -3084,6 +3118,9 @@ static int rt6_fill_node(struct net *net
+@@ -3100,6 +3134,9 @@ static int rt6_fill_node(struct net *net
                case -EACCES:
                        rtm->rtm_type = RTN_PROHIBIT;
                        break;
@@ -193,7 +193,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                case -EAGAIN:
                        rtm->rtm_type = RTN_THROW;
                        break;
-@@ -3352,6 +3389,8 @@ static int ip6_route_dev_notify(struct n
+@@ -3368,6 +3405,8 @@ static int ip6_route_dev_notify(struct n
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
                net->ipv6.ip6_prohibit_entry->dst.dev = dev;
                net->ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(dev);
@@ -202,7 +202,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
                net->ipv6.ip6_blk_hole_entry->dst.dev = dev;
                net->ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(dev);
  #endif
-@@ -3568,6 +3607,17 @@ static int __net_init ip6_route_net_init
+@@ -3584,6 +3623,17 @@ static int __net_init ip6_route_net_init
        net->ipv6.ip6_blk_hole_entry->dst.ops = &net->ipv6.ip6_dst_ops;
        dst_init_metrics(&net->ipv6.ip6_blk_hole_entry->dst,
                         ip6_template_metrics, true);
@@ -220,7 +220,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  #endif
  
        net->ipv6.sysctl.flush_delay = 0;
-@@ -3586,6 +3636,8 @@ out:
+@@ -3602,6 +3652,8 @@ out:
        return ret;
  
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
@@ -229,7 +229,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  out_ip6_prohibit_entry:
        kfree(net->ipv6.ip6_prohibit_entry);
  out_ip6_null_entry:
-@@ -3603,6 +3655,7 @@ static void __net_exit ip6_route_net_exi
+@@ -3619,6 +3671,7 @@ static void __net_exit ip6_route_net_exi
  #ifdef CONFIG_IPV6_MULTIPLE_TABLES
        kfree(net->ipv6.ip6_prohibit_entry);
        kfree(net->ipv6.ip6_blk_hole_entry);
@@ -237,7 +237,7 @@ Signed-off-by: Jonas Gorski <jogo@openwrt.org>
  #endif
        dst_entries_destroy(&net->ipv6.ip6_dst_ops);
  }
-@@ -3700,6 +3753,9 @@ int __init ip6_route_init(void)
+@@ -3716,6 +3769,9 @@ int __init ip6_route_init(void)
        init_net.ipv6.ip6_prohibit_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
        init_net.ipv6.ip6_blk_hole_entry->dst.dev = init_net.loopback_dev;
        init_net.ipv6.ip6_blk_hole_entry->rt6i_idev = in6_dev_get(init_net.loopback_dev);
index a92e0f89603f63729234a6bec03d5bf1f5885f27..db166ed6fae9d2f90ec3706f8d0290eefb6cd80b 100644 (file)
@@ -13,10 +13,8 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  arch/arm/boot/dts/imx6qdl-gw54xx.dtsi | 2 ++
  1 file changed, 2 insertions(+)
 
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:37.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -260,6 +260,8 @@
                        swbst_reg: swbst {
                                regulator-min-microvolt = <5000000>;
index 2768b0906ed3090c116db1cffc895c282929eb9b..2101fdfcf3fdd3150371d6efd9a5ac86da7d0c97 100644 (file)
@@ -9,10 +9,8 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  arch/arm/boot/dts/imx6qdl-gw54xx.dtsi | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi    2015-12-18 10:43:32.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
 @@ -247,7 +247,7 @@
  &ldb {
        status = "okay";
@@ -22,10 +20,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
                fsl,data-mapping = "spwg";
                fsl,data-width = <18>;
                status = "okay";
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-12-18 10:39:44.855158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:32.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -338,7 +338,7 @@
  &ldb {
        status = "okay";
index 768648e5e447099c5a47572fd349f1ea4b2654fb..c861e3848cd4abe0f671deb0b63da6c96a5b403d 100644 (file)
@@ -20,10 +20,8 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  arch/arm/boot/dts/imx6qdl-gw54xx.dtsi | 7 +++++++
  3 files changed, 21 insertions(+)
 
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi    2015-12-18 10:43:32.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
 @@ -151,6 +151,13 @@
        status = "okay";
  };
@@ -38,10 +36,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
  &fec {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_enet>;
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi       2015-12-18 10:39:44.867158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi    2015-12-18 10:43:32.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
 @@ -152,6 +152,13 @@
        status = "okay";
  };
@@ -56,10 +52,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
  &fec {
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_enet>;
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-12-18 10:39:44.871158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:32.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -142,6 +142,13 @@
        status = "okay";
  };
index 221d95075161e85f832f89375a2a2abc09487e98..759f32e6f6ddf700dcd2d43e4c8331192a6e107b 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi    2015-12-18 10:43:27.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
 @@ -174,6 +174,24 @@
        status = "okay";
  };
@@ -52,10 +50,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
                pinctrl_uart1: uart1grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA      0x1b0b1
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi       2015-12-18 10:39:44.883158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi    2015-12-18 10:43:31.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
 @@ -282,6 +282,18 @@
        status = "okay";
  };
@@ -94,10 +90,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
                pinctrl_pwm4: pwm4grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_CMD__PWM4_OUT            0x1b0b1
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi       2015-12-18 10:39:44.883158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi    2015-12-18 10:43:27.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
 @@ -287,6 +287,18 @@
        };
  };
@@ -136,10 +130,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
                pinctrl_pwm4: pwm4grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_CMD__PWM4_OUT            0x1b0b1
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-12-18 10:39:44.883158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:27.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -378,6 +378,24 @@
        };
  };
@@ -190,10 +182,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
                pinctrl_pwm4: pwm4grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD1_CMD__PWM4_OUT            0x1b0b1
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw551x.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw551x.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw551x.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw551x.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw551x.dtsi
 @@ -198,6 +198,18 @@
        status = "okay";
  };
@@ -232,10 +222,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw551x.dtsi
                pinctrl_uart2: uart2grp {
                        fsl,pins = <
                                MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA      0x1b0b1
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw552x.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw552x.dtsi       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw552x.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw552x.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw552x.dtsi
 @@ -164,6 +164,18 @@
        status = "okay";
  };
index a0fb48ee8cbbb2eb050a9b54f459bcdb971a3b85..da3571559e1a849aa272d36081f8c5db5a6206eb 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi       2015-12-18 10:39:44.899158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi    2015-12-18 10:43:27.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
 @@ -158,6 +158,14 @@
                          <&clks IMX6QDL_CLK_PLL3_USB_OTG>;
  };
index 95524776c98551cb4fbec6501fc18dd365f4125b..6baf7dd801fb1abe7ec92212cb8c478a12e8bec1 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/drivers/thermal/imx_thermal.c
-===================================================================
---- linux-4.3.orig/drivers/thermal/imx_thermal.c       2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/thermal/imx_thermal.c    2015-12-18 10:39:44.915158318 -0800
+--- a/drivers/thermal/imx_thermal.c
++++ b/drivers/thermal/imx_thermal.c
 @@ -55,6 +55,7 @@
  #define TEMPSENSE2_PANIC_VALUE_SHIFT  16
  #define TEMPSENSE2_PANIC_VALUE_MASK   0xfff0000
@@ -10,7 +8,7 @@ Index: linux-4.3/drivers/thermal/imx_thermal.c
  #define OCOTP_ANA1                    0x04e0
  
  /* The driver supports 1 passive trip point and 1 critical trip point */
-@@ -64,12 +65,6 @@
+@@ -64,12 +65,6 @@ enum imx_thermal_trip {
        IMX_TRIP_NUM,
  };
  
@@ -23,7 +21,7 @@ Index: linux-4.3/drivers/thermal/imx_thermal.c
  #define IMX_POLLING_DELAY             2000 /* millisecond */
  #define IMX_PASSIVE_DELAY             1000
  
-@@ -100,12 +95,14 @@
+@@ -100,12 +95,14 @@ struct imx_thermal_data {
        u32 c1, c2; /* See formula in imx_get_sensor_data() */
        int temp_passive;
        int temp_critical;
@@ -38,7 +36,7 @@ Index: linux-4.3/drivers/thermal/imx_thermal.c
  };
  
  static void imx_set_panic_temp(struct imx_thermal_data *data,
-@@ -285,10 +282,12 @@
+@@ -285,10 +282,12 @@ static int imx_set_trip_temp(struct ther
  {
        struct imx_thermal_data *data = tz->devdata;
  
@@ -52,7 +50,7 @@ Index: linux-4.3/drivers/thermal/imx_thermal.c
                return -EINVAL;
  
        data->temp_passive = temp;
-@@ -404,17 +403,39 @@
+@@ -404,17 +403,39 @@ static int imx_get_sensor_data(struct pl
        data->c1 = temp64;
        data->c2 = n1 * data->c1 + 1000 * t1;
  
@@ -100,7 +98,7 @@ Index: linux-4.3/drivers/thermal/imx_thermal.c
  
        return 0;
  }
-@@ -559,6 +580,11 @@
+@@ -559,6 +580,11 @@ static int imx_thermal_probe(struct plat
                return ret;
        }
  
index 3c22ec780ef10104a6d2d913b7c3dba4a20c186f..09543912036de3fb9ea819313747eff1a0c046d8 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/arch/arm/boot/dts/imx6dl-wandboard.dts
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6dl-wandboard.dts      2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6dl-wandboard.dts   2015-12-18 10:39:44.923158318 -0800
+--- a/arch/arm/boot/dts/imx6dl-wandboard.dts
++++ b/arch/arm/boot/dts/imx6dl-wandboard.dts
 @@ -19,4 +19,8 @@
        memory {
                reg = <0x10000000 0x40000000>;
index 6a636a3e9d3d9268c9d6b6010eb2389d65b7f32b..6bc23c520690a119d37a6a2d6ee9237aa24ea86f 100644 (file)
@@ -8,11 +8,9 @@ Date:   Thu May 15 00:12:26 2014 -0700
     
     Signed-off-by: Tim Harvey <tharvey@gateworks.com>
 
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_phy.c  2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c       2015-12-18 10:43:28.000000000 -0800
-@@ -129,7 +129,7 @@
+--- a/drivers/net/ethernet/intel/igb/e1000_phy.c
++++ b/drivers/net/ethernet/intel/igb/e1000_phy.c
+@@ -129,7 +129,7 @@ out:
  s32 igb_read_phy_reg_mdic(struct e1000_hw *hw, u32 offset, u16 *data)
  {
        struct e1000_phy_info *phy = &hw->phy;
@@ -21,7 +19,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
        s32 ret_val = 0;
  
        if (offset > MAX_PHY_REG_ADDRESS) {
-@@ -142,11 +142,25 @@
+@@ -142,11 +142,25 @@ s32 igb_read_phy_reg_mdic(struct e1000_h
         * Control register.  The MAC will take care of interfacing with the
         * PHY to retrieve the desired data.
         */
@@ -50,7 +48,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
        /* Poll the ready bit to see if the MDI read completed
         * Increasing the time out as testing showed failures with
-@@ -171,6 +185,18 @@
+@@ -171,6 +185,18 @@ s32 igb_read_phy_reg_mdic(struct e1000_h
        *data = (u16) mdic;
  
  out:
@@ -69,7 +67,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
        return ret_val;
  }
  
-@@ -185,7 +211,7 @@
+@@ -185,7 +211,7 @@ out:
  s32 igb_write_phy_reg_mdic(struct e1000_hw *hw, u32 offset, u16 data)
  {
        struct e1000_phy_info *phy = &hw->phy;
@@ -78,7 +76,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
        s32 ret_val = 0;
  
        if (offset > MAX_PHY_REG_ADDRESS) {
-@@ -198,12 +224,27 @@
+@@ -198,12 +224,27 @@ s32 igb_write_phy_reg_mdic(struct e1000_
         * Control register.  The MAC will take care of interfacing with the
         * PHY to retrieve the desired data.
         */
@@ -110,7 +108,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
        /* Poll the ready bit to see if the MDI read completed
         * Increasing the time out as testing showed failures with
-@@ -227,6 +268,18 @@
+@@ -227,6 +268,18 @@ s32 igb_write_phy_reg_mdic(struct e1000_
        }
  
  out:
index 4bb691d36b82d9773322afcb1df418dce99fe4c4..9d19af5cd7ccc162ad6657caeb7ceaff84b3ac02 100644 (file)
@@ -14,11 +14,9 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  drivers/net/ethernet/intel/igb/e1000_phy.h   |  6 ++-
  3 files changed, 58 insertions(+), 26 deletions(-)
 
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_82575.c        2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c     2015-12-18 10:43:28.000000000 -0800
-@@ -2153,7 +2153,7 @@
+--- a/drivers/net/ethernet/intel/igb/e1000_82575.c
++++ b/drivers/net/ethernet/intel/igb/e1000_82575.c
+@@ -2153,7 +2153,7 @@ static s32 igb_read_phy_reg_82580(struct
        if (ret_val)
                goto out;
  
@@ -27,7 +25,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
  
        hw->phy.ops.release(hw);
  
-@@ -2178,7 +2178,7 @@
+@@ -2178,7 +2178,7 @@ static s32 igb_write_phy_reg_82580(struc
        if (ret_val)
                goto out;
  
@@ -36,11 +34,9 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
  
        hw->phy.ops.release(hw);
  
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_phy.c  2015-12-18 10:39:44.931158318 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c       2015-12-18 10:39:44.939158318 -0800
-@@ -126,9 +126,8 @@
+--- a/drivers/net/ethernet/intel/igb/e1000_phy.c
++++ b/drivers/net/ethernet/intel/igb/e1000_phy.c
+@@ -126,9 +126,8 @@ out:
   *  Reads the MDI control regsiter in the PHY at offset and stores the
   *  information read to data.
   **/
@@ -51,7 +47,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
        u32 i, mdicnfg, mdic = 0;
        s32 ret_val = 0;
  
-@@ -147,14 +146,14 @@
+@@ -147,14 +146,14 @@ s32 igb_read_phy_reg_mdic(struct e1000_h
        case e1000_i211:
                mdicnfg = rd32(E1000_MDICNFG);
                mdicnfg &= ~(E1000_MDICNFG_PHY_MASK);
@@ -68,7 +64,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
                        (E1000_MDIC_OP_READ));
                break;
        }
-@@ -208,9 +207,8 @@
+@@ -208,9 +207,8 @@ out:
   *
   *  Writes data to MDI control register in the PHY at offset.
   **/
@@ -79,7 +75,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
        u32 i, mdicnfg, mdic = 0;
        s32 ret_val = 0;
  
-@@ -229,7 +227,7 @@
+@@ -229,7 +227,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_
                case e1000_i211:
                        mdicnfg = rd32(E1000_MDICNFG);
                        mdicnfg &= ~(E1000_MDICNFG_PHY_MASK);
@@ -88,7 +84,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
                        wr32(E1000_MDICNFG, mdicnfg);
                        mdic = (((u32)data) |
                                (offset << E1000_MDIC_REG_SHIFT) |
-@@ -238,7 +236,7 @@
+@@ -238,7 +236,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_
                default:
                        mdic = (((u32)data) |
                                (offset << E1000_MDIC_REG_SHIFT) |
@@ -97,7 +93,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
                                (E1000_MDIC_OP_WRITE));
                        break;
        }
-@@ -458,7 +456,7 @@
+@@ -458,7 +456,7 @@ s32 igb_read_phy_reg_igp(struct e1000_hw
                goto out;
  
        if (offset > MAX_PHY_MULTI_PAGE_REG) {
@@ -106,7 +102,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
                                                 IGP01E1000_PHY_PAGE_SELECT,
                                                 (u16)offset);
                if (ret_val) {
-@@ -467,8 +465,8 @@
+@@ -467,8 +465,8 @@ s32 igb_read_phy_reg_igp(struct e1000_hw
                }
        }
  
@@ -117,7 +113,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
        hw->phy.ops.release(hw);
  
-@@ -497,7 +495,7 @@
+@@ -497,7 +495,7 @@ s32 igb_write_phy_reg_igp(struct e1000_h
                goto out;
  
        if (offset > MAX_PHY_MULTI_PAGE_REG) {
@@ -126,7 +122,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
                                                 IGP01E1000_PHY_PAGE_SELECT,
                                                 (u16)offset);
                if (ret_val) {
-@@ -506,8 +504,8 @@
+@@ -506,8 +504,8 @@ s32 igb_write_phy_reg_igp(struct e1000_h
                }
        }
  
@@ -137,7 +133,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
        hw->phy.ops.release(hw);
  
-@@ -2547,8 +2545,9 @@
+@@ -2547,8 +2545,9 @@ out:
  }
  
  /**
@@ -148,7 +144,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
   *  @offset: lower half is register offset to write to
   *     upper half is page to use.
   *  @data: data to write at register offset
-@@ -2556,7 +2555,7 @@
+@@ -2556,7 +2555,7 @@ out:
   *  Acquires semaphore, if necessary, then writes the data to PHY register
   *  at the offset.  Release any acquired semaphores before exiting.
   **/
@@ -157,7 +153,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  {
        s32 ret_val;
        u16 page = offset >> GS40G_PAGE_SHIFT;
-@@ -2566,10 +2565,10 @@
+@@ -2566,10 +2565,10 @@ s32 igb_write_phy_reg_gs40g(struct e1000
        if (ret_val)
                return ret_val;
  
@@ -170,7 +166,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
  release:
        hw->phy.ops.release(hw);
-@@ -2577,8 +2576,24 @@
+@@ -2577,8 +2576,24 @@ release:
  }
  
  /**
@@ -196,7 +192,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
   *  @offset: lower half is register offset to read to
   *     upper half is page to use.
   *  @data: data to read at register offset
-@@ -2586,7 +2601,7 @@
+@@ -2586,7 +2601,7 @@ release:
   *  Acquires semaphore, if necessary, then reads the data in the PHY register
   *  at the offset.  Release any acquired semaphores before exiting.
   **/
@@ -205,7 +201,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  {
        s32 ret_val;
        u16 page = offset >> GS40G_PAGE_SHIFT;
-@@ -2596,10 +2611,10 @@
+@@ -2596,10 +2611,10 @@ s32 igb_read_phy_reg_gs40g(struct e1000_
        if (ret_val)
                return ret_val;
  
@@ -218,7 +214,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
  
  release:
        hw->phy.ops.release(hw);
-@@ -2607,6 +2622,21 @@
+@@ -2607,6 +2622,21 @@ release:
  }
  
  /**
@@ -240,11 +236,9 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.c
   *  igb_set_master_slave_mode - Setup PHY for Master/slave mode
   *  @hw: pointer to the HW structure
   *
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.h
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_phy.h  2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.h       2015-12-18 10:39:44.939158318 -0800
-@@ -62,8 +62,8 @@
+--- a/drivers/net/ethernet/intel/igb/e1000_phy.h
++++ b/drivers/net/ethernet/intel/igb/e1000_phy.h
+@@ -62,8 +62,8 @@ void igb_power_up_phy_copper(struct e100
  void igb_power_down_phy_copper(struct e1000_hw *hw);
  s32  igb_phy_init_script_igp3(struct e1000_hw *hw);
  s32  igb_initialize_M88E1512_phy(struct e1000_hw *hw);
@@ -255,7 +249,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_phy.h
  s32  igb_read_phy_reg_i2c(struct e1000_hw *hw, u32 offset, u16 *data);
  s32  igb_write_phy_reg_i2c(struct e1000_hw *hw, u32 offset, u16 data);
  s32  igb_read_sfp_data_byte(struct e1000_hw *hw, u16 offset, u8 *data);
-@@ -73,6 +73,8 @@
+@@ -73,6 +73,8 @@ s32  igb_phy_force_speed_duplex_82580(st
  s32  igb_get_cable_length_82580(struct e1000_hw *hw);
  s32  igb_read_phy_reg_gs40g(struct e1000_hw *hw, u32 offset, u16 *data);
  s32  igb_write_phy_reg_gs40g(struct e1000_hw *hw, u32 offset, u16 data);
index 4bee4ac686fd2f04f5167ca44ff51db8c9af5019..b73895b7d483a267fc26b7559fe4243fef71f8e2 100644 (file)
@@ -21,11 +21,9 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
  drivers/net/ethernet/intel/igb/igb_main.c    | 168 ++++++++++++++++++++++++++-
  3 files changed, 185 insertions(+), 5 deletions(-)
 
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_82575.c        2015-12-18 10:39:44.935158318 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c     2015-12-18 10:39:44.943158318 -0800
-@@ -612,13 +612,25 @@
+--- a/drivers/net/ethernet/intel/igb/e1000_82575.c
++++ b/drivers/net/ethernet/intel/igb/e1000_82575.c
+@@ -612,13 +612,25 @@ static s32 igb_get_invariants_82575(stru
        switch (link_mode) {
        case E1000_CTRL_EXT_LINK_MODE_1000BASE_KX:
                hw->phy.media_type = e1000_media_type_internal_serdes;
@@ -51,7 +49,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
                }
                /* fall through for I2C based SGMII */
        case E1000_CTRL_EXT_LINK_MODE_PCIE_SERDES:
-@@ -635,8 +647,11 @@
+@@ -635,8 +647,11 @@ static s32 igb_get_invariants_82575(stru
                                hw->phy.media_type = e1000_media_type_copper;
                                dev_spec->sgmii_active = true;
                        }
@@ -63,10 +61,8 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_82575.c
                }
  
                /* do not change link mode for 100BaseFX */
-Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_hw.h
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/e1000_hw.h   2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/e1000_hw.h        2015-12-18 10:39:44.943158318 -0800
+--- a/drivers/net/ethernet/intel/igb/e1000_hw.h
++++ b/drivers/net/ethernet/intel/igb/e1000_hw.h
 @@ -27,6 +27,7 @@
  #include <linux/delay.h>
  #include <linux/io.h>
@@ -75,7 +71,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_hw.h
  
  #include "e1000_regs.h"
  #include "e1000_defines.h"
-@@ -543,6 +544,12 @@
+@@ -543,6 +544,12 @@ struct e1000_hw {
        struct e1000_mbx_info mbx;
        struct e1000_host_mng_dhcp_cookie mng_cookie;
  
@@ -88,10 +84,8 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/e1000_hw.h
        union {
                struct e1000_dev_spec_82575     _82575;
        } dev_spec;
-Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/intel/igb/igb_main.c   2015-12-18 10:39:44.407158315 -0800
-+++ linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c        2015-12-18 10:39:44.943158318 -0800
+--- a/drivers/net/ethernet/intel/igb/igb_main.c
++++ b/drivers/net/ethernet/intel/igb/igb_main.c
 @@ -41,6 +41,7 @@
  #include <linux/if_vlan.h>
  #include <linux/pci.h>
@@ -100,7 +94,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
  #include <linux/delay.h>
  #include <linux/interrupt.h>
  #include <linux/ip.h>
-@@ -2223,6 +2224,126 @@
+@@ -2223,6 +2224,126 @@ static s32 igb_init_i2c(struct igb_adapt
        return status;
  }
  
@@ -227,7 +221,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
  /**
   *  igb_probe - Device Initialization Routine
   *  @pdev: PCI device information struct
-@@ -2645,6 +2766,13 @@
+@@ -2645,6 +2766,13 @@ static int igb_probe(struct pci_dev *pde
                }
        }
        pm_runtime_put_noidle(&pdev->dev);
@@ -241,7 +235,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
        return 0;
  
  err_register:
-@@ -2792,6 +2920,10 @@
+@@ -2792,6 +2920,10 @@ static void igb_remove(struct pci_dev *p
        struct e1000_hw *hw = &adapter->hw;
  
        pm_runtime_get_noresume(&pdev->dev);
@@ -252,7 +246,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
  #ifdef CONFIG_IGB_HWMON
        igb_sysfs_exit(adapter);
  #endif
-@@ -3105,6 +3237,12 @@
+@@ -3105,6 +3237,12 @@ static int __igb_open(struct net_device
        if (!resuming)
                pm_runtime_put(&pdev->dev);
  
@@ -265,7 +259,7 @@ Index: linux-4.3/drivers/net/ethernet/intel/igb/igb_main.c
        /* start the watchdog. */
        hw->mac.get_link_status = 1;
        schedule_work(&adapter->watchdog_task);
-@@ -7090,21 +7228,41 @@
+@@ -7090,21 +7228,41 @@ void igb_alloc_rx_buffers(struct igb_rin
  static int igb_mii_ioctl(struct net_device *netdev, struct ifreq *ifr, int cmd)
  {
        struct igb_adapter *adapter = netdev_priv(netdev);
index a2ca3257a85cae783e2dc677c8177a4ba582b1c8..c91b519272e3a90bfc0a3947b2888d728f8ccd3d 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-4.3/drivers/net/phy/Kconfig
-===================================================================
---- linux-4.3.orig/drivers/net/phy/Kconfig     2015-12-18 10:39:44.371158315 -0800
-+++ linux-4.3/drivers/net/phy/Kconfig  2015-12-18 10:39:44.951158318 -0800
-@@ -309,6 +309,14 @@
+--- a/drivers/net/phy/Kconfig
++++ b/drivers/net/phy/Kconfig
+@@ -309,6 +309,14 @@ endif # RTL8366_SMI
  
  source "drivers/net/phy/b53/Kconfig"
  
@@ -17,11 +15,9 @@ Index: linux-4.3/drivers/net/phy/Kconfig
  endif # PHYLIB
  
  config MICREL_KS8995MA
-Index: linux-4.3/drivers/net/phy/Makefile
-===================================================================
---- linux-4.3.orig/drivers/net/phy/Makefile    2015-12-18 10:39:44.371158315 -0800
-+++ linux-4.3/drivers/net/phy/Makefile 2015-12-18 10:39:44.951158318 -0800
-@@ -44,6 +44,7 @@
+--- a/drivers/net/phy/Makefile
++++ b/drivers/net/phy/Makefile
+@@ -44,6 +44,7 @@ obj-$(CONFIG_DP83848_PHY)    += dp83848.o
  obj-$(CONFIG_DP83867_PHY)     += dp83867.o
  obj-$(CONFIG_STE10XP)         += ste10Xp.o
  obj-$(CONFIG_MICREL_PHY)      += micrel.o
index 81fbe0ec644e4f2c230d82774a8c867a1a93c7ec..a9214d598ffc527798de82c2605d7e5969032d75 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi       2015-12-18 10:39:44.895158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
 @@ -158,6 +158,11 @@
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_i2c2>;
@@ -14,10 +12,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
  };
  
  &i2c3 {
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi       2015-12-18 10:39:44.907158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
 @@ -233,6 +233,11 @@
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_i2c2>;
@@ -30,10 +26,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw52xx.dtsi
  };
  
  &i2c3 {
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi       2015-12-18 10:39:44.899158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi    2015-12-18 10:43:25.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
 @@ -226,6 +226,11 @@
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_i2c2>;
@@ -46,10 +40,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
  };
  
  &i2c3 {
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-12-18 10:39:44.899158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:25.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -317,6 +317,11 @@
                        };
                };
index bfb5707ff0ea66619627a28950fc8f91a691170a..fa3bf138f65dd38882f60370abf685541e0e13ea 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-4.3/drivers/i2c/busses/i2c-imx.c
-===================================================================
---- linux-4.3.orig/drivers/i2c/busses/i2c-imx.c        2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/i2c/busses/i2c-imx.c     2015-12-18 10:39:44.971158318 -0800
-@@ -461,6 +461,8 @@
+--- a/drivers/i2c/busses/i2c-imx.c
++++ b/drivers/i2c/busses/i2c-imx.c
+@@ -461,6 +461,8 @@ static int i2c_imx_acked(struct imx_i2c_
  {
        if (imx_i2c_read_reg(i2c_imx, IMX_I2C_I2SR) & I2SR_RXAK) {
                dev_dbg(&i2c_imx->adapter.dev, "<%s> No ACK\n", __func__);
@@ -11,7 +9,7 @@ Index: linux-4.3/drivers/i2c/busses/i2c-imx.c
                return -EIO;  /* No ACK */
        }
  
-@@ -1010,6 +1012,10 @@
+@@ -1010,6 +1012,10 @@ static int i2c_imx_probe(struct platform
        i2c_imx->adapter.nr             = pdev->id;
        i2c_imx->adapter.dev.of_node    = pdev->dev.of_node;
        i2c_imx->base                   = base;
index 7a29846c25f2a5f1fe9d474dd8ebc7088b113dbe..9a94212235bf7aafd9a267785d1667670435765b 100644 (file)
@@ -1,8 +1,6 @@
-Index: linux-4.3/drivers/net/ethernet/marvell/sky2.c
-===================================================================
---- linux-4.3.orig/drivers/net/ethernet/marvell/sky2.c 2015-11-01 16:05:25.000000000 -0800
-+++ linux-4.3/drivers/net/ethernet/marvell/sky2.c      2015-12-18 10:39:44.983158318 -0800
-@@ -4812,7 +4812,24 @@
+--- a/drivers/net/ethernet/marvell/sky2.c
++++ b/drivers/net/ethernet/marvell/sky2.c
+@@ -4812,7 +4812,24 @@ static struct net_device *sky2_init_netd
         * 1) from device tree data
         * 2) from internal registers set by bootloader
         */
index 7377ce3756f555fa1fc8b54526f2c59474f39f73..490e015eb00288f97fd81002c13d6dd2e270c78d 100644 (file)
@@ -1,7 +1,5 @@
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi       2015-12-18 10:39:44.959158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
 @@ -15,6 +15,7 @@
        /* these are used by bootloader for disabling nodes */
        aliases {
@@ -10,10 +8,8 @@ Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw53xx.dtsi
                led0 = &led0;
                led1 = &led1;
                led2 = &led2;
-Index: linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
-===================================================================
---- linux-4.3.orig/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi       2015-12-18 10:39:44.959158318 -0800
-+++ linux-4.3/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi    2015-12-18 10:43:21.000000000 -0800
+--- a/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-gw54xx.dtsi
 @@ -15,6 +15,7 @@
        /* these are used by bootloader for disabling nodes */
        aliases {
index 0689949cb8c49222d758a16b7db3d21f2a300112..662fbd27f1bb1a6b25ff97f132217b09a03000aa 100644 (file)
@@ -1,31 +1,31 @@
 --- a/arch/mips/include/asm/octeon/cvmx-bootinfo.h
 +++ b/arch/mips/include/asm/octeon/cvmx-bootinfo.h
 @@ -283,6 +283,8 @@ enum cvmx_board_types_enum {
-        */
-       CVMX_BOARD_TYPE_CUST_PRIVATE_MIN = 20001,
-       CVMX_BOARD_TYPE_UBNT_E100 = 20002,
+        */
+       CVMX_BOARD_TYPE_CUST_PRIVATE_MIN = 20001,
+       CVMX_BOARD_TYPE_UBNT_E100 = 20002,
 +      CVMX_BOARD_TYPE_UBNT_E200 = 20003,
 +      CVMX_BOARD_TYPE_UBNT_E220 = 20005,
-       CVMX_BOARD_TYPE_CUST_DSR1000N = 20006,
-       CVMX_BOARD_TYPE_KONTRON_S1901 = 21901,
-       CVMX_BOARD_TYPE_CUST_PRIVATE_MAX = 30000,
+       CVMX_BOARD_TYPE_CUST_DSR1000N = 20006,
+       CVMX_BOARD_TYPE_KONTRON_S1901 = 21901,
+       CVMX_BOARD_TYPE_CUST_PRIVATE_MAX = 30000,
 @@ -384,6 +386,8 @@ static inline const char *cvmx_board_typ
-                   /* Customer private range */
-               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MIN)
-               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E100)
+                   /* Customer private range */
+               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MIN)
+               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E100)
 +              ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E200)
 +              ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_UBNT_E220)
-               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_DSR1000N)
-               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_KONTRON_S1901)
-               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MAX)
+               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_DSR1000N)
+               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_KONTRON_S1901)
+               ENUM_BRD_TYPE_CASE(CVMX_BOARD_TYPE_CUST_PRIVATE_MAX)
 --- a/arch/mips/cavium-octeon/executive/cvmx-helper-board.c
 +++ b/arch/mips/cavium-octeon/executive/cvmx-helper-board.c
 @@ -195,6 +195,8 @@ int cvmx_helper_board_get_mii_address(in
-                       return 8;
-               else
-                       return -1;
+                       return 8;
+               else
+                       return -1;
 +      case CVMX_BOARD_TYPE_UBNT_E200:
 +              return -1;
-       case CVMX_BOARD_TYPE_KONTRON_S1901:
-               if (ipd_port == CVMX_HELPER_BOARD_MGMT_IPD_PORT)
-                       return 1;
+       case CVMX_BOARD_TYPE_KONTRON_S1901:
+               if (ipd_port == CVMX_HELPER_BOARD_MGMT_IPD_PORT)
+                       return 1;
index b4a039ecc30b44caf3bd35a79cd8935fa01bff0d..0bd8968a09c0e12eb38a7a8880c1547d64f57925 100644 (file)
@@ -1,17 +1,17 @@
 --- a/drivers/staging/octeon/ethernet.c
 +++ b/drivers/staging/octeon/ethernet.c
 @@ -663,6 +663,7 @@ static int cvm_oct_probe(struct platform
-       int interface;
-       int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE;
-       int qos;
+       int interface;
+       int fau = FAU_NUM_PACKET_BUFFERS_TO_FREE;
+       int qos;
 +      int i;
-       struct device_node *pip;
-
-       octeon_mdiobus_force_mod_depencency();
+       struct device_node *pip;
+       octeon_mdiobus_force_mod_depencency();
 @@ -747,13 +748,19 @@ static int cvm_oct_probe(struct platform
-       }
-
-       num_interfaces = cvmx_helper_get_number_of_interfaces();
+       }
+       num_interfaces = cvmx_helper_get_number_of_interfaces();
 -      for (interface = 0; interface < num_interfaces; interface++) {
 -              cvmx_helper_interface_mode_t imode =
 -                  cvmx_helper_interface_get_mode(interface);
 +              cvmx_helper_interface_mode_t imode;
 +              int interface;
 +              int num_ports;
-               int port;
-               int port_index;
-
+               int port;
+               int port_index;
 +              interface = i;
 +              if (cvmx_sysinfo_get()->board_type == CVMX_BOARD_TYPE_UBNT_E200)
 +                      interface = num_interfaces - (i + 1);
 +
 +              num_ports = cvmx_helper_ports_on_interface(interface);
 +              imode = cvmx_helper_interface_get_mode(interface);
-               for (port_index = 0,
-                    port = cvmx_helper_get_ipd_port(interface, 0);
-                    port < cvmx_helper_get_ipd_port(interface, num_ports);
+               for (port_index = 0,
+                    port = cvmx_helper_get_ipd_port(interface, 0);
+                    port < cvmx_helper_get_ipd_port(interface, num_ports);
index 53e0321178a8e6bdd7bc9742ee1f988b88b686cf..62e5ef858a2aaa82832be5947393dd4db2db6fb2 100644 (file)
@@ -73,9 +73,9 @@
 --- a/drivers/mmc/host/Kconfig
 +++ b/drivers/mmc/host/Kconfig
 @@ -436,6 +436,16 @@ config MMC_MXS
-
-         If unsure, say N.
-
+         If unsure, say N.
 +config MMC_OCTEON
 +      tristate "Cavium OCTEON Multimedia Card Interface support"
 +      depends on CAVIUM_OCTEON_SOC
@@ -87,8 +87,8 @@
 +        If unsure, say N.
 +
  config MMC_TIFM_SD
-       tristate "TI Flash Media MMC/SD Interface support"
-       depends on PCI
+       tristate "TI Flash Media MMC/SD Interface support"
+       depends on PCI
 --- a/drivers/mmc/host/Makefile
 +++ b/drivers/mmc/host/Makefile
 @@ -20,6 +20,7 @@ obj-$(CONFIG_MMC_SDHCI_F_SDH30)      += sdhci
index fd177968292e61ca1398fd894cc862ee3e571d0a..6e042ef714076f45087e04325041ba7d7fad035d 100644 (file)
@@ -1,9 +1,9 @@
 --- a/arch/mips/cavium-octeon/setup.c
 +++ b/arch/mips/cavium-octeon/setup.c
 @@ -611,6 +611,35 @@ void octeon_user_io_init(void)
-       write_c0_derraddr1(0);
+       write_c0_derraddr1(0);
  }
-
 +#ifdef CONFIG_IMAGE_CMDLINE_HACK
 +extern char __image_cmdline[];
 +
   * Early entry point for arch setup
   */
 @@ -842,6 +871,8 @@ void __init prom_init(void)
-               }
-       }
-
+               }
+       }
 +      octeon_use_image_cmdline();
 +
-       if (strstr(arcs_cmdline, "console=") == NULL) {
+       if (strstr(arcs_cmdline, "console=") == NULL) {
  #ifdef CONFIG_CAVIUM_OCTEON_2ND_KERNEL
-               strcat(arcs_cmdline, " console=ttyS0,115200");
+               strcat(arcs_cmdline, " console=ttyS0,115200");
index 3bb7e2f2e4406a54a2ab85b3e3221cbf315fec9a..d788f2f076f8496d0b39f5a3452c29f1396c98dc 100644 (file)
@@ -9,9 +9,6 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  1 file changed, 197 insertions(+)
  create mode 100644 arch/mips/configs/mt7621_defconfig
 
-diff --git a/arch/mips/configs/mt7621_defconfig b/arch/mips/configs/mt7621_defconfig
-new file mode 100644
-index 0000000..7719471
 --- /dev/null
 +++ b/arch/mips/configs/mt7621_defconfig
 @@ -0,0 +1,197 @@
@@ -212,6 +209,3 @@ index 0000000..7719471
 +CONFIG_CRC32_SARWATE=y
 +# CONFIG_XZ_DEC_X86 is not set
 +CONFIG_AVERAGE=y
--- 
-1.7.10.4
-
index e2b2ba5e005dba6ea30bd20a3c1c1ab6cd3b9458..a21f5c6180c5e4237da060d1e0c3a3e850bd9f39 100644 (file)
@@ -11,8 +11,6 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  arch/mips/ralink/early_printk.c |   25 +++++++++++++++++++++++++
  1 file changed, 25 insertions(+)
 
-diff --git a/arch/mips/ralink/early_printk.c b/arch/mips/ralink/early_printk.c
-index 255d695..c04ee53 100644
 --- a/arch/mips/ralink/early_printk.c
 +++ b/arch/mips/ralink/early_printk.c
 @@ -25,11 +25,13 @@
@@ -61,6 +59,3 @@ index 255d695..c04ee53 100644
        if (IS_ENABLED(CONFIG_SOC_MT7621) || soc_is_mt7628()) {
                uart_w32(ch, UART_TX);
                while ((uart_r32(UART_REG_LSR) & UART_LSR_THRE) == 0)
--- 
-1.7.10.4
-
index f511b8838ef3010564172731cba0502b13cd3b25..cc61c29ca5907d6c75636898ab713a4c698fdb6c 100644 (file)
@@ -38,7 +38,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
 +};
 --- a/drivers/phy/Kconfig
 +++ b/drivers/phy/Kconfig
-@@ -331,6 +331,14 @@
+@@ -331,6 +331,14 @@ config PHY_XGENE
        help
          This option enables support for APM X-Gene SoC multi-purpose PHY.
  
@@ -55,7 +55,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        depends on RESET_CONTROLLER
 --- a/drivers/phy/Makefile
 +++ b/drivers/phy/Makefile
-@@ -46,3 +46,4 @@
+@@ -46,3 +46,4 @@ obj-$(CONFIG_PHY_QCOM_UFS)   += phy-qcom-
  obj-$(CONFIG_PHY_TUSB1210)            += phy-tusb1210.o
  obj-$(CONFIG_PHY_BRCMSTB_SATA)                += phy-brcmstb-sata.o
  obj-$(CONFIG_PHY_PISTACHIO_USB)               += phy-pistachio-usb.o
index 07c2eac015bcd1fb1827b898cdb9cd8b170019c0..db2929358414e0726bef6a0602404646d5bb8883 100644 (file)
@@ -5391,7 +5391,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  /* TODO: copied from ehci-hcd.c - can this be refactored? */
  /*
   * xhci_handshake - spin reading hc until handshake completes or fails
-@@ -198,7 +220,7 @@ int xhci_reset(struct xhci_hcd *xhci)
+@@ -208,7 +230,7 @@ int xhci_reset(struct xhci_hcd *xhci)
        return ret;
  }
  
@@ -5400,7 +5400,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  static int xhci_free_msi(struct xhci_hcd *xhci)
  {
        int i;
-@@ -448,6 +470,11 @@ static void compliance_mode_recovery(uns
+@@ -458,6 +480,11 @@ static void compliance_mode_recovery(uns
                                        "Attempting compliance mode recovery");
                        hcd = xhci->shared_hcd;
  
@@ -5412,7 +5412,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
                        if (hcd->state == HC_STATE_SUSPENDED)
                                usb_hcd_resume_root_hub(hcd);
  
-@@ -495,6 +522,9 @@ static bool xhci_compliance_mode_recover
+@@ -505,6 +532,9 @@ static bool xhci_compliance_mode_recover
  {
        const char *dmi_product_name, *dmi_sys_vendor;
  
@@ -5422,7 +5422,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        dmi_product_name = dmi_get_system_info(DMI_PRODUCT_NAME);
        dmi_sys_vendor = dmi_get_system_info(DMI_SYS_VENDOR);
        if (!dmi_product_name || !dmi_sys_vendor)
-@@ -540,6 +570,10 @@ int xhci_init(struct usb_hcd *hcd)
+@@ -550,6 +580,10 @@ int xhci_init(struct usb_hcd *hcd)
                xhci_dbg_trace(xhci, trace_xhci_dbg_init,
                                "xHCI doesn't need link TRB QUIRK");
        }
@@ -5433,7 +5433,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        retval = xhci_mem_init(xhci, GFP_KERNEL);
        xhci_dbg_trace(xhci, trace_xhci_dbg_init, "Finished xhci_init");
  
-@@ -624,7 +658,11 @@ int xhci_run(struct usb_hcd *hcd)
+@@ -634,7 +668,11 @@ int xhci_run(struct usb_hcd *hcd)
                        "// Set the interrupt modulation register");
        temp = readl(&xhci->ir_set->irq_control);
        temp &= ~ER_IRQ_INTERVAL_MASK;
@@ -5445,7 +5445,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        writel(temp, &xhci->ir_set->irq_control);
  
        /* Set the HCD state before we enable the irqs */
-@@ -649,6 +687,9 @@ int xhci_run(struct usb_hcd *hcd)
+@@ -659,6 +697,9 @@ int xhci_run(struct usb_hcd *hcd)
                xhci_queue_vendor_command(xhci, command, 0, 0, 0,
                                TRB_TYPE(TRB_NEC_GET_FW));
        }
@@ -5455,7 +5455,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        xhci_dbg_trace(xhci, trace_xhci_dbg_init,
                        "Finished xhci_run for USB2 roothub");
        return 0;
-@@ -1639,6 +1680,14 @@ int xhci_drop_endpoint(struct usb_hcd *h
+@@ -1649,6 +1690,14 @@ int xhci_drop_endpoint(struct usb_hcd *h
        u32 drop_flag;
        u32 new_add_flags, new_drop_flags;
        int ret;
@@ -5470,7 +5470,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  
        ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
        if (ret <= 0)
-@@ -1688,6 +1737,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
+@@ -1698,6 +1747,40 @@ int xhci_drop_endpoint(struct usb_hcd *h
  
        xhci_endpoint_zero(xhci, xhci->devs[udev->slot_id], ep);
  
@@ -5511,7 +5511,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        xhci_dbg(xhci, "drop ep 0x%x, slot id %d, new drop flags = %#x, new add flags = %#x\n",
                        (unsigned int) ep->desc.bEndpointAddress,
                        udev->slot_id,
-@@ -1720,6 +1803,19 @@ int xhci_add_endpoint(struct usb_hcd *hc
+@@ -1730,6 +1813,19 @@ int xhci_add_endpoint(struct usb_hcd *hc
        u32 new_add_flags, new_drop_flags;
        struct xhci_virt_device *virt_dev;
        int ret = 0;
@@ -5531,7 +5531,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  
        ret = xhci_check_args(hcd, udev, ep, 1, true, __func__);
        if (ret <= 0) {
-@@ -1783,6 +1879,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
+@@ -1793,6 +1889,56 @@ int xhci_add_endpoint(struct usb_hcd *hc
                return -ENOMEM;
        }
  
@@ -5588,7 +5588,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        ctrl_ctx->add_flags |= cpu_to_le32(added_ctxs);
        new_add_flags = le32_to_cpu(ctrl_ctx->add_flags);
  
-@@ -4446,8 +4592,14 @@ static u16 xhci_call_host_update_timeout
+@@ -4456,8 +4602,14 @@ static u16 xhci_call_host_update_timeout
                u16 *timeout)
  {
        if (state == USB3_LPM_U1)
@@ -5603,7 +5603,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
                return xhci_calculate_u2_timeout(xhci, udev, desc);
  
        return USB3_LPM_DISABLED;
-@@ -4839,7 +4991,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4849,7 +5001,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
        hcd->self.no_sg_constraint = 1;
  
        /* XHCI controllers don't stop the ep queue on short packets :| */
@@ -5613,7 +5613,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
  
        if (usb_hcd_is_primary_hcd(hcd)) {
                xhci = hcd_to_xhci(hcd);
-@@ -4900,6 +5054,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
+@@ -4910,6 +5064,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
                return retval;
        xhci_dbg(xhci, "Reset complete\n");
  
@@ -5624,7 +5624,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        /* Set dma_mask and coherent_dma_mask to 64-bits,
         * if xHC supports 64-bit addressing */
        if (HCC_64BIT_ADDR(xhci->hcc_params) &&
-@@ -5005,8 +5163,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
+@@ -5015,8 +5173,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
  MODULE_AUTHOR(DRIVER_AUTHOR);
  MODULE_LICENSE("GPL");
  
index 37b149c0693f3892fe9f7bcddf9b1af143508452..99a8f932e3b9cf55f87bc8bb72eef13ad6837086 100644 (file)
@@ -1,6 +1,6 @@
 --- a/arch/mips/ralink/mt7620.c
 +++ b/arch/mips/ralink/mt7620.c
-@@ -104,31 +104,31 @@
+@@ -104,31 +104,31 @@ static struct rt2880_pmx_group mt7620a_p
  };
  
  static struct rt2880_pmx_func pwm1_grp_mt7628[] = {
@@ -37,7 +37,7 @@
  };
  
  static struct rt2880_pmx_func i2c_grp_mt7628[] = {
-@@ -140,21 +140,21 @@
+@@ -140,21 +140,21 @@ static struct rt2880_pmx_func i2c_grp_mt
  
  static struct rt2880_pmx_func refclk_grp_mt7628[] = { FUNC("reclk", 0, 36, 1) };
  static struct rt2880_pmx_func perst_grp_mt7628[] = { FUNC("perst", 0, 37, 1) };
@@ -62,7 +62,7 @@
  };
  
  static struct rt2880_pmx_func i2s_grp_mt7628[] = {
-@@ -449,6 +449,8 @@
+@@ -449,6 +449,8 @@ void __init ralink_clk_init(void)
        ralink_clk_add("10000b00.spi", sys_rate);
        ralink_clk_add("10000b40.spi", sys_rate);
        ralink_clk_add("10000c00.uartlite", periph_rate);
@@ -71,7 +71,7 @@
        ralink_clk_add("10180000.wmac", xtal_rate);
  
        if (IS_ENABLED(CONFIG_USB) &&
-@@ -571,13 +573,13 @@
+@@ -571,13 +573,13 @@ void prom_soc_init(struct ralink_soc_inf
  
        cfg0 = __raw_readl(sysc + SYSC_REG_SYSTEM_CONFIG0);