summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
Diffstat (limited to 'target')
-rw-r--r--target/arm/bcm28xx/patches/4.1.22/0001-raspberry-pi-github.patch (renamed from target/arm/bcm28xx/patches/4.1.20/0001-raspberry-pi-github.patch)0
-rw-r--r--target/arm/solidrun-imx6/patches/3.14.67/0000-solidrun.patch (renamed from target/arm/solidrun-imx6/patches/3.14.58/0000-solidrun.patch)0
-rw-r--r--target/arm/solidrun-imx6/patches/3.14.67/0001-cec-hdmi.patch (renamed from target/arm/solidrun-imx6/patches/3.14.58/0001-cec-hdmi.patch)0
-rw-r--r--target/arm/solidrun-imx6/patches/4.1.22/0001-xbian.patch (renamed from target/arm/solidrun-imx6/patches/4.1.20/0001-xbian.patch)0
-rw-r--r--target/arm/solidrun-imx6/patches/4.1.22/0002-rt.patch (renamed from target/arm/solidrun-imx6/patches/4.1.20/0002-rt.patch)0
-rw-r--r--target/avr32/atmel-ngw100/patches/4.1.22/0001-net-macb-improve-big-endian-CPU-support.patch (renamed from target/avr32/atmel-ngw100/patches/4.1.20/0001-net-macb-improve-big-endian-CPU-support.patch)0
-rw-r--r--target/config/Config.in.kernelversion36
-rw-r--r--target/cris/qemu-cris/patches/4.1.22/crisv32_ethernet_driver.patch (renamed from target/cris/qemu-cris/patches/4.1.20/crisv32_ethernet_driver.patch)0
-rw-r--r--target/cris/qemu-cris/patches/4.4.8/crisv32_ethernet_driver.patch (renamed from target/cris/qemu-cris/patches/4.4.6/crisv32_ethernet_driver.patch)0
-rw-r--r--target/linux/patches/3.10.101/bsd-compatibility.patch (renamed from target/linux/patches/3.10.94/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.10.101/headers-install.patch (renamed from target/linux/patches/3.10.94/headers-install.patch)0
-rw-r--r--target/linux/patches/3.10.101/mkpiggy.patch (renamed from target/linux/patches/3.10.94/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.10.101/relocs.patch (renamed from target/linux/patches/3.10.94/relocs.patch)0
-rw-r--r--target/linux/patches/3.10.101/sgidefs.patch (renamed from target/linux/patches/3.10.94/sgidefs.patch)0
-rw-r--r--target/linux/patches/3.10.101/sortext.patch (renamed from target/linux/patches/3.10.94/sortext.patch)0
-rw-r--r--target/linux/patches/3.10.101/startup.patch (renamed from target/linux/patches/3.10.94/startup.patch)0
-rw-r--r--target/linux/patches/3.10.101/yaffs2.patch (renamed from target/linux/patches/3.10.94/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.12.59/bsd-compatibility.patch (renamed from target/linux/patches/3.12.51/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.12.59/cleankernel.patch (renamed from target/linux/patches/3.12.51/cleankernel.patch)0
-rw-r--r--target/linux/patches/3.12.59/defaults.patch (renamed from target/linux/patches/3.12.51/defaults.patch)0
-rw-r--r--target/linux/patches/3.12.59/disable-netfilter.patch (renamed from target/linux/patches/3.12.51/disable-netfilter.patch)0
-rw-r--r--target/linux/patches/3.12.59/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.12.51/export-symbol-for-exmap.patch)0
-rw-r--r--target/linux/patches/3.12.59/gemalto.patch (renamed from target/linux/patches/3.12.51/gemalto.patch)0
-rw-r--r--target/linux/patches/3.12.59/lemote-rfkill.patch (renamed from target/linux/patches/3.12.51/lemote-rfkill.patch)0
-rw-r--r--target/linux/patches/3.12.59/microblaze-ethernet.patch (renamed from target/linux/patches/3.12.51/microblaze-ethernet.patch)0
-rw-r--r--target/linux/patches/3.12.59/microblaze-setup.patch (renamed from target/linux/patches/3.12.51/microblaze-setup.patch)0
-rw-r--r--target/linux/patches/3.12.59/mips-lzo-fix.patch (renamed from target/linux/patches/3.12.51/mips-lzo-fix.patch)0
-rw-r--r--target/linux/patches/3.12.59/mkpiggy.patch (renamed from target/linux/patches/3.12.51/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.12.59/mtd-rootfs.patch (renamed from target/linux/patches/3.12.51/mtd-rootfs.patch)0
-rw-r--r--target/linux/patches/3.12.59/non-static.patch (renamed from target/linux/patches/3.12.51/non-static.patch)0
-rw-r--r--target/linux/patches/3.12.59/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.12.51/ppc64-missing-zlib.patch)0
-rw-r--r--target/linux/patches/3.12.59/regmap-bool.patch (renamed from target/linux/patches/3.12.51/regmap-bool.patch)0
-rw-r--r--target/linux/patches/3.12.59/relocs.patch (renamed from target/linux/patches/3.12.51/relocs.patch)0
-rw-r--r--target/linux/patches/3.12.59/sgidefs.patch (renamed from target/linux/patches/3.12.51/sgidefs.patch)0
-rw-r--r--target/linux/patches/3.12.59/sortext.patch (renamed from target/linux/patches/3.12.51/sortext.patch)0
-rw-r--r--target/linux/patches/3.12.59/startup.patch (renamed from target/linux/patches/3.12.51/startup.patch)0
-rw-r--r--target/linux/patches/3.12.59/usb-defaults-off.patch (renamed from target/linux/patches/3.12.51/usb-defaults-off.patch)0
-rw-r--r--target/linux/patches/3.12.59/wlan-cf.patch (renamed from target/linux/patches/3.12.51/wlan-cf.patch)0
-rw-r--r--target/linux/patches/3.12.59/xargs.patch (renamed from target/linux/patches/3.12.51/xargs.patch)0
-rw-r--r--target/linux/patches/3.12.59/yaffs2.patch (renamed from target/linux/patches/3.12.51/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.12.59/zlib-inflate.patch (renamed from target/linux/patches/3.12.51/zlib-inflate.patch)0
-rw-r--r--target/linux/patches/3.14.67/bsd-compatibility.patch (renamed from target/linux/patches/3.14.58/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.14.67/cleankernel.patch (renamed from target/linux/patches/3.14.58/cleankernel.patch)0
-rw-r--r--target/linux/patches/3.14.67/defaults.patch (renamed from target/linux/patches/3.14.58/defaults.patch)0
-rw-r--r--target/linux/patches/3.14.67/disable-netfilter.patch (renamed from target/linux/patches/3.14.58/disable-netfilter.patch)0
-rw-r--r--target/linux/patches/3.14.67/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.14.58/export-symbol-for-exmap.patch)0
-rw-r--r--target/linux/patches/3.14.67/fblogo.patch (renamed from target/linux/patches/3.14.58/fblogo.patch)0
-rw-r--r--target/linux/patches/3.14.67/gemalto.patch (renamed from target/linux/patches/3.14.58/gemalto.patch)0
-rw-r--r--target/linux/patches/3.14.67/initramfs-nosizelimit.patch (renamed from target/linux/patches/3.14.58/initramfs-nosizelimit.patch)0
-rw-r--r--target/linux/patches/3.14.67/lemote-rfkill.patch (renamed from target/linux/patches/3.14.58/lemote-rfkill.patch)0
-rw-r--r--target/linux/patches/3.14.67/microblaze-axi.patch (renamed from target/linux/patches/3.14.58/microblaze-axi.patch)0
-rw-r--r--target/linux/patches/3.14.67/microblaze-ethernet.patch (renamed from target/linux/patches/3.14.58/microblaze-ethernet.patch)0
-rw-r--r--target/linux/patches/3.14.67/mips-fpu.patch369
-rw-r--r--target/linux/patches/3.14.67/mkpiggy.patch (renamed from target/linux/patches/3.14.58/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.14.67/mtd-rootfs.patch (renamed from target/linux/patches/3.14.58/mtd-rootfs.patch)0
-rw-r--r--target/linux/patches/3.14.67/nfsv3-tcp.patch (renamed from target/linux/patches/3.14.58/nfsv3-tcp.patch)0
-rw-r--r--target/linux/patches/3.14.67/non-static.patch (renamed from target/linux/patches/3.14.58/non-static.patch)0
-rw-r--r--target/linux/patches/3.14.67/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.14.58/ppc64-missing-zlib.patch)0
-rw-r--r--target/linux/patches/3.14.67/regmap-boolean.patch (renamed from target/linux/patches/3.14.58/regmap-boolean.patch)0
-rw-r--r--target/linux/patches/3.14.67/relocs.patch (renamed from target/linux/patches/3.14.58/relocs.patch)0
-rw-r--r--target/linux/patches/3.14.67/sgidefs.patch (renamed from target/linux/patches/3.14.58/sgidefs.patch)0
-rw-r--r--target/linux/patches/3.14.67/sortext.patch (renamed from target/linux/patches/3.14.58/sortext.patch)0
-rw-r--r--target/linux/patches/3.14.67/startup.patch (renamed from target/linux/patches/3.14.58/startup.patch)0
-rw-r--r--target/linux/patches/3.14.67/wlan-cf.patch (renamed from target/linux/patches/3.14.58/wlan-cf.patch)0
-rw-r--r--target/linux/patches/3.14.67/xargs.patch (renamed from target/linux/patches/3.14.58/xargs.patch)0
-rw-r--r--target/linux/patches/3.14.67/yaffs2.patch (renamed from target/linux/patches/3.14.58/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.14.67/zlib-inflate.patch (renamed from target/linux/patches/3.14.58/zlib-inflate.patch)0
-rw-r--r--target/linux/patches/3.18.31/bsd-compatibility.patch (renamed from target/linux/patches/3.18.25/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.18.31/cleankernel.patch (renamed from target/linux/patches/3.18.25/cleankernel.patch)0
-rw-r--r--target/linux/patches/3.18.31/cris-header.patch (renamed from target/linux/patches/3.18.25/cris-header.patch)0
-rw-r--r--target/linux/patches/3.18.31/cris-initramfs.patch (renamed from target/linux/patches/3.18.25/cris-initramfs.patch)0
-rw-r--r--target/linux/patches/3.18.31/defaults.patch (renamed from target/linux/patches/3.18.25/defaults.patch)0
-rw-r--r--target/linux/patches/3.18.31/export-symbol-for-exmap.patch (renamed from target/linux/patches/3.18.25/export-symbol-for-exmap.patch)0
-rw-r--r--target/linux/patches/3.18.31/fblogo.patch (renamed from target/linux/patches/3.18.25/fblogo.patch)0
-rw-r--r--target/linux/patches/3.18.31/gemalto.patch (renamed from target/linux/patches/3.18.25/gemalto.patch)0
-rw-r--r--target/linux/patches/3.18.31/initramfs-nosizelimit.patch (renamed from target/linux/patches/3.18.25/initramfs-nosizelimit.patch)0
-rw-r--r--target/linux/patches/3.18.31/lemote-rfkill.patch (renamed from target/linux/patches/3.18.25/lemote-rfkill.patch)0
-rw-r--r--target/linux/patches/3.18.31/microblaze-ethernet.patch (renamed from target/linux/patches/3.18.25/microblaze-ethernet.patch)0
-rw-r--r--target/linux/patches/3.18.31/mkpiggy.patch (renamed from target/linux/patches/3.18.25/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.18.31/mtd-rootfs.patch (renamed from target/linux/patches/3.18.25/mtd-rootfs.patch)0
-rw-r--r--target/linux/patches/3.18.31/nfsv3-tcp.patch (renamed from target/linux/patches/3.18.25/nfsv3-tcp.patch)0
-rw-r--r--target/linux/patches/3.18.31/non-static.patch (renamed from target/linux/patches/3.18.25/non-static.patch)0
-rw-r--r--target/linux/patches/3.18.31/ppc64-missing-zlib.patch (renamed from target/linux/patches/3.18.25/ppc64-missing-zlib.patch)0
-rw-r--r--target/linux/patches/3.18.31/relocs.patch (renamed from target/linux/patches/3.18.25/relocs.patch)0
-rw-r--r--target/linux/patches/3.18.31/sgidefs.patch (renamed from target/linux/patches/3.18.25/sgidefs.patch)0
-rw-r--r--target/linux/patches/3.18.31/sortext.patch (renamed from target/linux/patches/3.18.25/sortext.patch)0
-rw-r--r--target/linux/patches/3.18.31/startup.patch (renamed from target/linux/patches/3.18.25/startup.patch)0
-rw-r--r--target/linux/patches/3.18.31/wlan-cf.patch (renamed from target/linux/patches/3.18.25/wlan-cf.patch)0
-rw-r--r--target/linux/patches/3.18.31/xargs.patch (renamed from target/linux/patches/3.18.25/xargs.patch)0
-rw-r--r--target/linux/patches/3.18.31/yaffs2.patch (renamed from target/linux/patches/3.18.25/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.2.79/sparc-aout.patch (renamed from target/linux/patches/3.2.77/sparc-aout.patch)0
-rw-r--r--target/linux/patches/3.4.111/aufs2.patch (renamed from target/linux/patches/3.4.110/aufs2.patch)0
-rw-r--r--target/linux/patches/3.4.111/bsd-compatibility.patch (renamed from target/linux/patches/3.4.110/bsd-compatibility.patch)0
-rw-r--r--target/linux/patches/3.4.111/defaults.patch (renamed from target/linux/patches/3.4.110/defaults.patch)0
-rw-r--r--target/linux/patches/3.4.111/gemalto.patch (renamed from target/linux/patches/3.4.110/gemalto.patch)0
-rw-r--r--target/linux/patches/3.4.111/lemote-rfkill.patch (renamed from target/linux/patches/3.4.110/lemote-rfkill.patch)0
-rw-r--r--target/linux/patches/3.4.111/linux-gcc-check.patch (renamed from target/linux/patches/3.4.110/linux-gcc-check.patch)0
-rw-r--r--target/linux/patches/3.4.111/mips-error.patch (renamed from target/linux/patches/3.4.110/mips-error.patch)0
-rw-r--r--target/linux/patches/3.4.111/mkpiggy.patch (renamed from target/linux/patches/3.4.110/mkpiggy.patch)0
-rw-r--r--target/linux/patches/3.4.111/module-alloc-size-check.patch (renamed from target/linux/patches/3.4.110/module-alloc-size-check.patch)0
-rw-r--r--target/linux/patches/3.4.111/non-static.patch (renamed from target/linux/patches/3.4.110/non-static.patch)0
-rw-r--r--target/linux/patches/3.4.111/relocs.patch (renamed from target/linux/patches/3.4.110/relocs.patch)0
-rw-r--r--target/linux/patches/3.4.111/sparc-aout.patch (renamed from target/linux/patches/3.4.110/sparc-aout.patch)0
-rw-r--r--target/linux/patches/3.4.111/sparc-include.patch (renamed from target/linux/patches/3.4.110/sparc-include.patch)0
-rw-r--r--target/linux/patches/3.4.111/startup.patch (renamed from target/linux/patches/3.4.110/startup.patch)0
-rw-r--r--target/linux/patches/3.4.111/usb-defaults-off.patch (renamed from target/linux/patches/3.4.110/usb-defaults-off.patch)0
-rw-r--r--target/linux/patches/3.4.111/vga-cons-default-off.patch (renamed from target/linux/patches/3.4.110/vga-cons-default-off.patch)0
-rw-r--r--target/linux/patches/3.4.111/wlan-cf.patch (renamed from target/linux/patches/3.4.110/wlan-cf.patch)0
-rw-r--r--target/linux/patches/3.4.111/yaffs2.patch (renamed from target/linux/patches/3.4.110/yaffs2.patch)0
-rw-r--r--target/linux/patches/3.4.111/zlib-inflate.patch (renamed from target/linux/patches/3.4.110/zlib-inflate.patch)0
-rw-r--r--target/linux/patches/4.1.22/aufs.patch (renamed from target/linux/patches/4.1.20/aufs.patch)0
-rw-r--r--target/linux/patches/4.1.22/cleankernel.patch (renamed from target/linux/patches/4.1.20/cleankernel.patch)0
-rw-r--r--target/linux/patches/4.1.22/cris-header.patch (renamed from target/linux/patches/4.1.20/cris-header.patch)0
-rw-r--r--target/linux/patches/4.1.22/initramfs-nosizelimit.patch (renamed from target/linux/patches/4.1.20/initramfs-nosizelimit.patch)0
-rw-r--r--target/linux/patches/4.1.22/j2-core.patch (renamed from target/linux/patches/4.1.20/j2-core.patch)0
-rw-r--r--target/linux/patches/4.1.22/mtd-rootfs.patch (renamed from target/linux/patches/4.1.20/mtd-rootfs.patch)0
-rw-r--r--target/linux/patches/4.1.22/realtime.patch (renamed from target/linux/patches/4.1.20/realtime.patch)95
-rw-r--r--target/linux/patches/4.1.22/regmap-default-on.patch (renamed from target/linux/patches/4.1.20/regmap-default-on.patch)0
-rw-r--r--target/linux/patches/4.1.22/remove-warn.patch (renamed from target/linux/patches/4.1.20/remove-warn.patch)0
-rw-r--r--target/linux/patches/4.1.22/startup.patch (renamed from target/linux/patches/4.1.20/startup.patch)0
-rw-r--r--target/linux/patches/4.1.22/use-gawk.patch (renamed from target/linux/patches/4.1.20/use-gawk.patch)0
-rw-r--r--target/linux/patches/4.1.22/use-libgcc-for-sh.patch (renamed from target/linux/patches/4.1.20/use-libgcc-for-sh.patch)0
-rw-r--r--target/linux/patches/4.4.8/initramfs-nosizelimit.patch (renamed from target/linux/patches/4.4.6/initramfs-nosizelimit.patch)0
-rw-r--r--target/linux/patches/4.4.8/ld-or1k.patch (renamed from target/linux/patches/4.4.6/ld-or1k.patch)0
-rw-r--r--target/linux/patches/4.4.8/macsonic.patch (renamed from target/linux/patches/4.4.6/macsonic.patch)0
-rw-r--r--target/linux/patches/4.4.8/mips-xz.patch (renamed from target/linux/patches/4.4.6/mips-xz.patch)0
-rw-r--r--target/linux/patches/4.4.8/startup.patch (renamed from target/linux/patches/4.4.6/startup.patch)0
-rw-r--r--target/linux/patches/4.4.8/use-libgcc-for-sh.patch (renamed from target/linux/patches/4.4.6/use-libgcc-for-sh.patch)0
-rw-r--r--target/m68k/qemu-m68k-mcf5208/patches/3.14.67/m68k-coldfire-fec.patch (renamed from target/m68k/qemu-m68k-mcf5208/patches/3.14.58/m68k-coldfire-fec.patch)0
-rw-r--r--target/m68k/qemu-m68k-mcf5208/patches/3.18.31/m68k-coldfire-fec.patch (renamed from target/m68k/qemu-m68k-mcf5208/patches/3.18.25/m68k-coldfire-fec.patch)0
-rw-r--r--target/m68k/qemu-m68k-mcf5208/patches/4.1.22/m68k-coldfire-fec.patch (renamed from target/m68k/qemu-m68k-mcf5208/patches/4.1.20/m68k-coldfire-fec.patch)0
-rw-r--r--target/mips/ath79/patches/4.1.22/0001-openwrt-ath79.patch (renamed from target/mips/ath79/patches/4.1.20/0001-openwrt-ath79.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.10.101/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.10.94/rb532-cfgfs.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.10.101/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.10.94/rb532-pci.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.12.59/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.12.51/rb532-cfgfs.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.12.59/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.12.51/rb532-pci.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.14.67/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.58/rb532-cfgfs.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.14.67/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.14.58/rb532-pci.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.4.111/rb532-cfgfs.patch (renamed from target/mips/mikrotik-rb532/patches/3.4.110/rb532-cfgfs.patch)0
-rw-r--r--target/mips/mikrotik-rb532/patches/3.4.111/rb532-pci.patch (renamed from target/mips/mikrotik-rb532/patches/3.4.110/rb532-pci.patch)0
-rw-r--r--target/mips64/lemote-yeelong/patches/3.18.31/sm7xx-fb.patch (renamed from target/mips64/lemote-yeelong/patches/3.18.25/sm7xx-fb.patch)0
-rw-r--r--target/or1k/patches/4.1.22/ld-or1k.patch (renamed from target/or1k/patches/4.1.20/ld-or1k.patch)0
142 files changed, 387 insertions, 113 deletions
diff --git a/target/arm/bcm28xx/patches/4.1.20/0001-raspberry-pi-github.patch b/target/arm/bcm28xx/patches/4.1.22/0001-raspberry-pi-github.patch
index a10e4d39b..a10e4d39b 100644
--- a/target/arm/bcm28xx/patches/4.1.20/0001-raspberry-pi-github.patch
+++ b/target/arm/bcm28xx/patches/4.1.22/0001-raspberry-pi-github.patch
diff --git a/target/arm/solidrun-imx6/patches/3.14.58/0000-solidrun.patch b/target/arm/solidrun-imx6/patches/3.14.67/0000-solidrun.patch
index 0534c7115..0534c7115 100644
--- a/target/arm/solidrun-imx6/patches/3.14.58/0000-solidrun.patch
+++ b/target/arm/solidrun-imx6/patches/3.14.67/0000-solidrun.patch
diff --git a/target/arm/solidrun-imx6/patches/3.14.58/0001-cec-hdmi.patch b/target/arm/solidrun-imx6/patches/3.14.67/0001-cec-hdmi.patch
index 6fbc80b00..6fbc80b00 100644
--- a/target/arm/solidrun-imx6/patches/3.14.58/0001-cec-hdmi.patch
+++ b/target/arm/solidrun-imx6/patches/3.14.67/0001-cec-hdmi.patch
diff --git a/target/arm/solidrun-imx6/patches/4.1.20/0001-xbian.patch b/target/arm/solidrun-imx6/patches/4.1.22/0001-xbian.patch
index d3ce4744b..d3ce4744b 100644
--- a/target/arm/solidrun-imx6/patches/4.1.20/0001-xbian.patch
+++ b/target/arm/solidrun-imx6/patches/4.1.22/0001-xbian.patch
diff --git a/target/arm/solidrun-imx6/patches/4.1.20/0002-rt.patch b/target/arm/solidrun-imx6/patches/4.1.22/0002-rt.patch
index 2eccf6072..2eccf6072 100644
--- a/target/arm/solidrun-imx6/patches/4.1.20/0002-rt.patch
+++ b/target/arm/solidrun-imx6/patches/4.1.22/0002-rt.patch
diff --git a/target/avr32/atmel-ngw100/patches/4.1.20/0001-net-macb-improve-big-endian-CPU-support.patch b/target/avr32/atmel-ngw100/patches/4.1.22/0001-net-macb-improve-big-endian-CPU-support.patch
index 96a0a96b6..96a0a96b6 100644
--- a/target/avr32/atmel-ngw100/patches/4.1.20/0001-net-macb-improve-big-endian-CPU-support.patch
+++ b/target/avr32/atmel-ngw100/patches/4.1.22/0001-net-macb-improve-big-endian-CPU-support.patch
diff --git a/target/config/Config.in.kernelversion b/target/config/Config.in.kernelversion
index d26eca20a..daaa0988a 100644
--- a/target/config/Config.in.kernelversion
+++ b/target/config/Config.in.kernelversion
@@ -5,19 +5,19 @@ choice
prompt "Kernel version" if !ADK_TARGET_CHOOSE_ARCH
depends on ADK_TARGET_OS_LINUX
default ADK_TARGET_KERNEL_VERSION_GIT if ADK_TARGET_WITHOUT_MMU && ADK_TARGET_ARCH_XTENSA
-default ADK_TARGET_KERNEL_VERSION_4_1_20 if ADK_TARGET_BOARD_BCM28XX
-default ADK_TARGET_KERNEL_VERSION_4_4_6
+default ADK_TARGET_KERNEL_VERSION_4_1_22 if ADK_TARGET_BOARD_BCM28XX
+default ADK_TARGET_KERNEL_VERSION_4_4_8
config ADK_TARGET_KERNEL_VERSION_GIT
bool "linux-git"
-config ADK_TARGET_KERNEL_VERSION_4_4_6
- bool "4.4.6"
+config ADK_TARGET_KERNEL_VERSION_4_4_8
+ bool "4.4.8"
depends on !ADK_TARGET_BOARD_BCM28XX
select ADK_TARGET_KERNEL_VERSION_4_4
-config ADK_TARGET_KERNEL_VERSION_4_1_20
- bool "4.1.20"
+config ADK_TARGET_KERNEL_VERSION_4_1_22
+ bool "4.1.22"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -26,8 +26,8 @@ config ADK_TARGET_KERNEL_VERSION_4_1_20
depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
select ADK_TARGET_KERNEL_VERSION_4_1
-config ADK_TARGET_KERNEL_VERSION_3_18_25
- bool "3.18.25"
+config ADK_TARGET_KERNEL_VERSION_3_18_31
+ bool "3.18.31"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -40,8 +40,8 @@ config ADK_TARGET_KERNEL_VERSION_3_18_25
depends on !ADK_TARGET_SYSTEM_BEAGLEBONE_BLACK
select ADK_TARGET_KERNEL_VERSION_3_18
-config ADK_TARGET_KERNEL_VERSION_3_14_58
- bool "3.14.58"
+config ADK_TARGET_KERNEL_VERSION_3_14_67
+ bool "3.14.67"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -52,8 +52,8 @@ config ADK_TARGET_KERNEL_VERSION_3_14_58
depends on !ADK_TARGET_SYSTEM_KINETIS_K70
select ADK_TARGET_KERNEL_VERSION_3_14
-config ADK_TARGET_KERNEL_VERSION_3_12_51
- bool "3.12.51"
+config ADK_TARGET_KERNEL_VERSION_3_12_59
+ bool "3.12.59"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -66,8 +66,8 @@ config ADK_TARGET_KERNEL_VERSION_3_12_51
depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
select ADK_TARGET_KERNEL_VERSION_3_12
-config ADK_TARGET_KERNEL_VERSION_3_10_94
- bool "3.10.94"
+config ADK_TARGET_KERNEL_VERSION_3_10_101
+ bool "3.10.101"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -81,8 +81,8 @@ config ADK_TARGET_KERNEL_VERSION_3_10_94
depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
select ADK_TARGET_KERNEL_VERSION_3_10
-config ADK_TARGET_KERNEL_VERSION_3_4_110
- bool "3.4.110"
+config ADK_TARGET_KERNEL_VERSION_3_4_111
+ bool "3.4.111"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
@@ -95,8 +95,8 @@ config ADK_TARGET_KERNEL_VERSION_3_4_110
depends on !ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
select ADK_TARGET_KERNEL_VERSION_3_4
-config ADK_TARGET_KERNEL_VERSION_3_2_77
- bool "3.2.77"
+config ADK_TARGET_KERNEL_VERSION_3_2_79
+ bool "3.2.79"
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_BFIN
depends on !ADK_TARGET_ARCH_H8300
diff --git a/target/cris/qemu-cris/patches/4.1.20/crisv32_ethernet_driver.patch b/target/cris/qemu-cris/patches/4.1.22/crisv32_ethernet_driver.patch
index cd098665e..cd098665e 100644
--- a/target/cris/qemu-cris/patches/4.1.20/crisv32_ethernet_driver.patch
+++ b/target/cris/qemu-cris/patches/4.1.22/crisv32_ethernet_driver.patch
diff --git a/target/cris/qemu-cris/patches/4.4.6/crisv32_ethernet_driver.patch b/target/cris/qemu-cris/patches/4.4.8/crisv32_ethernet_driver.patch
index 80f03383c..80f03383c 100644
--- a/target/cris/qemu-cris/patches/4.4.6/crisv32_ethernet_driver.patch
+++ b/target/cris/qemu-cris/patches/4.4.8/crisv32_ethernet_driver.patch
diff --git a/target/linux/patches/3.10.94/bsd-compatibility.patch b/target/linux/patches/3.10.101/bsd-compatibility.patch
index b954b658f..b954b658f 100644
--- a/target/linux/patches/3.10.94/bsd-compatibility.patch
+++ b/target/linux/patches/3.10.101/bsd-compatibility.patch
diff --git a/target/linux/patches/3.10.94/headers-install.patch b/target/linux/patches/3.10.101/headers-install.patch
index 46dc9fe13..46dc9fe13 100644
--- a/target/linux/patches/3.10.94/headers-install.patch
+++ b/target/linux/patches/3.10.101/headers-install.patch
diff --git a/target/linux/patches/3.10.94/mkpiggy.patch b/target/linux/patches/3.10.101/mkpiggy.patch
index d4e815cd2..d4e815cd2 100644
--- a/target/linux/patches/3.10.94/mkpiggy.patch
+++ b/target/linux/patches/3.10.101/mkpiggy.patch
diff --git a/target/linux/patches/3.10.94/relocs.patch b/target/linux/patches/3.10.101/relocs.patch
index 649b9e73e..649b9e73e 100644
--- a/target/linux/patches/3.10.94/relocs.patch
+++ b/target/linux/patches/3.10.101/relocs.patch
diff --git a/target/linux/patches/3.10.94/sgidefs.patch b/target/linux/patches/3.10.101/sgidefs.patch
index f00a284d9..f00a284d9 100644
--- a/target/linux/patches/3.10.94/sgidefs.patch
+++ b/target/linux/patches/3.10.101/sgidefs.patch
diff --git a/target/linux/patches/3.10.94/sortext.patch b/target/linux/patches/3.10.101/sortext.patch
index 65bbbb64b..65bbbb64b 100644
--- a/target/linux/patches/3.10.94/sortext.patch
+++ b/target/linux/patches/3.10.101/sortext.patch
diff --git a/target/linux/patches/3.10.94/startup.patch b/target/linux/patches/3.10.101/startup.patch
index 3ebc5db1e..3ebc5db1e 100644
--- a/target/linux/patches/3.10.94/startup.patch
+++ b/target/linux/patches/3.10.101/startup.patch
diff --git a/target/linux/patches/3.10.94/yaffs2.patch b/target/linux/patches/3.10.101/yaffs2.patch
index 172629530..172629530 100644
--- a/target/linux/patches/3.10.94/yaffs2.patch
+++ b/target/linux/patches/3.10.101/yaffs2.patch
diff --git a/target/linux/patches/3.12.51/bsd-compatibility.patch b/target/linux/patches/3.12.59/bsd-compatibility.patch
index b954b658f..b954b658f 100644
--- a/target/linux/patches/3.12.51/bsd-compatibility.patch
+++ b/target/linux/patches/3.12.59/bsd-compatibility.patch
diff --git a/target/linux/patches/3.12.51/cleankernel.patch b/target/linux/patches/3.12.59/cleankernel.patch
index d8c055dc3..d8c055dc3 100644
--- a/target/linux/patches/3.12.51/cleankernel.patch
+++ b/target/linux/patches/3.12.59/cleankernel.patch
diff --git a/target/linux/patches/3.12.51/defaults.patch b/target/linux/patches/3.12.59/defaults.patch
index 6cdca084e..6cdca084e 100644
--- a/target/linux/patches/3.12.51/defaults.patch
+++ b/target/linux/patches/3.12.59/defaults.patch
diff --git a/target/linux/patches/3.12.51/disable-netfilter.patch b/target/linux/patches/3.12.59/disable-netfilter.patch
index 7b1ca013a..7b1ca013a 100644
--- a/target/linux/patches/3.12.51/disable-netfilter.patch
+++ b/target/linux/patches/3.12.59/disable-netfilter.patch
diff --git a/target/linux/patches/3.12.51/export-symbol-for-exmap.patch b/target/linux/patches/3.12.59/export-symbol-for-exmap.patch
index 4f0fc8449..4f0fc8449 100644
--- a/target/linux/patches/3.12.51/export-symbol-for-exmap.patch
+++ b/target/linux/patches/3.12.59/export-symbol-for-exmap.patch
diff --git a/target/linux/patches/3.12.51/gemalto.patch b/target/linux/patches/3.12.59/gemalto.patch
index 65f7af1d7..65f7af1d7 100644
--- a/target/linux/patches/3.12.51/gemalto.patch
+++ b/target/linux/patches/3.12.59/gemalto.patch
diff --git a/target/linux/patches/3.12.51/lemote-rfkill.patch b/target/linux/patches/3.12.59/lemote-rfkill.patch
index a61488434..a61488434 100644
--- a/target/linux/patches/3.12.51/lemote-rfkill.patch
+++ b/target/linux/patches/3.12.59/lemote-rfkill.patch
diff --git a/target/linux/patches/3.12.51/microblaze-ethernet.patch b/target/linux/patches/3.12.59/microblaze-ethernet.patch
index 742ab477e..742ab477e 100644
--- a/target/linux/patches/3.12.51/microblaze-ethernet.patch
+++ b/target/linux/patches/3.12.59/microblaze-ethernet.patch
diff --git a/target/linux/patches/3.12.51/microblaze-setup.patch b/target/linux/patches/3.12.59/microblaze-setup.patch
index 43815f274..43815f274 100644
--- a/target/linux/patches/3.12.51/microblaze-setup.patch
+++ b/target/linux/patches/3.12.59/microblaze-setup.patch
diff --git a/target/linux/patches/3.12.51/mips-lzo-fix.patch b/target/linux/patches/3.12.59/mips-lzo-fix.patch
index 0740bdc6a..0740bdc6a 100644
--- a/target/linux/patches/3.12.51/mips-lzo-fix.patch
+++ b/target/linux/patches/3.12.59/mips-lzo-fix.patch
diff --git a/target/linux/patches/3.12.51/mkpiggy.patch b/target/linux/patches/3.12.59/mkpiggy.patch
index d4e815cd2..d4e815cd2 100644
--- a/target/linux/patches/3.12.51/mkpiggy.patch
+++ b/target/linux/patches/3.12.59/mkpiggy.patch
diff --git a/target/linux/patches/3.12.51/mtd-rootfs.patch b/target/linux/patches/3.12.59/mtd-rootfs.patch
index 775d5fc80..775d5fc80 100644
--- a/target/linux/patches/3.12.51/mtd-rootfs.patch
+++ b/target/linux/patches/3.12.59/mtd-rootfs.patch
diff --git a/target/linux/patches/3.12.51/non-static.patch b/target/linux/patches/3.12.59/non-static.patch
index a967703d0..a967703d0 100644
--- a/target/linux/patches/3.12.51/non-static.patch
+++ b/target/linux/patches/3.12.59/non-static.patch
diff --git a/target/linux/patches/3.12.51/ppc64-missing-zlib.patch b/target/linux/patches/3.12.59/ppc64-missing-zlib.patch
index c6e0616be..c6e0616be 100644
--- a/target/linux/patches/3.12.51/ppc64-missing-zlib.patch
+++ b/target/linux/patches/3.12.59/ppc64-missing-zlib.patch
diff --git a/target/linux/patches/3.12.51/regmap-bool.patch b/target/linux/patches/3.12.59/regmap-bool.patch
index c3fd9a318..c3fd9a318 100644
--- a/target/linux/patches/3.12.51/regmap-bool.patch
+++ b/target/linux/patches/3.12.59/regmap-bool.patch
diff --git a/target/linux/patches/3.12.51/relocs.patch b/target/linux/patches/3.12.59/relocs.patch
index 649b9e73e..649b9e73e 100644
--- a/target/linux/patches/3.12.51/relocs.patch
+++ b/target/linux/patches/3.12.59/relocs.patch
diff --git a/target/linux/patches/3.12.51/sgidefs.patch b/target/linux/patches/3.12.59/sgidefs.patch
index f00a284d9..f00a284d9 100644
--- a/target/linux/patches/3.12.51/sgidefs.patch
+++ b/target/linux/patches/3.12.59/sgidefs.patch
diff --git a/target/linux/patches/3.12.51/sortext.patch b/target/linux/patches/3.12.59/sortext.patch
index 8fd4e1d6b..8fd4e1d6b 100644
--- a/target/linux/patches/3.12.51/sortext.patch
+++ b/target/linux/patches/3.12.59/sortext.patch
diff --git a/target/linux/patches/3.12.51/startup.patch b/target/linux/patches/3.12.59/startup.patch
index 4cd477da1..4cd477da1 100644
--- a/target/linux/patches/3.12.51/startup.patch
+++ b/target/linux/patches/3.12.59/startup.patch
diff --git a/target/linux/patches/3.12.51/usb-defaults-off.patch b/target/linux/patches/3.12.59/usb-defaults-off.patch
index 54dff2bd4..54dff2bd4 100644
--- a/target/linux/patches/3.12.51/usb-defaults-off.patch
+++ b/target/linux/patches/3.12.59/usb-defaults-off.patch
diff --git a/target/linux/patches/3.12.51/wlan-cf.patch b/target/linux/patches/3.12.59/wlan-cf.patch
index fc20759e2..fc20759e2 100644
--- a/target/linux/patches/3.12.51/wlan-cf.patch
+++ b/target/linux/patches/3.12.59/wlan-cf.patch
diff --git a/target/linux/patches/3.12.51/xargs.patch b/target/linux/patches/3.12.59/xargs.patch
index 2c7b3df59..2c7b3df59 100644
--- a/target/linux/patches/3.12.51/xargs.patch
+++ b/target/linux/patches/3.12.59/xargs.patch
diff --git a/target/linux/patches/3.12.51/yaffs2.patch b/target/linux/patches/3.12.59/yaffs2.patch
index 306814439..306814439 100644
--- a/target/linux/patches/3.12.51/yaffs2.patch
+++ b/target/linux/patches/3.12.59/yaffs2.patch
diff --git a/target/linux/patches/3.12.51/zlib-inflate.patch b/target/linux/patches/3.12.59/zlib-inflate.patch
index 58e1f6d21..58e1f6d21 100644
--- a/target/linux/patches/3.12.51/zlib-inflate.patch
+++ b/target/linux/patches/3.12.59/zlib-inflate.patch
diff --git a/target/linux/patches/3.14.58/bsd-compatibility.patch b/target/linux/patches/3.14.67/bsd-compatibility.patch
index b954b658f..b954b658f 100644
--- a/target/linux/patches/3.14.58/bsd-compatibility.patch
+++ b/target/linux/patches/3.14.67/bsd-compatibility.patch
diff --git a/target/linux/patches/3.14.58/cleankernel.patch b/target/linux/patches/3.14.67/cleankernel.patch
index d8c055dc3..d8c055dc3 100644
--- a/target/linux/patches/3.14.58/cleankernel.patch
+++ b/target/linux/patches/3.14.67/cleankernel.patch
diff --git a/target/linux/patches/3.14.58/defaults.patch b/target/linux/patches/3.14.67/defaults.patch
index f071fd1dd..f071fd1dd 100644
--- a/target/linux/patches/3.14.58/defaults.patch
+++ b/target/linux/patches/3.14.67/defaults.patch
diff --git a/target/linux/patches/3.14.58/disable-netfilter.patch b/target/linux/patches/3.14.67/disable-netfilter.patch
index 7b1ca013a..7b1ca013a 100644
--- a/target/linux/patches/3.14.58/disable-netfilter.patch
+++ b/target/linux/patches/3.14.67/disable-netfilter.patch
diff --git a/target/linux/patches/3.14.58/export-symbol-for-exmap.patch b/target/linux/patches/3.14.67/export-symbol-for-exmap.patch
index 4f0fc8449..4f0fc8449 100644
--- a/target/linux/patches/3.14.58/export-symbol-for-exmap.patch
+++ b/target/linux/patches/3.14.67/export-symbol-for-exmap.patch
diff --git a/target/linux/patches/3.14.58/fblogo.patch b/target/linux/patches/3.14.67/fblogo.patch
index cbbb4216f..cbbb4216f 100644
--- a/target/linux/patches/3.14.58/fblogo.patch
+++ b/target/linux/patches/3.14.67/fblogo.patch
diff --git a/target/linux/patches/3.14.58/gemalto.patch b/target/linux/patches/3.14.67/gemalto.patch
index 65f7af1d7..65f7af1d7 100644
--- a/target/linux/patches/3.14.58/gemalto.patch
+++ b/target/linux/patches/3.14.67/gemalto.patch
diff --git a/target/linux/patches/3.14.58/initramfs-nosizelimit.patch b/target/linux/patches/3.14.67/initramfs-nosizelimit.patch
index 40d2f6bd8..40d2f6bd8 100644
--- a/target/linux/patches/3.14.58/initramfs-nosizelimit.patch
+++ b/target/linux/patches/3.14.67/initramfs-nosizelimit.patch
diff --git a/target/linux/patches/3.14.58/lemote-rfkill.patch b/target/linux/patches/3.14.67/lemote-rfkill.patch
index a61488434..a61488434 100644
--- a/target/linux/patches/3.14.58/lemote-rfkill.patch
+++ b/target/linux/patches/3.14.67/lemote-rfkill.patch
diff --git a/target/linux/patches/3.14.58/microblaze-axi.patch b/target/linux/patches/3.14.67/microblaze-axi.patch
index 1a4b17d8c..1a4b17d8c 100644
--- a/target/linux/patches/3.14.58/microblaze-axi.patch
+++ b/target/linux/patches/3.14.67/microblaze-axi.patch
diff --git a/target/linux/patches/3.14.58/microblaze-ethernet.patch b/target/linux/patches/3.14.67/microblaze-ethernet.patch
index 742ab477e..742ab477e 100644
--- a/target/linux/patches/3.14.58/microblaze-ethernet.patch
+++ b/target/linux/patches/3.14.67/microblaze-ethernet.patch
diff --git a/target/linux/patches/3.14.67/mips-fpu.patch b/target/linux/patches/3.14.67/mips-fpu.patch
new file mode 100644
index 000000000..d403db821
--- /dev/null
+++ b/target/linux/patches/3.14.67/mips-fpu.patch
@@ -0,0 +1,369 @@
+diff -Nur linux-3.14.67.orig/arch/mips/include/asm/asmmacro-32.h linux-3.14.67/arch/mips/include/asm/asmmacro-32.h
+--- linux-3.14.67.orig/arch/mips/include/asm/asmmacro-32.h 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/include/asm/asmmacro-32.h 2016-04-27 16:18:41.729238756 +0200
+@@ -13,6 +13,8 @@
+ #include <asm/mipsregs.h>
+
+ .macro fpu_save_single thread tmp=t0
++ .set push
++ SET_HARDFLOAT
+ cfc1 \tmp, fcr31
+ swc1 $f0, THREAD_FPR0(\thread)
+ swc1 $f1, THREAD_FPR1(\thread)
+@@ -47,9 +49,12 @@
+ swc1 $f30, THREAD_FPR30(\thread)
+ swc1 $f31, THREAD_FPR31(\thread)
+ sw \tmp, THREAD_FCR31(\thread)
++ .set pop
+ .endm
+
+ .macro fpu_restore_single thread tmp=t0
++ .set push
++ SET_HARDFLOAT
+ lw \tmp, THREAD_FCR31(\thread)
+ lwc1 $f0, THREAD_FPR0(\thread)
+ lwc1 $f1, THREAD_FPR1(\thread)
+@@ -84,6 +89,7 @@
+ lwc1 $f30, THREAD_FPR30(\thread)
+ lwc1 $f31, THREAD_FPR31(\thread)
+ ctc1 \tmp, fcr31
++ .set pop
+ .endm
+
+ .macro cpu_save_nonscratch thread
+diff -Nur linux-3.14.67.orig/arch/mips/include/asm/asmmacro.h linux-3.14.67/arch/mips/include/asm/asmmacro.h
+--- linux-3.14.67.orig/arch/mips/include/asm/asmmacro.h 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/include/asm/asmmacro.h 2016-04-27 16:18:41.729238756 +0200
+@@ -74,6 +74,8 @@
+ #endif /* CONFIG_MIPS_MT_SMTC */
+
+ .macro fpu_save_16even thread tmp=t0
++ .set push
++ SET_HARDFLOAT
+ cfc1 \tmp, fcr31
+ sdc1 $f0, THREAD_FPR0(\thread)
+ sdc1 $f2, THREAD_FPR2(\thread)
+@@ -127,6 +129,8 @@
+ .endm
+
+ .macro fpu_restore_16even thread tmp=t0
++ .set push
++ SET_HARDFLOAT
+ lw \tmp, THREAD_FCR31(\thread)
+ ldc1 $f0, THREAD_FPR0(\thread)
+ ldc1 $f2, THREAD_FPR2(\thread)
+diff -Nur linux-3.14.67.orig/arch/mips/include/asm/fpregdef.h linux-3.14.67/arch/mips/include/asm/fpregdef.h
+--- linux-3.14.67.orig/arch/mips/include/asm/fpregdef.h 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/include/asm/fpregdef.h 2016-04-27 16:18:41.729238756 +0200
+@@ -14,6 +14,20 @@
+
+ #include <asm/sgidefs.h>
+
++/*
++ * starting with binutils 2.24.51.20140729, MIPS binutils warn about mixing
++ * hardfloat and softfloat object files. The kernel build uses soft-float by
++ * default, so we also need to pass -msoft-float along to GAS if it supports it.
++ * But this in turn causes assembler errors in files which access hardfloat
++ * registers. We detect if GAS supports "-msoft-float" in the Makefile and
++ * explicitly put ".set hardfloat" where floating point registers are touched.
++ */
++#ifdef GAS_HAS_SET_HARDFLOAT
++#define SET_HARDFLOAT .set hardfloat
++#else
++#define SET_HARDFLOAT
++#endif
++
+ #if _MIPS_SIM == _MIPS_SIM_ABI32
+
+ /*
+diff -Nur linux-3.14.67.orig/arch/mips/include/asm/mipsregs.h linux-3.14.67/arch/mips/include/asm/mipsregs.h
+--- linux-3.14.67.orig/arch/mips/include/asm/mipsregs.h 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/include/asm/mipsregs.h 2016-04-27 16:18:41.729238756 +0200
+@@ -1251,7 +1251,7 @@
+ /*
+ * Macros to access the floating point coprocessor control registers
+ */
+-#define read_32bit_cp1_register(source) \
++#define _read_32bit_cp1_register(source, gas_hardfloat) \
+ ({ \
+ int __res; \
+ \
+@@ -1261,12 +1261,21 @@
+ " # gas fails to assemble cfc1 for some archs, \n" \
+ " # like Octeon. \n" \
+ " .set mips1 \n" \
++ " "STR(gas_hardfloat)" \n" \
+ " cfc1 %0,"STR(source)" \n" \
+ " .set pop \n" \
+ : "=r" (__res)); \
+ __res; \
+ })
+
++#ifdef GAS_HAS_SET_HARDFLOAT
++#define read_32bit_cp1_register(source) \
++ _read_32bit_cp1_register(source, .set hardfloat)
++#else
++#define read_32bit_cp1_register(source) \
++ _read_32bit_cp1_register(source, )
++#endif
++
+ #ifdef HAVE_AS_DSP
+ #define rddsp(mask) \
+ ({ \
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/genex.S linux-3.14.67/arch/mips/kernel/genex.S
+--- linux-3.14.67.orig/arch/mips/kernel/genex.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/genex.S 2016-04-27 16:18:41.729238756 +0200
+@@ -408,6 +408,7 @@
+ .set push
+ /* gas fails to assemble cfc1 for some archs (octeon).*/ \
+ .set mips1
++ SET_HARDFLOAT
+ cfc1 a1, fcr31
+ li a2, ~(0x3f << 12)
+ and a2, a1
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/r2300_fpu.S linux-3.14.67/arch/mips/kernel/r2300_fpu.S
+--- linux-3.14.67.orig/arch/mips/kernel/r2300_fpu.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/r2300_fpu.S 2016-04-27 16:18:41.729238756 +0200
+@@ -28,6 +28,8 @@
+ .set mips1
+ /* Save floating point context */
+ LEAF(_save_fp_context)
++ .set push
++ SET_HARDFLOAT
+ li v0, 0 # assume success
+ cfc1 t1,fcr31
+ EX(swc1 $f0,(SC_FPREGS+0)(a0))
+@@ -65,6 +67,7 @@
+ EX(sw t1,(SC_FPC_CSR)(a0))
+ cfc1 t0,$0 # implementation/version
+ jr ra
++ .set pop
+ .set nomacro
+ EX(sw t0,(SC_FPC_EIR)(a0))
+ .set macro
+@@ -80,6 +83,8 @@
+ * stack frame which might have been changed by the user.
+ */
+ LEAF(_restore_fp_context)
++ .set push
++ SET_HARDFLOAT
+ li v0, 0 # assume success
+ EX(lw t0,(SC_FPC_CSR)(a0))
+ EX(lwc1 $f0,(SC_FPREGS+0)(a0))
+@@ -116,6 +121,7 @@
+ EX(lwc1 $f31,(SC_FPREGS+248)(a0))
+ jr ra
+ ctc1 t0,fcr31
++ .set pop
+ END(_restore_fp_context)
+ .set reorder
+
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/r2300_switch.S linux-3.14.67/arch/mips/kernel/r2300_switch.S
+--- linux-3.14.67.orig/arch/mips/kernel/r2300_switch.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/r2300_switch.S 2016-04-27 16:18:41.729238756 +0200
+@@ -120,6 +120,9 @@
+
+ #define FPU_DEFAULT 0x00000000
+
++ .set push
++ SET_HARDFLOAT
++
+ LEAF(_init_fpu)
+ mfc0 t0, CP0_STATUS
+ li t1, ST0_CU1
+@@ -165,3 +168,5 @@
+ mtc1 t0, $f31
+ jr ra
+ END(_init_fpu)
++
++ .set pop
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/r4k_fpu.S linux-3.14.67/arch/mips/kernel/r4k_fpu.S
+--- linux-3.14.67.orig/arch/mips/kernel/r4k_fpu.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/r4k_fpu.S 2016-04-27 16:18:41.729238756 +0200
+@@ -19,8 +19,12 @@
+ #include <asm/asm-offsets.h>
+ #include <asm/regdef.h>
+
++/* preprocessor replaces the fp in ".set fp=64" with $30 otherwise */
++#undef fp
++
+ .macro EX insn, reg, src
+ .set push
++ SET_HARDFLOAT
+ .set nomacro
+ .ex\@: \insn \reg, \src
+ .set pop
+@@ -33,12 +37,17 @@
+ .set mips3
+
+ LEAF(_save_fp_context)
++ .set push
++ SET_HARDFLOAT
+ cfc1 t1, fcr31
++ .set pop
+
+ #if defined(CONFIG_64BIT) || defined(CONFIG_CPU_MIPS32_R2)
+ .set push
++ SET_HARDFLOAT
+ #ifdef CONFIG_CPU_MIPS32_R2
+- .set mips64r2
++ .set mips32r2
++ .set fp=64
+ mfc0 t0, CP0_STATUS
+ sll t0, t0, 5
+ bgez t0, 1f # skip storing odd if FR=0
+@@ -64,6 +73,8 @@
+ 1: .set pop
+ #endif
+
++ .set push
++ SET_HARDFLOAT
+ /* Store the 16 even double precision registers */
+ EX sdc1 $f0, SC_FPREGS+0(a0)
+ EX sdc1 $f2, SC_FPREGS+16(a0)
+@@ -84,11 +95,14 @@
+ EX sw t1, SC_FPC_CSR(a0)
+ jr ra
+ li v0, 0 # success
++ .set pop
+ END(_save_fp_context)
+
+ #ifdef CONFIG_MIPS32_COMPAT
+ /* Save 32-bit process floating point context */
+ LEAF(_save_fp_context32)
++ .set push
++ SET_HARDFLOAT
+ cfc1 t1, fcr31
+
+ mfc0 t0, CP0_STATUS
+@@ -134,6 +148,7 @@
+ EX sw t1, SC32_FPC_CSR(a0)
+ cfc1 t0, $0 # implementation/version
+ EX sw t0, SC32_FPC_EIR(a0)
++ .set pop
+
+ jr ra
+ li v0, 0 # success
+@@ -150,8 +165,10 @@
+
+ #if defined(CONFIG_64BIT) || defined(CONFIG_CPU_MIPS32_R2)
+ .set push
++ SET_HARDFLOAT
+ #ifdef CONFIG_CPU_MIPS32_R2
+- .set mips64r2
++ .set mips32r2
++ .set fp=64
+ mfc0 t0, CP0_STATUS
+ sll t0, t0, 5
+ bgez t0, 1f # skip loading odd if FR=0
+@@ -175,6 +192,8 @@
+ EX ldc1 $f31, SC_FPREGS+248(a0)
+ 1: .set pop
+ #endif
++ .set push
++ SET_HARDFLOAT
+ EX ldc1 $f0, SC_FPREGS+0(a0)
+ EX ldc1 $f2, SC_FPREGS+16(a0)
+ EX ldc1 $f4, SC_FPREGS+32(a0)
+@@ -192,6 +211,7 @@
+ EX ldc1 $f28, SC_FPREGS+224(a0)
+ EX ldc1 $f30, SC_FPREGS+240(a0)
+ ctc1 t1, fcr31
++ .set pop
+ jr ra
+ li v0, 0 # success
+ END(_restore_fp_context)
+@@ -199,6 +219,8 @@
+ #ifdef CONFIG_MIPS32_COMPAT
+ LEAF(_restore_fp_context32)
+ /* Restore an o32 sigcontext. */
++ .set push
++ SET_HARDFLOAT
+ EX lw t1, SC32_FPC_CSR(a0)
+
+ mfc0 t0, CP0_STATUS
+@@ -242,6 +264,7 @@
+ ctc1 t1, fcr31
+ jr ra
+ li v0, 0 # success
++ .set pop
+ END(_restore_fp_context32)
+ #endif
+
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/r4k_switch.S linux-3.14.67/arch/mips/kernel/r4k_switch.S
+--- linux-3.14.67.orig/arch/mips/kernel/r4k_switch.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/r4k_switch.S 2016-04-27 16:18:41.729238756 +0200
+@@ -22,6 +22,9 @@
+
+ #include <asm/asmmacro.h>
+
++/* preprocessor replaces the fp in ".set fp=64" with $30 otherwise */
++#undef fp
++
+ /*
+ * Offset to the current process status flags, the first 32 bytes of the
+ * stack are not used.
+@@ -151,6 +154,9 @@
+
+ #define FPU_DEFAULT 0x00000000
+
++ .set push
++ SET_HARDFLOAT
++
+ LEAF(_init_fpu)
+ #ifdef CONFIG_MIPS_MT_SMTC
+ /* Rather than manipulate per-VPE Status, set per-TC bit in TCStatus */
+@@ -231,7 +237,8 @@
+
+ #ifdef CONFIG_CPU_MIPS32_R2
+ .set push
+- .set mips64r2
++ .set mips32r2
++ .set fp=64
+ sll t0, t0, 5 # is Status.FR set?
+ bgez t0, 1f # no: skip setting upper 32b
+
+@@ -290,3 +297,5 @@
+ #endif
+ jr ra
+ END(_init_fpu)
++
++ .set pop /* SET_HARDFLOAT */
+diff -Nur linux-3.14.67.orig/arch/mips/kernel/r6000_fpu.S linux-3.14.67/arch/mips/kernel/r6000_fpu.S
+--- linux-3.14.67.orig/arch/mips/kernel/r6000_fpu.S 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/kernel/r6000_fpu.S 2016-04-27 16:18:41.729238756 +0200
+@@ -18,6 +18,9 @@
+
+ .set noreorder
+ .set mips2
++ .set push
++ SET_HARDFLOAT
++
+ /* Save floating point context */
+ LEAF(_save_fp_context)
+ mfc0 t0,CP0_STATUS
+@@ -85,3 +88,5 @@
+ 1: jr ra
+ nop
+ END(_restore_fp_context)
++
++ .set pop /* SET_HARDFLOAT */
+diff -Nur linux-3.14.67.orig/arch/mips/Makefile linux-3.14.67/arch/mips/Makefile
+--- linux-3.14.67.orig/arch/mips/Makefile 2016-04-20 08:41:04.000000000 +0200
++++ linux-3.14.67/arch/mips/Makefile 2016-04-27 16:18:41.729238756 +0200
+@@ -93,6 +93,15 @@
+ KBUILD_AFLAGS_MODULE += -mlong-calls
+ KBUILD_CFLAGS_MODULE += -mlong-calls
+
++#
++# pass -msoft-float to GAS if it supports it. However on newer binutils
++# (specifically newer than 2.24.51.20140728) we then also need to explicitly
++# set ".set hardfloat" in all files which manipulate floating point registers.
++#
++ifneq ($(call as-option,-Wa$(comma)-msoft-float,),)
++ cflags-y += -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float
++endif
++
+ cflags-y += -ffreestanding
+
+ #
diff --git a/target/linux/patches/3.14.58/mkpiggy.patch b/target/linux/patches/3.14.67/mkpiggy.patch
index 751678b74..751678b74 100644
--- a/target/linux/patches/3.14.58/mkpiggy.patch
+++ b/target/linux/patches/3.14.67/mkpiggy.patch
diff --git a/target/linux/patches/3.14.58/mtd-rootfs.patch b/target/linux/patches/3.14.67/mtd-rootfs.patch
index 775d5fc80..775d5fc80 100644
--- a/target/linux/patches/3.14.58/mtd-rootfs.patch
+++ b/target/linux/patches/3.14.67/mtd-rootfs.patch
diff --git a/target/linux/patches/3.14.58/nfsv3-tcp.patch b/target/linux/patches/3.14.67/nfsv3-tcp.patch
index 68ed95b08..68ed95b08 100644
--- a/target/linux/patches/3.14.58/nfsv3-tcp.patch
+++ b/target/linux/patches/3.14.67/nfsv3-tcp.patch
diff --git a/target/linux/patches/3.14.58/non-static.patch b/target/linux/patches/3.14.67/non-static.patch
index a967703d0..a967703d0 100644
--- a/target/linux/patches/3.14.58/non-static.patch
+++ b/target/linux/patches/3.14.67/non-static.patch
diff --git a/target/linux/patches/3.14.58/ppc64-missing-zlib.patch b/target/linux/patches/3.14.67/ppc64-missing-zlib.patch
index c6e0616be..c6e0616be 100644
--- a/target/linux/patches/3.14.58/ppc64-missing-zlib.patch
+++ b/target/linux/patches/3.14.67/ppc64-missing-zlib.patch
diff --git a/target/linux/patches/3.14.58/regmap-boolean.patch b/target/linux/patches/3.14.67/regmap-boolean.patch
index d73620e4d..d73620e4d 100644
--- a/target/linux/patches/3.14.58/regmap-boolean.patch
+++ b/target/linux/patches/3.14.67/regmap-boolean.patch
diff --git a/target/linux/patches/3.14.58/relocs.patch b/target/linux/patches/3.14.67/relocs.patch
index 69a7c88a9..69a7c88a9 100644
--- a/target/linux/patches/3.14.58/relocs.patch
+++ b/target/linux/patches/3.14.67/relocs.patch
diff --git a/target/linux/patches/3.14.58/sgidefs.patch b/target/linux/patches/3.14.67/sgidefs.patch
index f00a284d9..f00a284d9 100644
--- a/target/linux/patches/3.14.58/sgidefs.patch
+++ b/target/linux/patches/3.14.67/sgidefs.patch
diff --git a/target/linux/patches/3.14.58/sortext.patch b/target/linux/patches/3.14.67/sortext.patch
index 8fd4e1d6b..8fd4e1d6b 100644
--- a/target/linux/patches/3.14.58/sortext.patch
+++ b/target/linux/patches/3.14.67/sortext.patch
diff --git a/target/linux/patches/3.14.58/startup.patch b/target/linux/patches/3.14.67/startup.patch
index d396b75e4..d396b75e4 100644
--- a/target/linux/patches/3.14.58/startup.patch
+++ b/target/linux/patches/3.14.67/startup.patch
diff --git a/target/linux/patches/3.14.58/wlan-cf.patch b/target/linux/patches/3.14.67/wlan-cf.patch
index fc20759e2..fc20759e2 100644
--- a/target/linux/patches/3.14.58/wlan-cf.patch
+++ b/target/linux/patches/3.14.67/wlan-cf.patch
diff --git a/target/linux/patches/3.14.58/xargs.patch b/target/linux/patches/3.14.67/xargs.patch
index 2c7b3df59..2c7b3df59 100644
--- a/target/linux/patches/3.14.58/xargs.patch
+++ b/target/linux/patches/3.14.67/xargs.patch
diff --git a/target/linux/patches/3.14.58/yaffs2.patch b/target/linux/patches/3.14.67/yaffs2.patch
index 30e4a790e..30e4a790e 100644
--- a/target/linux/patches/3.14.58/yaffs2.patch
+++ b/target/linux/patches/3.14.67/yaffs2.patch
diff --git a/target/linux/patches/3.14.58/zlib-inflate.patch b/target/linux/patches/3.14.67/zlib-inflate.patch
index 58e1f6d21..58e1f6d21 100644
--- a/target/linux/patches/3.14.58/zlib-inflate.patch
+++ b/target/linux/patches/3.14.67/zlib-inflate.patch
diff --git a/target/linux/patches/3.18.25/bsd-compatibility.patch b/target/linux/patches/3.18.31/bsd-compatibility.patch
index b954b658f..b954b658f 100644
--- a/target/linux/patches/3.18.25/bsd-compatibility.patch
+++ b/target/linux/patches/3.18.31/bsd-compatibility.patch
diff --git a/target/linux/patches/3.18.25/cleankernel.patch b/target/linux/patches/3.18.31/cleankernel.patch
index d8c055dc3..d8c055dc3 100644
--- a/target/linux/patches/3.18.25/cleankernel.patch
+++ b/target/linux/patches/3.18.31/cleankernel.patch
diff --git a/target/linux/patches/3.18.25/cris-header.patch b/target/linux/patches/3.18.31/cris-header.patch
index 3db07e530..3db07e530 100644
--- a/target/linux/patches/3.18.25/cris-header.patch
+++ b/target/linux/patches/3.18.31/cris-header.patch
diff --git a/target/linux/patches/3.18.25/cris-initramfs.patch b/target/linux/patches/3.18.31/cris-initramfs.patch
index b709e705e..b709e705e 100644
--- a/target/linux/patches/3.18.25/cris-initramfs.patch
+++ b/target/linux/patches/3.18.31/cris-initramfs.patch
diff --git a/target/linux/patches/3.18.25/defaults.patch b/target/linux/patches/3.18.31/defaults.patch
index 6cdca084e..6cdca084e 100644
--- a/target/linux/patches/3.18.25/defaults.patch
+++ b/target/linux/patches/3.18.31/defaults.patch
diff --git a/target/linux/patches/3.18.25/export-symbol-for-exmap.patch b/target/linux/patches/3.18.31/export-symbol-for-exmap.patch
index 4f0fc8449..4f0fc8449 100644
--- a/target/linux/patches/3.18.25/export-symbol-for-exmap.patch
+++ b/target/linux/patches/3.18.31/export-symbol-for-exmap.patch
diff --git a/target/linux/patches/3.18.25/fblogo.patch b/target/linux/patches/3.18.31/fblogo.patch
index 5b9070242..5b9070242 100644
--- a/target/linux/patches/3.18.25/fblogo.patch
+++ b/target/linux/patches/3.18.31/fblogo.patch
diff --git a/target/linux/patches/3.18.25/gemalto.patch b/target/linux/patches/3.18.31/gemalto.patch
index 65f7af1d7..65f7af1d7 100644
--- a/target/linux/patches/3.18.25/gemalto.patch
+++ b/target/linux/patches/3.18.31/gemalto.patch
diff --git a/target/linux/patches/3.18.25/initramfs-nosizelimit.patch b/target/linux/patches/3.18.31/initramfs-nosizelimit.patch
index 40d2f6bd8..40d2f6bd8 100644
--- a/target/linux/patches/3.18.25/initramfs-nosizelimit.patch
+++ b/target/linux/patches/3.18.31/initramfs-nosizelimit.patch
diff --git a/target/linux/patches/3.18.25/lemote-rfkill.patch b/target/linux/patches/3.18.31/lemote-rfkill.patch
index a61488434..a61488434 100644
--- a/target/linux/patches/3.18.25/lemote-rfkill.patch
+++ b/target/linux/patches/3.18.31/lemote-rfkill.patch
diff --git a/target/linux/patches/3.18.25/microblaze-ethernet.patch b/target/linux/patches/3.18.31/microblaze-ethernet.patch
index 742ab477e..742ab477e 100644
--- a/target/linux/patches/3.18.25/microblaze-ethernet.patch
+++ b/target/linux/patches/3.18.31/microblaze-ethernet.patch
diff --git a/target/linux/patches/3.18.25/mkpiggy.patch b/target/linux/patches/3.18.31/mkpiggy.patch
index 751678b74..751678b74 100644
--- a/target/linux/patches/3.18.25/mkpiggy.patch
+++ b/target/linux/patches/3.18.31/mkpiggy.patch
diff --git a/target/linux/patches/3.18.25/mtd-rootfs.patch b/target/linux/patches/3.18.31/mtd-rootfs.patch
index 775d5fc80..775d5fc80 100644
--- a/target/linux/patches/3.18.25/mtd-rootfs.patch
+++ b/target/linux/patches/3.18.31/mtd-rootfs.patch
diff --git a/target/linux/patches/3.18.25/nfsv3-tcp.patch b/target/linux/patches/3.18.31/nfsv3-tcp.patch
index d5e07e1c2..d5e07e1c2 100644
--- a/target/linux/patches/3.18.25/nfsv3-tcp.patch
+++ b/target/linux/patches/3.18.31/nfsv3-tcp.patch
diff --git a/target/linux/patches/3.18.25/non-static.patch b/target/linux/patches/3.18.31/non-static.patch
index a967703d0..a967703d0 100644
--- a/target/linux/patches/3.18.25/non-static.patch
+++ b/target/linux/patches/3.18.31/non-static.patch
diff --git a/target/linux/patches/3.18.25/ppc64-missing-zlib.patch b/target/linux/patches/3.18.31/ppc64-missing-zlib.patch
index c6e0616be..c6e0616be 100644
--- a/target/linux/patches/3.18.25/ppc64-missing-zlib.patch
+++ b/target/linux/patches/3.18.31/ppc64-missing-zlib.patch
diff --git a/target/linux/patches/3.18.25/relocs.patch b/target/linux/patches/3.18.31/relocs.patch
index 69a7c88a9..69a7c88a9 100644
--- a/target/linux/patches/3.18.25/relocs.patch
+++ b/target/linux/patches/3.18.31/relocs.patch
diff --git a/target/linux/patches/3.18.25/sgidefs.patch b/target/linux/patches/3.18.31/sgidefs.patch
index f00a284d9..f00a284d9 100644
--- a/target/linux/patches/3.18.25/sgidefs.patch
+++ b/target/linux/patches/3.18.31/sgidefs.patch
diff --git a/target/linux/patches/3.18.25/sortext.patch b/target/linux/patches/3.18.31/sortext.patch
index 8fd4e1d6b..8fd4e1d6b 100644
--- a/target/linux/patches/3.18.25/sortext.patch
+++ b/target/linux/patches/3.18.31/sortext.patch
diff --git a/target/linux/patches/3.18.25/startup.patch b/target/linux/patches/3.18.31/startup.patch
index d396b75e4..d396b75e4 100644
--- a/target/linux/patches/3.18.25/startup.patch
+++ b/target/linux/patches/3.18.31/startup.patch
diff --git a/target/linux/patches/3.18.25/wlan-cf.patch b/target/linux/patches/3.18.31/wlan-cf.patch
index fc20759e2..fc20759e2 100644
--- a/target/linux/patches/3.18.25/wlan-cf.patch
+++ b/target/linux/patches/3.18.31/wlan-cf.patch
diff --git a/target/linux/patches/3.18.25/xargs.patch b/target/linux/patches/3.18.31/xargs.patch
index 2c7b3df59..2c7b3df59 100644
--- a/target/linux/patches/3.18.25/xargs.patch
+++ b/target/linux/patches/3.18.31/xargs.patch
diff --git a/target/linux/patches/3.18.25/yaffs2.patch b/target/linux/patches/3.18.31/yaffs2.patch
index 2ade5bf7e..2ade5bf7e 100644
--- a/target/linux/patches/3.18.25/yaffs2.patch
+++ b/target/linux/patches/3.18.31/yaffs2.patch
diff --git a/target/linux/patches/3.2.77/sparc-aout.patch b/target/linux/patches/3.2.79/sparc-aout.patch
index 6ad252479..6ad252479 100644
--- a/target/linux/patches/3.2.77/sparc-aout.patch
+++ b/target/linux/patches/3.2.79/sparc-aout.patch
diff --git a/target/linux/patches/3.4.110/aufs2.patch b/target/linux/patches/3.4.111/aufs2.patch
index d40c9a3fe..d40c9a3fe 100644
--- a/target/linux/patches/3.4.110/aufs2.patch
+++ b/target/linux/patches/3.4.111/aufs2.patch
diff --git a/target/linux/patches/3.4.110/bsd-compatibility.patch b/target/linux/patches/3.4.111/bsd-compatibility.patch
index 9e91a62de..9e91a62de 100644
--- a/target/linux/patches/3.4.110/bsd-compatibility.patch
+++ b/target/linux/patches/3.4.111/bsd-compatibility.patch
diff --git a/target/linux/patches/3.4.110/defaults.patch b/target/linux/patches/3.4.111/defaults.patch
index 58aae610b..58aae610b 100644
--- a/target/linux/patches/3.4.110/defaults.patch
+++ b/target/linux/patches/3.4.111/defaults.patch
diff --git a/target/linux/patches/3.4.110/gemalto.patch b/target/linux/patches/3.4.111/gemalto.patch
index 65f7af1d7..65f7af1d7 100644
--- a/target/linux/patches/3.4.110/gemalto.patch
+++ b/target/linux/patches/3.4.111/gemalto.patch
diff --git a/target/linux/patches/3.4.110/lemote-rfkill.patch b/target/linux/patches/3.4.111/lemote-rfkill.patch
index a61488434..a61488434 100644
--- a/target/linux/patches/3.4.110/lemote-rfkill.patch
+++ b/target/linux/patches/3.4.111/lemote-rfkill.patch
diff --git a/target/linux/patches/3.4.110/linux-gcc-check.patch b/target/linux/patches/3.4.111/linux-gcc-check.patch
index 7cc381845..7cc381845 100644
--- a/target/linux/patches/3.4.110/linux-gcc-check.patch
+++ b/target/linux/patches/3.4.111/linux-gcc-check.patch
diff --git a/target/linux/patches/3.4.110/mips-error.patch b/target/linux/patches/3.4.111/mips-error.patch
index 800abc80d..800abc80d 100644
--- a/target/linux/patches/3.4.110/mips-error.patch
+++ b/target/linux/patches/3.4.111/mips-error.patch
diff --git a/target/linux/patches/3.4.110/mkpiggy.patch b/target/linux/patches/3.4.111/mkpiggy.patch
index d4e815cd2..d4e815cd2 100644
--- a/target/linux/patches/3.4.110/mkpiggy.patch
+++ b/target/linux/patches/3.4.111/mkpiggy.patch
diff --git a/target/linux/patches/3.4.110/module-alloc-size-check.patch b/target/linux/patches/3.4.111/module-alloc-size-check.patch
index a792ac60a..a792ac60a 100644
--- a/target/linux/patches/3.4.110/module-alloc-size-check.patch
+++ b/target/linux/patches/3.4.111/module-alloc-size-check.patch
diff --git a/target/linux/patches/3.4.110/non-static.patch b/target/linux/patches/3.4.111/non-static.patch
index a967703d0..a967703d0 100644
--- a/target/linux/patches/3.4.110/non-static.patch
+++ b/target/linux/patches/3.4.111/non-static.patch
diff --git a/target/linux/patches/3.4.110/relocs.patch b/target/linux/patches/3.4.111/relocs.patch
index 43c5bb580..43c5bb580 100644
--- a/target/linux/patches/3.4.110/relocs.patch
+++ b/target/linux/patches/3.4.111/relocs.patch
diff --git a/target/linux/patches/3.4.110/sparc-aout.patch b/target/linux/patches/3.4.111/sparc-aout.patch
index 5cd74c2e7..5cd74c2e7 100644
--- a/target/linux/patches/3.4.110/sparc-aout.patch
+++ b/target/linux/patches/3.4.111/sparc-aout.patch
diff --git a/target/linux/patches/3.4.110/sparc-include.patch b/target/linux/patches/3.4.111/sparc-include.patch
index 2f8ffd061..2f8ffd061 100644
--- a/target/linux/patches/3.4.110/sparc-include.patch
+++ b/target/linux/patches/3.4.111/sparc-include.patch
diff --git a/target/linux/patches/3.4.110/startup.patch b/target/linux/patches/3.4.111/startup.patch
index c26430bcb..c26430bcb 100644
--- a/target/linux/patches/3.4.110/startup.patch
+++ b/target/linux/patches/3.4.111/startup.patch
diff --git a/target/linux/patches/3.4.110/usb-defaults-off.patch b/target/linux/patches/3.4.111/usb-defaults-off.patch
index 31367108a..31367108a 100644
--- a/target/linux/patches/3.4.110/usb-defaults-off.patch
+++ b/target/linux/patches/3.4.111/usb-defaults-off.patch
diff --git a/target/linux/patches/3.4.110/vga-cons-default-off.patch b/target/linux/patches/3.4.111/vga-cons-default-off.patch
index 178aeeeb9..178aeeeb9 100644
--- a/target/linux/patches/3.4.110/vga-cons-default-off.patch
+++ b/target/linux/patches/3.4.111/vga-cons-default-off.patch
diff --git a/target/linux/patches/3.4.110/wlan-cf.patch b/target/linux/patches/3.4.111/wlan-cf.patch
index fc20759e2..fc20759e2 100644
--- a/target/linux/patches/3.4.110/wlan-cf.patch
+++ b/target/linux/patches/3.4.111/wlan-cf.patch
diff --git a/target/linux/patches/3.4.110/yaffs2.patch b/target/linux/patches/3.4.111/yaffs2.patch
index 44c95915f..44c95915f 100644
--- a/target/linux/patches/3.4.110/yaffs2.patch
+++ b/target/linux/patches/3.4.111/yaffs2.patch
diff --git a/target/linux/patches/3.4.110/zlib-inflate.patch b/target/linux/patches/3.4.111/zlib-inflate.patch
index 58e1f6d21..58e1f6d21 100644
--- a/target/linux/patches/3.4.110/zlib-inflate.patch
+++ b/target/linux/patches/3.4.111/zlib-inflate.patch
diff --git a/target/linux/patches/4.1.20/aufs.patch b/target/linux/patches/4.1.22/aufs.patch
index 749c90989..749c90989 100644
--- a/target/linux/patches/4.1.20/aufs.patch
+++ b/target/linux/patches/4.1.22/aufs.patch
diff --git a/target/linux/patches/4.1.20/cleankernel.patch b/target/linux/patches/4.1.22/cleankernel.patch
index 59693f426..59693f426 100644
--- a/target/linux/patches/4.1.20/cleankernel.patch
+++ b/target/linux/patches/4.1.22/cleankernel.patch
diff --git a/target/linux/patches/4.1.20/cris-header.patch b/target/linux/patches/4.1.22/cris-header.patch
index 2b5a88461..2b5a88461 100644
--- a/target/linux/patches/4.1.20/cris-header.patch
+++ b/target/linux/patches/4.1.22/cris-header.patch
diff --git a/target/linux/patches/4.1.20/initramfs-nosizelimit.patch b/target/linux/patches/4.1.22/initramfs-nosizelimit.patch
index 40d2f6bd8..40d2f6bd8 100644
--- a/target/linux/patches/4.1.20/initramfs-nosizelimit.patch
+++ b/target/linux/patches/4.1.22/initramfs-nosizelimit.patch
diff --git a/target/linux/patches/4.1.20/j2-core.patch b/target/linux/patches/4.1.22/j2-core.patch
index 38136df2c..38136df2c 100644
--- a/target/linux/patches/4.1.20/j2-core.patch
+++ b/target/linux/patches/4.1.22/j2-core.patch
diff --git a/target/linux/patches/4.1.20/mtd-rootfs.patch b/target/linux/patches/4.1.22/mtd-rootfs.patch
index 5f6d82b5c..5f6d82b5c 100644
--- a/target/linux/patches/4.1.20/mtd-rootfs.patch
+++ b/target/linux/patches/4.1.22/mtd-rootfs.patch
diff --git a/target/linux/patches/4.1.20/realtime.patch b/target/linux/patches/4.1.22/realtime.patch
index 6d8c2ac68..832b82fdf 100644
--- a/target/linux/patches/4.1.20/realtime.patch
+++ b/target/linux/patches/4.1.22/realtime.patch
@@ -1441,101 +1441,6 @@ diff -Nur linux-4.1.20.orig/arch/arm64/kernel/asm-offsets.c linux-4.1.20/arch/ar
DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit));
DEFINE(TI_TASK, offsetof(struct thread_info, task));
DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
-diff -Nur linux-4.1.20.orig/arch/arm64/kernel/debug-monitors.c linux-4.1.20/arch/arm64/kernel/debug-monitors.c
---- linux-4.1.20.orig/arch/arm64/kernel/debug-monitors.c 2016-03-17 19:11:03.000000000 +0100
-+++ linux-4.1.20/arch/arm64/kernel/debug-monitors.c 2016-03-21 20:18:28.000000000 +0100
-@@ -184,20 +184,21 @@
-
- /* EL1 Single Step Handler hooks */
- static LIST_HEAD(step_hook);
--static DEFINE_RWLOCK(step_hook_lock);
-+static DEFINE_SPINLOCK(step_hook_lock);
-
- void register_step_hook(struct step_hook *hook)
- {
-- write_lock(&step_hook_lock);
-- list_add(&hook->node, &step_hook);
-- write_unlock(&step_hook_lock);
-+ spin_lock(&step_hook_lock);
-+ list_add_rcu(&hook->node, &step_hook);
-+ spin_unlock(&step_hook_lock);
- }
-
- void unregister_step_hook(struct step_hook *hook)
- {
-- write_lock(&step_hook_lock);
-- list_del(&hook->node);
-- write_unlock(&step_hook_lock);
-+ spin_lock(&step_hook_lock);
-+ list_del_rcu(&hook->node);
-+ spin_unlock(&step_hook_lock);
-+ synchronize_rcu();
- }
-
- /*
-@@ -211,15 +212,15 @@
- struct step_hook *hook;
- int retval = DBG_HOOK_ERROR;
-
-- read_lock(&step_hook_lock);
-+ rcu_read_lock();
-
-- list_for_each_entry(hook, &step_hook, node) {
-+ list_for_each_entry_rcu(hook, &step_hook, node) {
- retval = hook->fn(regs, esr);
- if (retval == DBG_HOOK_HANDLED)
- break;
- }
-
-- read_unlock(&step_hook_lock);
-+ rcu_read_unlock();
-
- return retval;
- }
-@@ -271,20 +272,21 @@
- * Use reader/writer locks instead of plain spinlock.
- */
- static LIST_HEAD(break_hook);
--static DEFINE_RWLOCK(break_hook_lock);
-+static DEFINE_SPINLOCK(break_hook_lock);
-
- void register_break_hook(struct break_hook *hook)
- {
-- write_lock(&break_hook_lock);
-- list_add(&hook->node, &break_hook);
-- write_unlock(&break_hook_lock);
-+ spin_lock(&break_hook_lock);
-+ list_add_rcu(&hook->node, &break_hook);
-+ spin_unlock(&break_hook_lock);
- }
-
- void unregister_break_hook(struct break_hook *hook)
- {
-- write_lock(&break_hook_lock);
-- list_del(&hook->node);
-- write_unlock(&break_hook_lock);
-+ spin_lock(&break_hook_lock);
-+ list_del_rcu(&hook->node);
-+ spin_unlock(&break_hook_lock);
-+ synchronize_rcu();
- }
-
- static int call_break_hook(struct pt_regs *regs, unsigned int esr)
-@@ -292,11 +294,11 @@
- struct break_hook *hook;
- int (*fn)(struct pt_regs *regs, unsigned int esr) = NULL;
-
-- read_lock(&break_hook_lock);
-- list_for_each_entry(hook, &break_hook, node)
-+ rcu_read_lock();
-+ list_for_each_entry_rcu(hook, &break_hook, node)
- if ((esr & hook->esr_mask) == hook->esr_val)
- fn = hook->fn;
-- read_unlock(&break_hook_lock);
-+ rcu_read_unlock();
-
- return fn ? fn(regs, esr) : DBG_HOOK_ERROR;
- }
diff -Nur linux-4.1.20.orig/arch/arm64/kernel/entry.S linux-4.1.20/arch/arm64/kernel/entry.S
--- linux-4.1.20.orig/arch/arm64/kernel/entry.S 2016-03-17 19:11:03.000000000 +0100
+++ linux-4.1.20/arch/arm64/kernel/entry.S 2016-03-21 20:18:28.000000000 +0100
diff --git a/target/linux/patches/4.1.20/regmap-default-on.patch b/target/linux/patches/4.1.22/regmap-default-on.patch
index 8d72224bf..8d72224bf 100644
--- a/target/linux/patches/4.1.20/regmap-default-on.patch
+++ b/target/linux/patches/4.1.22/regmap-default-on.patch
diff --git a/target/linux/patches/4.1.20/remove-warn.patch b/target/linux/patches/4.1.22/remove-warn.patch
index 1f89c710d..1f89c710d 100644
--- a/target/linux/patches/4.1.20/remove-warn.patch
+++ b/target/linux/patches/4.1.22/remove-warn.patch
diff --git a/target/linux/patches/4.1.20/startup.patch b/target/linux/patches/4.1.22/startup.patch
index d396b75e4..d396b75e4 100644
--- a/target/linux/patches/4.1.20/startup.patch
+++ b/target/linux/patches/4.1.22/startup.patch
diff --git a/target/linux/patches/4.1.20/use-gawk.patch b/target/linux/patches/4.1.22/use-gawk.patch
index 5b312589d..5b312589d 100644
--- a/target/linux/patches/4.1.20/use-gawk.patch
+++ b/target/linux/patches/4.1.22/use-gawk.patch
diff --git a/target/linux/patches/4.1.20/use-libgcc-for-sh.patch b/target/linux/patches/4.1.22/use-libgcc-for-sh.patch
index 6420219b0..6420219b0 100644
--- a/target/linux/patches/4.1.20/use-libgcc-for-sh.patch
+++ b/target/linux/patches/4.1.22/use-libgcc-for-sh.patch
diff --git a/target/linux/patches/4.4.6/initramfs-nosizelimit.patch b/target/linux/patches/4.4.8/initramfs-nosizelimit.patch
index 40d2f6bd8..40d2f6bd8 100644
--- a/target/linux/patches/4.4.6/initramfs-nosizelimit.patch
+++ b/target/linux/patches/4.4.8/initramfs-nosizelimit.patch
diff --git a/target/linux/patches/4.4.6/ld-or1k.patch b/target/linux/patches/4.4.8/ld-or1k.patch
index 264f9166f..264f9166f 100644
--- a/target/linux/patches/4.4.6/ld-or1k.patch
+++ b/target/linux/patches/4.4.8/ld-or1k.patch
diff --git a/target/linux/patches/4.4.6/macsonic.patch b/target/linux/patches/4.4.8/macsonic.patch
index 75a6fcad2..75a6fcad2 100644
--- a/target/linux/patches/4.4.6/macsonic.patch
+++ b/target/linux/patches/4.4.8/macsonic.patch
diff --git a/target/linux/patches/4.4.6/mips-xz.patch b/target/linux/patches/4.4.8/mips-xz.patch
index 5cfac6254..5cfac6254 100644
--- a/target/linux/patches/4.4.6/mips-xz.patch
+++ b/target/linux/patches/4.4.8/mips-xz.patch
diff --git a/target/linux/patches/4.4.6/startup.patch b/target/linux/patches/4.4.8/startup.patch
index e54ac19a6..e54ac19a6 100644
--- a/target/linux/patches/4.4.6/startup.patch
+++ b/target/linux/patches/4.4.8/startup.patch
diff --git a/target/linux/patches/4.4.6/use-libgcc-for-sh.patch b/target/linux/patches/4.4.8/use-libgcc-for-sh.patch
index 6420219b0..6420219b0 100644
--- a/target/linux/patches/4.4.6/use-libgcc-for-sh.patch
+++ b/target/linux/patches/4.4.8/use-libgcc-for-sh.patch
diff --git a/target/m68k/qemu-m68k-mcf5208/patches/3.14.58/m68k-coldfire-fec.patch b/target/m68k/qemu-m68k-mcf5208/patches/3.14.67/m68k-coldfire-fec.patch
index be0b18ad7..be0b18ad7 100644
--- a/target/m68k/qemu-m68k-mcf5208/patches/3.14.58/m68k-coldfire-fec.patch
+++ b/target/m68k/qemu-m68k-mcf5208/patches/3.14.67/m68k-coldfire-fec.patch
diff --git a/target/m68k/qemu-m68k-mcf5208/patches/3.18.25/m68k-coldfire-fec.patch b/target/m68k/qemu-m68k-mcf5208/patches/3.18.31/m68k-coldfire-fec.patch
index ceaa21ce6..ceaa21ce6 100644
--- a/target/m68k/qemu-m68k-mcf5208/patches/3.18.25/m68k-coldfire-fec.patch
+++ b/target/m68k/qemu-m68k-mcf5208/patches/3.18.31/m68k-coldfire-fec.patch
diff --git a/target/m68k/qemu-m68k-mcf5208/patches/4.1.20/m68k-coldfire-fec.patch b/target/m68k/qemu-m68k-mcf5208/patches/4.1.22/m68k-coldfire-fec.patch
index 690befe8f..690befe8f 100644
--- a/target/m68k/qemu-m68k-mcf5208/patches/4.1.20/m68k-coldfire-fec.patch
+++ b/target/m68k/qemu-m68k-mcf5208/patches/4.1.22/m68k-coldfire-fec.patch
diff --git a/target/mips/ath79/patches/4.1.20/0001-openwrt-ath79.patch b/target/mips/ath79/patches/4.1.22/0001-openwrt-ath79.patch
index 4178f20cb..4178f20cb 100644
--- a/target/mips/ath79/patches/4.1.20/0001-openwrt-ath79.patch
+++ b/target/mips/ath79/patches/4.1.22/0001-openwrt-ath79.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.10.94/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.10.101/rb532-cfgfs.patch
index 36ce30d91..36ce30d91 100644
--- a/target/mips/mikrotik-rb532/patches/3.10.94/rb532-cfgfs.patch
+++ b/target/mips/mikrotik-rb532/patches/3.10.101/rb532-cfgfs.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.10.94/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.10.101/rb532-pci.patch
index adfa652b5..adfa652b5 100644
--- a/target/mips/mikrotik-rb532/patches/3.10.94/rb532-pci.patch
+++ b/target/mips/mikrotik-rb532/patches/3.10.101/rb532-pci.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.12.51/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.12.59/rb532-cfgfs.patch
index 36ce30d91..36ce30d91 100644
--- a/target/mips/mikrotik-rb532/patches/3.12.51/rb532-cfgfs.patch
+++ b/target/mips/mikrotik-rb532/patches/3.12.59/rb532-cfgfs.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.12.51/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.12.59/rb532-pci.patch
index adfa652b5..adfa652b5 100644
--- a/target/mips/mikrotik-rb532/patches/3.12.51/rb532-pci.patch
+++ b/target/mips/mikrotik-rb532/patches/3.12.59/rb532-pci.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.14.58/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.14.67/rb532-cfgfs.patch
index 36ce30d91..36ce30d91 100644
--- a/target/mips/mikrotik-rb532/patches/3.14.58/rb532-cfgfs.patch
+++ b/target/mips/mikrotik-rb532/patches/3.14.67/rb532-cfgfs.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.14.58/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.14.67/rb532-pci.patch
index adfa652b5..adfa652b5 100644
--- a/target/mips/mikrotik-rb532/patches/3.14.58/rb532-pci.patch
+++ b/target/mips/mikrotik-rb532/patches/3.14.67/rb532-pci.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.4.110/rb532-cfgfs.patch b/target/mips/mikrotik-rb532/patches/3.4.111/rb532-cfgfs.patch
index 36ce30d91..36ce30d91 100644
--- a/target/mips/mikrotik-rb532/patches/3.4.110/rb532-cfgfs.patch
+++ b/target/mips/mikrotik-rb532/patches/3.4.111/rb532-cfgfs.patch
diff --git a/target/mips/mikrotik-rb532/patches/3.4.110/rb532-pci.patch b/target/mips/mikrotik-rb532/patches/3.4.111/rb532-pci.patch
index adfa652b5..adfa652b5 100644
--- a/target/mips/mikrotik-rb532/patches/3.4.110/rb532-pci.patch
+++ b/target/mips/mikrotik-rb532/patches/3.4.111/rb532-pci.patch
diff --git a/target/mips64/lemote-yeelong/patches/3.18.25/sm7xx-fb.patch b/target/mips64/lemote-yeelong/patches/3.18.31/sm7xx-fb.patch
index a2b954337..a2b954337 100644
--- a/target/mips64/lemote-yeelong/patches/3.18.25/sm7xx-fb.patch
+++ b/target/mips64/lemote-yeelong/patches/3.18.31/sm7xx-fb.patch
diff --git a/target/or1k/patches/4.1.20/ld-or1k.patch b/target/or1k/patches/4.1.22/ld-or1k.patch
index 81c9db6c2..81c9db6c2 100644
--- a/target/or1k/patches/4.1.20/ld-or1k.patch
+++ b/target/or1k/patches/4.1.22/ld-or1k.patch