kernel: update to v4.4.23

Refresh patches for all targets that support kernel 4.4.
compile/run-tested on brcm2708/bcm2710 only.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
master
Álvaro Fernández Rojas 8 years ago
parent 949cfbb243
commit 7d559169c5
  1. 4
      include/kernel-version.mk
  2. 2
      target/linux/ar71xx/patches-4.4/500-MIPS-fw-myloader.patch
  3. 16
      target/linux/generic/patches-4.4/201-extra_optimization.patch
  4. 2
      target/linux/generic/patches-4.4/202-reduce_module_size.patch
  5. 32
      target/linux/generic/patches-4.4/280-rfkill-stubs.patch
  6. 2
      target/linux/generic/patches-4.4/304-mips_disable_fpu.patch
  7. 2
      target/linux/generic/patches-4.4/645-bridge_multicast_to_unicast.patch
  8. 10
      target/linux/generic/patches-4.4/680-NET-skip-GRO-for-foreign-MAC-addresses.patch
  9. 4
      target/linux/generic/patches-4.4/902-debloat_proc.patch
  10. 6
      target/linux/lantiq/patches-4.4/0026-NET-multi-phy-support.patch
  11. 6
      target/linux/mediatek/patches-4.4/0001-NET-multi-phy-support.patch
  12. 18
      target/linux/mvebu/patches-4.4/125-phy-provide-a-hook-for-link-up-link-down-events.patch
  13. 6
      target/linux/ramips/patches-4.4/0034-NET-multi-phy-support.patch

@ -4,11 +4,11 @@ LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .29
LINUX_VERSION-4.1 = .20
LINUX_VERSION-4.4 = .22
LINUX_VERSION-4.4 = .23
LINUX_KERNEL_MD5SUM-3.18.29 = b25737a0bc98e80d12200de93f239c28
LINUX_KERNEL_MD5SUM-4.1.20 = 075c38a3a23ca5bc80437b13606df00a
LINUX_KERNEL_MD5SUM-4.4.22 = 404802389c7f0bbe94dda95f9d058d9e
LINUX_KERNEL_MD5SUM-4.4.23 = 39c3e2090931e83b7dd3438e7fb276d4
ifdef KERNEL_PATCHVER
LINUX_VERSION:=$(KERNEL_PATCHVER)$(strip $(LINUX_VERSION-$(KERNEL_PATCHVER)))

@ -1,6 +1,6 @@
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -222,6 +222,7 @@ cflags-$(CONFIG_MIPS_COMPACT_BRANCHES_AL
@@ -218,6 +218,7 @@ endif
#
libs-$(CONFIG_FW_ARC) += arch/mips/fw/arc/
libs-$(CONFIG_FW_CFE) += arch/mips/fw/cfe/

@ -1,14 +1,18 @@
--- a/Makefile
+++ b/Makefile
@@ -608,9 +608,9 @@ include arch/$(SRCARCH)/Makefile
KBUILD_CFLAGS += $(call cc-option,-fno-delete-null-pointer-checks,)
@@ -619,12 +619,12 @@ KBUILD_CFLAGS += $(call cc-option,-fno-d
KBUILD_CFLAGS += $(call cc-disable-warning,maybe-uninitialized,)
ifdef CONFIG_CC_OPTIMIZE_FOR_SIZE
-KBUILD_CFLAGS += -Os $(call cc-disable-warning,maybe-uninitialized,)
+KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION) $(call cc-disable-warning,maybe-uninitialized,)
-KBUILD_CFLAGS += -Os
+KBUILD_CFLAGS += -Os $(EXTRA_OPTIMIZATION)
else
ifdef CONFIG_PROFILE_ALL_BRANCHES
-KBUILD_CFLAGS += -O2
+KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)
+KBUILD_CFLAGS += -O2 $(EXTRA_OPTIMIZATION)
else
-KBUILD_CFLAGS += -O2
+KBUILD_CFLAGS += -O2 -fno-reorder-blocks -fno-tree-ch $(EXTRA_OPTIMIZATION)
endif
endif
# Tell gcc to never replace conditional load with a non-conditional one

@ -1,6 +1,6 @@
--- a/Makefile
+++ b/Makefile
@@ -398,7 +398,7 @@ KBUILD_CFLAGS_KERNEL :=
@@ -402,7 +402,7 @@ KBUILD_CFLAGS_KERNEL :=
KBUILD_AFLAGS := -D__ASSEMBLY__
KBUILD_AFLAGS_MODULE := -DMODULE
KBUILD_CFLAGS_MODULE := -DMODULE

@ -1,7 +1,5 @@
Index: linux-4.4.21/net/rfkill/Kconfig
===================================================================
--- linux-4.4.21.orig/net/rfkill/Kconfig 2016-09-15 08:29:29.000000000 +0200
+++ linux-4.4.21/net/rfkill/Kconfig 2016-09-27 18:23:27.210404930 +0200
--- a/net/rfkill/Kconfig
+++ b/net/rfkill/Kconfig
@@ -1,7 +1,11 @@
#
# RF switch subsystem configuration
@ -15,7 +13,7 @@ Index: linux-4.4.21/net/rfkill/Kconfig
tristate "RF switch subsystem support"
help
Say Y here if you want to have control over RF switches
@@ -13,19 +17,19 @@
@@ -13,19 +17,19 @@ menuconfig RFKILL
# LED trigger support
config RFKILL_LEDS
bool
@ -38,7 +36,7 @@ Index: linux-4.4.21/net/rfkill/Kconfig
depends on REGULATOR
help
This options enable controlling radio transmitters connected to
@@ -36,7 +40,7 @@
@@ -36,7 +40,7 @@ config RFKILL_REGULATOR
config RFKILL_GPIO
tristate "GPIO RFKILL driver"
@ -47,10 +45,8 @@ Index: linux-4.4.21/net/rfkill/Kconfig
depends on GPIOLIB || COMPILE_TEST
default n
help
Index: linux-4.4.21/net/rfkill/Makefile
===================================================================
--- linux-4.4.21.orig/net/rfkill/Makefile 2016-09-15 08:29:29.000000000 +0200
+++ linux-4.4.21/net/rfkill/Makefile 2016-09-27 18:22:12.373010155 +0200
--- a/net/rfkill/Makefile
+++ b/net/rfkill/Makefile
@@ -4,6 +4,6 @@
rfkill-y += core.o
@ -59,11 +55,9 @@ Index: linux-4.4.21/net/rfkill/Makefile
+obj-$(CONFIG_RFKILL_FULL) += rfkill.o
obj-$(CONFIG_RFKILL_REGULATOR) += rfkill-regulator.o
obj-$(CONFIG_RFKILL_GPIO) += rfkill-gpio.o
Index: linux-4.4.21/net/Makefile
===================================================================
--- linux-4.4.21.orig/net/Makefile 2016-09-15 08:29:29.000000000 +0200
+++ linux-4.4.21/net/Makefile 2016-09-27 18:23:43.954773045 +0200
@@ -49,7 +49,7 @@
--- a/net/Makefile
+++ b/net/Makefile
@@ -49,7 +49,7 @@ obj-$(CONFIG_MAC80211) += mac80211/
obj-$(CONFIG_TIPC) += tipc/
obj-$(CONFIG_NETLABEL) += netlabel/
obj-$(CONFIG_IUCV) += iucv/
@ -72,11 +66,9 @@ Index: linux-4.4.21/net/Makefile
obj-$(CONFIG_NET_9P) += 9p/
obj-$(CONFIG_CAIF) += caif/
ifneq ($(CONFIG_DCB),)
Index: linux-4.4.21/include/linux/rfkill.h
===================================================================
--- linux-4.4.21.orig/include/linux/rfkill.h 2016-09-15 08:29:29.000000000 +0200
+++ linux-4.4.21/include/linux/rfkill.h 2016-09-27 18:47:20.426653801 +0200
@@ -64,7 +64,7 @@
--- a/include/linux/rfkill.h
+++ b/include/linux/rfkill.h
@@ -64,7 +64,7 @@ struct rfkill_ops {
int (*set_block)(void *data, bool blocked);
};

@ -49,7 +49,7 @@ v2: incorporated changes suggested by Jonas Gorski
select OF
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -289,7 +289,7 @@ OBJCOPYFLAGS += --remove-section=.regin
@@ -285,7 +285,7 @@ OBJCOPYFLAGS += --remove-section=.regin
head-y := arch/mips/kernel/head.o
libs-y += arch/mips/lib/

@ -169,7 +169,7 @@ Implement optinal multicast->unicast conversion for igmp snooping
err = br_ip6_multicast_add_group(br, port,
- &grec->grec_mca, vid);
+ &grec->grec_mca, vid, src);
if (!err)
if (err)
break;
}
@@ -1427,7 +1453,8 @@ br_multicast_leave_group(struct net_brid

@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4205,6 +4205,9 @@ static enum gro_result dev_gro_receive(s
@@ -4221,6 +4221,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;
@@ -5357,6 +5360,48 @@ static void __netdev_adjacent_dev_unlink
@@ -5373,6 +5376,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
void *private)
@@ -5428,6 +5473,7 @@ static int __netdev_upper_dev_link(struc
@@ -5444,6 +5489,7 @@ static int __netdev_upper_dev_link(struc
goto rollback_lower_mesh;
}
@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
return 0;
@@ -5554,6 +5600,7 @@ void netdev_upper_dev_unlink(struct net_
@@ -5570,6 +5616,7 @@ void netdev_upper_dev_unlink(struct net_
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
__netdev_adjacent_dev_unlink(dev, i->dev);
@ -92,7 +92,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
}
@@ -6094,6 +6141,7 @@ int dev_set_mac_address(struct net_devic
@@ -6110,6 +6157,7 @@ int dev_set_mac_address(struct net_devic
if (err)
return err;
dev->addr_assign_type = NET_ADDR_SET;

@ -184,7 +184,7 @@
--- a/net/ipv4/fib_trie.c
+++ b/net/ipv4/fib_trie.c
@@ -2646,10 +2646,12 @@ static const struct file_operations fib_
@@ -2642,10 +2642,12 @@ static const struct file_operations fib_
int __net_init fib_proc_init(struct net *net)
{
@ -199,7 +199,7 @@
&fib_triestat_fops))
goto out2;
@@ -2659,17 +2661,21 @@ int __net_init fib_proc_init(struct net
@@ -2655,17 +2657,21 @@ int __net_init fib_proc_init(struct net
return 0;
out3:

@ -11,7 +11,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -888,7 +888,8 @@ void phy_state_machine(struct work_struc
@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
/* If the link is down, give up on negotiation for now */
if (!phydev->link) {
phydev->state = PHY_NOLINK;
@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
@@ -971,7 +972,8 @@ void phy_state_machine(struct work_struc
@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
@@ -983,7 +985,8 @@ void phy_state_machine(struct work_struc
@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;

@ -11,7 +11,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -888,7 +888,8 @@ void phy_state_machine(struct work_struc
@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
/* If the link is down, give up on negotiation for now */
if (!phydev->link) {
phydev->state = PHY_NOLINK;
@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
@@ -971,7 +972,8 @@ void phy_state_machine(struct work_struc
@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
@@ -983,7 +985,8 @@ void phy_state_machine(struct work_struc
@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;

@ -22,7 +22,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -847,6 +847,16 @@ void phy_start(struct phy_device *phydev
@@ -849,6 +849,16 @@ void phy_start(struct phy_device *phydev
}
EXPORT_SYMBOL(phy_start);
@ -39,7 +39,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
/**
* phy_state_machine - Handle the state machine
* @work: work_struct that describes the work to be done
@@ -888,8 +898,7 @@ void phy_state_machine(struct work_struc
@@ -890,8 +900,7 @@ void phy_state_machine(struct work_struc
/* If the link is down, give up on negotiation for now */
if (!phydev->link) {
phydev->state = PHY_NOLINK;
@ -49,7 +49,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break;
}
@@ -901,9 +910,7 @@ void phy_state_machine(struct work_struc
@@ -903,9 +912,7 @@ void phy_state_machine(struct work_struc
/* If AN is done, we're running */
if (err > 0) {
phydev->state = PHY_RUNNING;
@ -60,7 +60,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else if (0 == phydev->link_timeout--)
needs_aneg = true;
break;
@@ -928,8 +935,7 @@ void phy_state_machine(struct work_struc
@@ -930,8 +937,7 @@ void phy_state_machine(struct work_struc
}
}
phydev->state = PHY_RUNNING;
@ -70,7 +70,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
}
break;
case PHY_FORCING:
@@ -939,13 +945,12 @@ void phy_state_machine(struct work_struc
@@ -941,13 +947,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@ -86,7 +86,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
break;
case PHY_RUNNING:
/* Only register a CHANGE if we are polling or ignoring
@@ -968,14 +973,12 @@ void phy_state_machine(struct work_struc
@@ -970,14 +975,12 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@ -103,7 +103,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
if (phy_interrupt_is_valid(phydev))
err = phy_config_interrupt(phydev,
PHY_INTERRUPT_ENABLED);
@@ -983,8 +986,7 @@ void phy_state_machine(struct work_struc
@@ -985,8 +988,7 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;
@ -113,7 +113,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
do_suspend = true;
}
break;
@@ -1004,11 +1006,11 @@ void phy_state_machine(struct work_struc
@@ -1006,11 +1008,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;
@ -127,7 +127,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
} else {
phydev->state = PHY_AN;
phydev->link_timeout = PHY_AN_TIMEOUT;
@@ -1020,11 +1022,11 @@ void phy_state_machine(struct work_struc
@@ -1022,11 +1024,11 @@ void phy_state_machine(struct work_struc
if (phydev->link) {
phydev->state = PHY_RUNNING;

@ -11,7 +11,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
--- a/drivers/net/phy/phy.c
+++ b/drivers/net/phy/phy.c
@@ -888,7 +888,8 @@ void phy_state_machine(struct work_struc
@@ -890,7 +890,8 @@ void phy_state_machine(struct work_struc
/* If the link is down, give up on negotiation for now */
if (!phydev->link) {
phydev->state = PHY_NOLINK;
@ -21,7 +21,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
phydev->adjust_link(phydev->attached_dev);
break;
}
@@ -971,7 +972,8 @@ void phy_state_machine(struct work_struc
@@ -973,7 +974,8 @@ void phy_state_machine(struct work_struc
netif_carrier_on(phydev->attached_dev);
} else {
phydev->state = PHY_NOLINK;
@ -31,7 +31,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
}
phydev->adjust_link(phydev->attached_dev);
@@ -983,7 +985,8 @@ void phy_state_machine(struct work_struc
@@ -985,7 +987,8 @@ void phy_state_machine(struct work_struc
case PHY_HALTED:
if (phydev->link) {
phydev->link = 0;

Loading…
Cancel
Save