From: Hauke Mehrtens Date: Sun, 2 Apr 2017 09:01:30 +0000 (+0200) Subject: kernel: update kernel 4.4 to 4.4.59 X-Git-Tag: v18.06.0-rc1~3187 X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=c3778f2647aac67f019b38eb157c224b675d532f;p=openwrt%2Fopenwrt.git kernel: update kernel 4.4 to 4.4.59 Signed-off-by: Hauke Mehrtens --- diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 61cc5fadff..6f4a1a2955 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -3,11 +3,11 @@ LINUX_RELEASE?=1 LINUX_VERSION-3.18 = .43 -LINUX_VERSION-4.4 = .56 +LINUX_VERSION-4.4 = .59 LINUX_VERSION-4.9 = .20 LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c -LINUX_KERNEL_HASH-4.4.56 = 55181e24869e4b550ef756eecd1ab4f6774228c457f4830e9e779c6db4c2a2b6 +LINUX_KERNEL_HASH-4.4.59 = 64e9523c4c7fdaf391a16dd19541bb58e39943cb2151aa0c3d15b6aeaba996ca LINUX_KERNEL_HASH-4.9.20 = 48660806dd32fb8dcbcf5932291bf6cc7d29240070372230871e0f56fea81341 ifdef KERNEL_PATCHVER diff --git a/target/linux/cns3xxx/patches-4.4/130-Extend-PCIE_BUS_PEER2PEER-to-set-MRSS-128-to-fix-CNS3xxx-BM-DMA..patch b/target/linux/cns3xxx/patches-4.4/130-Extend-PCIE_BUS_PEER2PEER-to-set-MRSS-128-to-fix-CNS3xxx-BM-DMA..patch index db2c29fc92..c1f565a307 100644 --- a/target/linux/cns3xxx/patches-4.4/130-Extend-PCIE_BUS_PEER2PEER-to-set-MRSS-128-to-fix-CNS3xxx-BM-DMA..patch +++ b/target/linux/cns3xxx/patches-4.4/130-Extend-PCIE_BUS_PEER2PEER-to-set-MRSS-128-to-fix-CNS3xxx-BM-DMA..patch @@ -1,6 +1,6 @@ --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c -@@ -1966,7 +1966,8 @@ static void pcie_write_mrrs(struct pci_d +@@ -1967,7 +1967,8 @@ static void pcie_write_mrrs(struct pci_d /* In the "safe" case, do not configure the MRRS. There appear to be * issues with setting MRRS to 0 on a number of devices. */ diff --git a/target/linux/generic/patches-4.4/002-phy_drivers_backport.patch b/target/linux/generic/patches-4.4/002-phy_drivers_backport.patch index 92508912c6..8cf4eb30c6 100644 --- a/target/linux/generic/patches-4.4/002-phy_drivers_backport.patch +++ b/target/linux/generic/patches-4.4/002-phy_drivers_backport.patch @@ -223,7 +223,7 @@ MODULE_LICENSE("GPL"); --- a/drivers/net/phy/ar8327.c +++ b/drivers/net/phy/ar8327.c -@@ -619,11 +619,11 @@ ar8327_hw_init(struct ar8xxx_priv *priv) +@@ -627,11 +627,11 @@ ar8327_hw_init(struct ar8xxx_priv *priv) if (!priv->chip_data) return -ENOMEM; diff --git a/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch b/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch index a4b93df72d..f22bf804ef 100644 --- a/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch +++ b/target/linux/generic/patches-4.4/811-pci_disable_usb_common_quirks.patch @@ -84,7 +84,7 @@ #endif /* __LINUX_USB_PCI_QUIRKS_H */ --- a/include/linux/usb/hcd.h +++ b/include/linux/usb/hcd.h -@@ -459,7 +459,14 @@ extern int usb_hcd_pci_probe(struct pci_ +@@ -460,7 +460,14 @@ extern int usb_hcd_pci_probe(struct pci_ extern void usb_hcd_pci_remove(struct pci_dev *dev); extern void usb_hcd_pci_shutdown(struct pci_dev *dev); diff --git a/target/linux/generic/patches-4.4/901-debloat_sock_diag.patch b/target/linux/generic/patches-4.4/901-debloat_sock_diag.patch index 30b064172b..fa9f37b716 100644 --- a/target/linux/generic/patches-4.4/901-debloat_sock_diag.patch +++ b/target/linux/generic/patches-4.4/901-debloat_sock_diag.patch @@ -25,7 +25,7 @@ obj-$(CONFIG_PROC_FS) += net-procfs.o --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -1469,9 +1469,11 @@ void sk_destruct(struct sock *sk) +@@ -1474,9 +1474,11 @@ void sk_destruct(struct sock *sk) static void __sk_free(struct sock *sk) { diff --git a/target/linux/generic/patches-4.4/902-debloat_proc.patch b/target/linux/generic/patches-4.4/902-debloat_proc.patch index 3123a4be68..2f54db5201 100644 --- a/target/linux/generic/patches-4.4/902-debloat_proc.patch +++ b/target/linux/generic/patches-4.4/902-debloat_proc.patch @@ -173,7 +173,7 @@ goto err; --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -3036,6 +3036,8 @@ static __net_initdata struct pernet_oper +@@ -3042,6 +3042,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/imx6/patches-4.4/202-net-igb-add-i210-i211-support-for-phy-read-write.patch b/target/linux/imx6/patches-4.4/202-net-igb-add-i210-i211-support-for-phy-read-write.patch index 6bc23c5206..2649f05a1f 100644 --- a/target/linux/imx6/patches-4.4/202-net-igb-add-i210-i211-support-for-phy-read-write.patch +++ b/target/linux/imx6/patches-4.4/202-net-igb-add-i210-i211-support-for-phy-read-write.patch @@ -10,7 +10,7 @@ Date: Thu May 15 00:12:26 2014 -0700 --- a/drivers/net/ethernet/intel/igb/e1000_phy.c +++ b/drivers/net/ethernet/intel/igb/e1000_phy.c -@@ -129,7 +129,7 @@ out: +@@ -133,7 +133,7 @@ out: s32 igb_read_phy_reg_mdic(struct e1000_hw *hw, u32 offset, u16 *data) { struct e1000_phy_info *phy = &hw->phy; @@ -19,7 +19,7 @@ Date: Thu May 15 00:12:26 2014 -0700 s32 ret_val = 0; if (offset > MAX_PHY_REG_ADDRESS) { -@@ -142,11 +142,25 @@ s32 igb_read_phy_reg_mdic(struct e1000_h +@@ -146,11 +146,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. */ @@ -48,7 +48,7 @@ Date: Thu May 15 00:12:26 2014 -0700 /* Poll the ready bit to see if the MDI read completed * Increasing the time out as testing showed failures with -@@ -171,6 +185,18 @@ s32 igb_read_phy_reg_mdic(struct e1000_h +@@ -175,6 +189,18 @@ s32 igb_read_phy_reg_mdic(struct e1000_h *data = (u16) mdic; out: @@ -67,7 +67,7 @@ Date: Thu May 15 00:12:26 2014 -0700 return ret_val; } -@@ -185,7 +211,7 @@ out: +@@ -189,7 +215,7 @@ out: s32 igb_write_phy_reg_mdic(struct e1000_hw *hw, u32 offset, u16 data) { struct e1000_phy_info *phy = &hw->phy; @@ -76,7 +76,7 @@ Date: Thu May 15 00:12:26 2014 -0700 s32 ret_val = 0; if (offset > MAX_PHY_REG_ADDRESS) { -@@ -198,12 +224,27 @@ s32 igb_write_phy_reg_mdic(struct e1000_ +@@ -202,12 +228,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. */ @@ -108,7 +108,7 @@ Date: Thu May 15 00:12:26 2014 -0700 /* Poll the ready bit to see if the MDI read completed * Increasing the time out as testing showed failures with -@@ -227,6 +268,18 @@ s32 igb_write_phy_reg_mdic(struct e1000_ +@@ -231,6 +272,18 @@ s32 igb_write_phy_reg_mdic(struct e1000_ } out: diff --git a/target/linux/imx6/patches-4.4/203-net-igb-add-phy-read-write-functions-that-accept-phy.patch b/target/linux/imx6/patches-4.4/203-net-igb-add-phy-read-write-functions-that-accept-phy.patch index 48f6d0d293..45a4a8b3d0 100644 --- a/target/linux/imx6/patches-4.4/203-net-igb-add-phy-read-write-functions-that-accept-phy.patch +++ b/target/linux/imx6/patches-4.4/203-net-igb-add-phy-read-write-functions-that-accept-phy.patch @@ -36,7 +36,7 @@ Signed-off-by: Tim Harvey --- a/drivers/net/ethernet/intel/igb/e1000_phy.c +++ b/drivers/net/ethernet/intel/igb/e1000_phy.c -@@ -126,9 +126,8 @@ out: +@@ -130,9 +130,8 @@ out: * Reads the MDI control regsiter in the PHY at offset and stores the * information read to data. **/ @@ -47,7 +47,7 @@ Signed-off-by: Tim Harvey u32 i, mdicnfg, mdic = 0; s32 ret_val = 0; -@@ -147,14 +146,14 @@ s32 igb_read_phy_reg_mdic(struct e1000_h +@@ -151,14 +150,14 @@ s32 igb_read_phy_reg_mdic(struct e1000_h case e1000_i211: mdicnfg = rd32(E1000_MDICNFG); mdicnfg &= ~(E1000_MDICNFG_PHY_MASK); @@ -64,7 +64,7 @@ Signed-off-by: Tim Harvey (E1000_MDIC_OP_READ)); break; } -@@ -208,9 +207,8 @@ out: +@@ -212,9 +211,8 @@ out: * * Writes data to MDI control register in the PHY at offset. **/ @@ -75,7 +75,7 @@ Signed-off-by: Tim Harvey u32 i, mdicnfg, mdic = 0; s32 ret_val = 0; -@@ -229,7 +227,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_ +@@ -233,7 +231,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_ case e1000_i211: mdicnfg = rd32(E1000_MDICNFG); mdicnfg &= ~(E1000_MDICNFG_PHY_MASK); @@ -84,7 +84,7 @@ Signed-off-by: Tim Harvey wr32(E1000_MDICNFG, mdicnfg); mdic = (((u32)data) | (offset << E1000_MDIC_REG_SHIFT) | -@@ -238,7 +236,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_ +@@ -242,7 +240,7 @@ s32 igb_write_phy_reg_mdic(struct e1000_ default: mdic = (((u32)data) | (offset << E1000_MDIC_REG_SHIFT) | @@ -93,7 +93,7 @@ Signed-off-by: Tim Harvey (E1000_MDIC_OP_WRITE)); break; } -@@ -458,7 +456,7 @@ s32 igb_read_phy_reg_igp(struct e1000_hw +@@ -462,7 +460,7 @@ s32 igb_read_phy_reg_igp(struct e1000_hw goto out; if (offset > MAX_PHY_MULTI_PAGE_REG) { @@ -102,7 +102,7 @@ Signed-off-by: Tim Harvey IGP01E1000_PHY_PAGE_SELECT, (u16)offset); if (ret_val) { -@@ -467,8 +465,8 @@ s32 igb_read_phy_reg_igp(struct e1000_hw +@@ -471,8 +469,8 @@ s32 igb_read_phy_reg_igp(struct e1000_hw } } @@ -113,7 +113,7 @@ Signed-off-by: Tim Harvey hw->phy.ops.release(hw); -@@ -497,7 +495,7 @@ s32 igb_write_phy_reg_igp(struct e1000_h +@@ -501,7 +499,7 @@ s32 igb_write_phy_reg_igp(struct e1000_h goto out; if (offset > MAX_PHY_MULTI_PAGE_REG) { @@ -122,7 +122,7 @@ Signed-off-by: Tim Harvey IGP01E1000_PHY_PAGE_SELECT, (u16)offset); if (ret_val) { -@@ -506,8 +504,8 @@ s32 igb_write_phy_reg_igp(struct e1000_h +@@ -510,8 +508,8 @@ s32 igb_write_phy_reg_igp(struct e1000_h } } @@ -133,7 +133,7 @@ Signed-off-by: Tim Harvey hw->phy.ops.release(hw); -@@ -2547,8 +2545,9 @@ out: +@@ -2551,8 +2549,9 @@ out: } /** @@ -144,7 +144,7 @@ Signed-off-by: Tim Harvey * @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 @@ out: +@@ -2560,7 +2559,7 @@ out: * Acquires semaphore, if necessary, then writes the data to PHY register * at the offset. Release any acquired semaphores before exiting. **/ @@ -153,7 +153,7 @@ Signed-off-by: Tim Harvey { s32 ret_val; u16 page = offset >> GS40G_PAGE_SHIFT; -@@ -2566,10 +2565,10 @@ s32 igb_write_phy_reg_gs40g(struct e1000 +@@ -2570,10 +2569,10 @@ s32 igb_write_phy_reg_gs40g(struct e1000 if (ret_val) return ret_val; @@ -166,7 +166,7 @@ Signed-off-by: Tim Harvey release: hw->phy.ops.release(hw); -@@ -2577,8 +2576,24 @@ release: +@@ -2581,8 +2580,24 @@ release: } /** @@ -192,7 +192,7 @@ Signed-off-by: Tim Harvey * @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 @@ release: +@@ -2590,7 +2605,7 @@ release: * Acquires semaphore, if necessary, then reads the data in the PHY register * at the offset. Release any acquired semaphores before exiting. **/ @@ -201,7 +201,7 @@ Signed-off-by: Tim Harvey { s32 ret_val; u16 page = offset >> GS40G_PAGE_SHIFT; -@@ -2596,10 +2611,10 @@ s32 igb_read_phy_reg_gs40g(struct e1000_ +@@ -2600,10 +2615,10 @@ s32 igb_read_phy_reg_gs40g(struct e1000_ if (ret_val) return ret_val; @@ -214,7 +214,7 @@ Signed-off-by: Tim Harvey release: hw->phy.ops.release(hw); -@@ -2607,6 +2622,21 @@ release: +@@ -2611,6 +2626,21 @@ release: } /** diff --git a/target/linux/ramips/patches-4.4/0031-uvc-add-iPassion-iP2970-support.patch b/target/linux/ramips/patches-4.4/0031-uvc-add-iPassion-iP2970-support.patch index c6a837d76c..cecca5b22c 100644 --- a/target/linux/ramips/patches-4.4/0031-uvc-add-iPassion-iP2970-support.patch +++ b/target/linux/ramips/patches-4.4/0031-uvc-add-iPassion-iP2970-support.patch @@ -13,7 +13,7 @@ Signed-off-by: John Crispin --- a/drivers/media/usb/uvc/uvc_driver.c +++ b/drivers/media/usb/uvc/uvc_driver.c -@@ -2559,6 +2559,18 @@ static struct usb_device_id uvc_ids[] = +@@ -2665,6 +2665,18 @@ static struct usb_device_id uvc_ids[] = .bInterfaceSubClass = 1, .bInterfaceProtocol = 0, .driver_info = UVC_QUIRK_FORCE_Y8 },