From 8c6f00ef4f17999c5110166764773e40b9a934de Mon Sep 17 00:00:00 2001 From: Stijn Tintel Date: Sun, 13 Jan 2019 21:50:36 +0200 Subject: [PATCH] kernel: bump 4.14 to 4.14.93 Refresh patches. Remove upstreamed patches: - backport/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch - pending/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch - brcm2708/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch Compile-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64 Runtime-tested: ar71xx, ath79, brcm2708/bcm27{08,10}, octeon, x86/64 Signed-off-by: Stijn Tintel --- include/kernel-version.mk | 4 +- .../905-BCM53573-minor-hacks.patch | 4 +- ...5-Support-pin-groups-other-than-7-11.patch | 4 +- ...i-bcm2835-Disable-forced-software-CS.patch | 4 +- ...-0014-spi-bcm2835-Remove-unused-code.patch | 4 +- ...Fix-pitch-setup-for-T-format-scanout.patch | 2 +- ...oup-Disable-cgroup-memory-by-default.patch | 6 +- ...an78xx-Avoid-spurious-kevent-4-error.patch | 2 +- ...-the-DRM_IOCTL_VC4_GEM_MADVISE-ioctl.patch | 2 +- ...el_order-instead-of-custom-.flip_cbc.patch | 2 +- ...78xx-Read-initial-EEE-status-from-DT.patch | 2 +- ...xx-Allow-for-VLAN-headers-in-timeout.patch | 2 +- ...e-enabling-of-EEE-into-PHY-init-code.patch | 2 +- ...est-s-w-csum-check-on-VLAN-tagged-pa.patch | 2 +- ...n78xx-Add-support-for-VLAN-filtering.patch | 4 +- ...x-Add-support-for-VLAN-tag-stripping.patch | 10 +- ...n78xx-Reduce-s-w-csum-check-on-VLANs.patch | 2 +- ...Disable-TCP-Segmentation-Offload-TSO.patch | 2 +- ...-Set-premultiplied-for-alpha-formats.patch | 2 +- ...ck-if-plane-requires-background-fill.patch | 4 +- ...rtise-supported-modifiers-for-planes.patch | 8 +- ...ing-formats-to-vc4_format_mod_suppor.patch | 2 +- ...rm-vc4-Add-support-for-SAND-modifier.patch | 14 +-- ...rx-handling-before-first-packet-is-s.patch | 2 +- ...an78xx-Fix-link-status-notifications.patch | 2 +- ...ET_DTR-quirk-to-the-SIMCOM-shared-de.patch | 45 ------- ...e-link-events-to-minimize-poll-storm.patch | 2 +- .../patches-4.14/961-lan78xx-enable-LED.patch | 2 +- .../brcm47xx/patches-4.14/159-cpu_fixes.patch | 39 +++--- .../patches-4.14/160-kmap_coherent.patch | 4 +- .../cns3xxx/patches-4.14/060-pcie_abort.patch | 2 +- ...tcp-allow-drivers-to-tweak-TSQ-logic.patch | 4 +- ...e-protect-delay-slot-emulation-pages.patch | 119 ------------------ ...s3xxx-use-actual-size-reads-for-PCIe.patch | 7 +- .../hack-4.14/207-disable-modorder.patch | 4 +- ...cache-use-more-efficient-cache-blast.patch | 2 +- .../702-phy_add_aneg_done_function.patch | 2 +- .../generic/hack-4.14/902-debloat_proc.patch | 2 +- .../203-kallsyms_uncompressed.patch | 8 +- ...ort-limiting-4K-sectors-support-base.patch | 2 +- ...eck_raw_super-on-big-endian-machines.patch | 51 -------- .../pending-4.14/630-packet_socket_type.patch | 6 +- ...Add-support-for-MAP-E-FMRs-mesh-mode.patch | 24 ++-- ...ng-with-source-address-failed-policy.patch | 4 +- ...detach-callback-to-struct-phy_driver.patch | 2 +- .../patches-4.14/0052-net-phy-add-FC.patch | 2 +- ...0-powerpc-85xx-tl-wdr4900-v1-support.patch | 4 +- 47 files changed, 106 insertions(+), 325 deletions(-) delete mode 100644 target/linux/brcm2708/patches-4.14/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch delete mode 100644 target/linux/generic/backport-4.14/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch delete mode 100644 target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 6fef7758f38..63f9da8428c 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -4,12 +4,12 @@ LINUX_RELEASE?=1 LINUX_VERSION-3.18 = .131 LINUX_VERSION-4.9 = .148 -LINUX_VERSION-4.14 = .91 +LINUX_VERSION-4.14 = .93 LINUX_VERSION-4.19 = .9 LINUX_KERNEL_HASH-3.18.131 = 04600ce96e4c7642b9eaa4814f4930c79b53010b1c155d23e5ac0aeba6f455e2 LINUX_KERNEL_HASH-4.9.148 = 6067151b0225a8de1ab79abc9be7bae237eaca0cd838eb26684169560d88a994 -LINUX_KERNEL_HASH-4.14.91 = 6a587c8b4160918efa082b0c2eda8c2db0f50d8814ad1d1ac94be1edf66ca6a9 +LINUX_KERNEL_HASH-4.14.93 = bb125fb204f7089782e179126121dd0f0aad9f02b7517ce3744982254c221bad LINUX_KERNEL_HASH-4.19.9 = fc116cc6829c73944215d3b3ac0fc368dde9e8235b456744afffde001269dbf2 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) diff --git a/target/linux/bcm53xx/patches-4.14/905-BCM53573-minor-hacks.patch b/target/linux/bcm53xx/patches-4.14/905-BCM53573-minor-hacks.patch index 0813b6a817a..39f4cf7662f 100644 --- a/target/linux/bcm53xx/patches-4.14/905-BCM53573-minor-hacks.patch +++ b/target/linux/bcm53xx/patches-4.14/905-BCM53573-minor-hacks.patch @@ -21,7 +21,7 @@ Signed-off-by: Rafał Miłecki clocks { --- a/drivers/bcma/main.c +++ b/drivers/bcma/main.c -@@ -348,14 +348,6 @@ static int bcma_register_devices(struct +@@ -326,14 +326,6 @@ static int bcma_register_devices(struct } #endif @@ -36,7 +36,7 @@ Signed-off-by: Rafał Miłecki #ifdef CONFIG_BCMA_NFLASH if (bus->drv_cc.nflash.present) { err = platform_device_register(&bcma_nflash_dev); -@@ -436,6 +428,14 @@ int bcma_bus_register(struct bcma_bus *b +@@ -411,6 +403,14 @@ int bcma_bus_register(struct bcma_bus *b bcma_register_core(bus, core); } diff --git a/target/linux/brcm2708/patches-4.14/950-0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch b/target/linux/brcm2708/patches-4.14/950-0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch index edd040455fb..434c63fa75f 100644 --- a/target/linux/brcm2708/patches-4.14/950-0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch +++ b/target/linux/brcm2708/patches-4.14/950-0012-spi-bcm2835-Support-pin-groups-other-than-7-11.patch @@ -19,7 +19,7 @@ Signed-off-by: Phil Elwell --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c -@@ -688,6 +688,8 @@ static int bcm2835_spi_setup(struct spi_ +@@ -686,6 +686,8 @@ static int bcm2835_spi_setup(struct spi_ { int err; struct gpio_chip *chip; @@ -28,7 +28,7 @@ Signed-off-by: Phil Elwell /* * sanity checking the native-chipselects */ -@@ -704,15 +706,42 @@ static int bcm2835_spi_setup(struct spi_ +@@ -702,15 +704,42 @@ static int bcm2835_spi_setup(struct spi_ "setup: only two native chip-selects are supported\n"); return -EINVAL; } diff --git a/target/linux/brcm2708/patches-4.14/950-0013-spi-bcm2835-Disable-forced-software-CS.patch b/target/linux/brcm2708/patches-4.14/950-0013-spi-bcm2835-Disable-forced-software-CS.patch index e0ab7eceff9..22d6c506097 100644 --- a/target/linux/brcm2708/patches-4.14/950-0013-spi-bcm2835-Disable-forced-software-CS.patch +++ b/target/linux/brcm2708/patches-4.14/950-0013-spi-bcm2835-Disable-forced-software-CS.patch @@ -16,7 +16,7 @@ Signed-off-by: Phil Elwell --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c -@@ -707,6 +707,7 @@ static int bcm2835_spi_setup(struct spi_ +@@ -705,6 +705,7 @@ static int bcm2835_spi_setup(struct spi_ return -EINVAL; } @@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell /* now translate native cs to GPIO */ /* first look for chip select pins in the devices pin groups */ for (pingroup_index = 0; -@@ -756,6 +757,7 @@ static int bcm2835_spi_setup(struct spi_ +@@ -754,6 +755,7 @@ static int bcm2835_spi_setup(struct spi_ spi->chip_select, spi->cs_gpio, err); return err; } diff --git a/target/linux/brcm2708/patches-4.14/950-0014-spi-bcm2835-Remove-unused-code.patch b/target/linux/brcm2708/patches-4.14/950-0014-spi-bcm2835-Remove-unused-code.patch index 601de428f5f..cb7f348a8b4 100644 --- a/target/linux/brcm2708/patches-4.14/950-0014-spi-bcm2835-Remove-unused-code.patch +++ b/target/linux/brcm2708/patches-4.14/950-0014-spi-bcm2835-Remove-unused-code.patch @@ -9,7 +9,7 @@ Subject: [PATCH 014/454] spi-bcm2835: Remove unused code --- a/drivers/spi/spi-bcm2835.c +++ b/drivers/spi/spi-bcm2835.c -@@ -679,17 +679,8 @@ static void bcm2835_spi_set_cs(struct sp +@@ -677,17 +677,8 @@ static void bcm2835_spi_set_cs(struct sp bcm2835_wr(bs, BCM2835_SPI_CS, cs); } @@ -27,7 +27,7 @@ Subject: [PATCH 014/454] spi-bcm2835: Remove unused code /* * sanity checking the native-chipselects */ -@@ -707,58 +698,6 @@ static int bcm2835_spi_setup(struct spi_ +@@ -705,58 +696,6 @@ static int bcm2835_spi_setup(struct spi_ return -EINVAL; } diff --git a/target/linux/brcm2708/patches-4.14/950-0131-drm-vc4-Fix-pitch-setup-for-T-format-scanout.patch b/target/linux/brcm2708/patches-4.14/950-0131-drm-vc4-Fix-pitch-setup-for-T-format-scanout.patch index 4aa018f5419..1b140f0a600 100644 --- a/target/linux/brcm2708/patches-4.14/950-0131-drm-vc4-Fix-pitch-setup-for-T-format-scanout.patch +++ b/target/linux/brcm2708/patches-4.14/950-0131-drm-vc4-Fix-pitch-setup-for-T-format-scanout.patch @@ -16,7 +16,7 @@ Fixes: 98830d91da08 ("drm/vc4: Add T-format scanout support.") --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -546,14 +546,24 @@ static int vc4_plane_mode_set(struct drm +@@ -547,14 +547,24 @@ static int vc4_plane_mode_set(struct drm tiling = SCALER_CTL0_TILING_LINEAR; pitch0 = VC4_SET_FIELD(fb->pitches[0], SCALER_SRC_PITCH); break; diff --git a/target/linux/brcm2708/patches-4.14/950-0136-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/brcm2708/patches-4.14/950-0136-cgroup-Disable-cgroup-memory-by-default.patch index 9fb4b8180a0..6a1bda859ef 100644 --- a/target/linux/brcm2708/patches-4.14/950-0136-cgroup-Disable-cgroup-memory-by-default.patch +++ b/target/linux/brcm2708/patches-4.14/950-0136-cgroup-Disable-cgroup-memory-by-default.patch @@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c -@@ -5154,6 +5154,8 @@ int __init cgroup_init_early(void) +@@ -5159,6 +5159,8 @@ int __init cgroup_init_early(void) } static u16 cgroup_disable_mask __initdata; @@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell /** * cgroup_init - cgroup initialization -@@ -5192,6 +5194,12 @@ int __init cgroup_init(void) +@@ -5197,6 +5199,12 @@ int __init cgroup_init(void) mutex_unlock(&cgroup_mutex); @@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell for_each_subsys(ss, ssid) { if (ss->early_init) { struct cgroup_subsys_state *css = -@@ -5572,6 +5580,28 @@ static int __init cgroup_disable(char *s +@@ -5577,6 +5585,28 @@ static int __init cgroup_disable(char *s } __setup("cgroup_disable=", cgroup_disable); diff --git a/target/linux/brcm2708/patches-4.14/950-0170-lan78xx-Avoid-spurious-kevent-4-error.patch b/target/linux/brcm2708/patches-4.14/950-0170-lan78xx-Avoid-spurious-kevent-4-error.patch index 5731c1418f5..519590b8e5e 100644 --- a/target/linux/brcm2708/patches-4.14/950-0170-lan78xx-Avoid-spurious-kevent-4-error.patch +++ b/target/linux/brcm2708/patches-4.14/950-0170-lan78xx-Avoid-spurious-kevent-4-error.patch @@ -19,7 +19,7 @@ Signed-off-by: Phil Elwell --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2494,7 +2494,7 @@ static void lan78xx_init_stats(struct la +@@ -2498,7 +2498,7 @@ static void lan78xx_init_stats(struct la dev->stats.rollover_max.eee_tx_lpi_transitions = 0xFFFFFFFF; dev->stats.rollover_max.eee_tx_lpi_time = 0xFFFFFFFF; diff --git a/target/linux/brcm2708/patches-4.14/950-0174-drm-vc4-Add-the-DRM_IOCTL_VC4_GEM_MADVISE-ioctl.patch b/target/linux/brcm2708/patches-4.14/950-0174-drm-vc4-Add-the-DRM_IOCTL_VC4_GEM_MADVISE-ioctl.patch index 3d10eb11fb2..995c2c0db27 100644 --- a/target/linux/brcm2708/patches-4.14/950-0174-drm-vc4-Add-the-DRM_IOCTL_VC4_GEM_MADVISE-ioctl.patch +++ b/target/linux/brcm2708/patches-4.14/950-0174-drm-vc4-Add-the-DRM_IOCTL_VC4_GEM_MADVISE-ioctl.patch @@ -778,7 +778,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20171019125748.3152-1-boris. #include "vc4_drv.h" #include "vc4_regs.h" -@@ -776,21 +777,40 @@ static int vc4_prepare_fb(struct drm_pla +@@ -777,21 +778,40 @@ static int vc4_prepare_fb(struct drm_pla { struct vc4_bo *bo; struct dma_fence *fence; diff --git a/target/linux/brcm2708/patches-4.14/950-0181-drm-vc4-Use-.pixel_order-instead-of-custom-.flip_cbc.patch b/target/linux/brcm2708/patches-4.14/950-0181-drm-vc4-Use-.pixel_order-instead-of-custom-.flip_cbc.patch index 72b8d6564c8..9e067686b08 100644 --- a/target/linux/brcm2708/patches-4.14/950-0181-drm-vc4-Use-.pixel_order-instead-of-custom-.flip_cbc.patch +++ b/target/linux/brcm2708/patches-4.14/950-0181-drm-vc4-Use-.pixel_order-instead-of-custom-.flip_cbc.patch @@ -66,7 +66,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/563872b69c1e5df142cb15ebfca7 }, }; -@@ -624,15 +627,8 @@ static int vc4_plane_mode_set(struct drm +@@ -625,15 +628,8 @@ static int vc4_plane_mode_set(struct drm * The pointers may be any byte address. */ vc4_state->ptr0_offset = vc4_state->dlist_count; diff --git a/target/linux/brcm2708/patches-4.14/950-0251-lan78xx-Read-initial-EEE-status-from-DT.patch b/target/linux/brcm2708/patches-4.14/950-0251-lan78xx-Read-initial-EEE-status-from-DT.patch index 534ab6d9222..7cd9985e1e6 100644 --- a/target/linux/brcm2708/patches-4.14/950-0251-lan78xx-Read-initial-EEE-status-from-DT.patch +++ b/target/linux/brcm2708/patches-4.14/950-0251-lan78xx-Read-initial-EEE-status-from-DT.patch @@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2510,6 +2510,22 @@ static int lan78xx_open(struct net_devic +@@ -2514,6 +2514,22 @@ static int lan78xx_open(struct net_devic netif_dbg(dev, ifup, dev->net, "phy initialised successfully"); diff --git a/target/linux/brcm2708/patches-4.14/950-0265-net-lan78xx-Allow-for-VLAN-headers-in-timeout.patch b/target/linux/brcm2708/patches-4.14/950-0265-net-lan78xx-Allow-for-VLAN-headers-in-timeout.patch index 46f8938e042..5870fbd5798 100644 --- a/target/linux/brcm2708/patches-4.14/950-0265-net-lan78xx-Allow-for-VLAN-headers-in-timeout.patch +++ b/target/linux/brcm2708/patches-4.14/950-0265-net-lan78xx-Allow-for-VLAN-headers-in-timeout.patch @@ -26,7 +26,7 @@ Signed-off-by: Dave Stevenson netdev->mtu = new_mtu; -@@ -2483,7 +2483,8 @@ static int lan78xx_reset(struct lan78xx_ +@@ -2487,7 +2487,8 @@ static int lan78xx_reset(struct lan78xx_ buf |= FCT_TX_CTL_EN_; ret = lan78xx_write_reg(dev, FCT_TX_CTL, buf); diff --git a/target/linux/brcm2708/patches-4.14/950-0268-lan78xx-Move-enabling-of-EEE-into-PHY-init-code.patch b/target/linux/brcm2708/patches-4.14/950-0268-lan78xx-Move-enabling-of-EEE-into-PHY-init-code.patch index b0b75c18fdf..6231485c098 100644 --- a/target/linux/brcm2708/patches-4.14/950-0268-lan78xx-Move-enabling-of-EEE-into-PHY-init-code.patch +++ b/target/linux/brcm2708/patches-4.14/950-0268-lan78xx-Move-enabling-of-EEE-into-PHY-init-code.patch @@ -39,7 +39,7 @@ Signed-off-by: Phil Elwell /* Set LED modes: * led: 0=link/activity 1=link1000/activity * 2=link100/activity 3=link10/activity -@@ -2536,22 +2552,6 @@ static int lan78xx_open(struct net_devic +@@ -2540,22 +2556,6 @@ static int lan78xx_open(struct net_devic netif_dbg(dev, ifup, dev->net, "phy initialised successfully"); diff --git a/target/linux/brcm2708/patches-4.14/950-0269-net-lan78xx-Request-s-w-csum-check-on-VLAN-tagged-pa.patch b/target/linux/brcm2708/patches-4.14/950-0269-net-lan78xx-Request-s-w-csum-check-on-VLAN-tagged-pa.patch index a95b82daf9b..db9a1f5a333 100644 --- a/target/linux/brcm2708/patches-4.14/950-0269-net-lan78xx-Request-s-w-csum-check-on-VLAN-tagged-pa.patch +++ b/target/linux/brcm2708/patches-4.14/950-0269-net-lan78xx-Request-s-w-csum-check-on-VLAN-tagged-pa.patch @@ -24,7 +24,7 @@ Signed-off-by: Dave Stevenson --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2952,8 +2952,12 @@ static void lan78xx_rx_csum_offload(stru +@@ -2956,8 +2956,12 @@ static void lan78xx_rx_csum_offload(stru struct sk_buff *skb, u32 rx_cmd_a, u32 rx_cmd_b) { diff --git a/target/linux/brcm2708/patches-4.14/950-0270-net-lan78xx-Add-support-for-VLAN-filtering.patch b/target/linux/brcm2708/patches-4.14/950-0270-net-lan78xx-Add-support-for-VLAN-filtering.patch index b3ffe3e79b1..89ecbedfa38 100644 --- a/target/linux/brcm2708/patches-4.14/950-0270-net-lan78xx-Add-support-for-VLAN-filtering.patch +++ b/target/linux/brcm2708/patches-4.14/950-0270-net-lan78xx-Add-support-for-VLAN-filtering.patch @@ -15,7 +15,7 @@ Signed-off-by: Dave Stevenson --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2275,7 +2275,7 @@ static int lan78xx_set_features(struct n +@@ -2279,7 +2279,7 @@ static int lan78xx_set_features(struct n pdata->rfe_ctl &= ~(RFE_CTL_ICMP_COE_ | RFE_CTL_IGMP_COE_); } @@ -24,7 +24,7 @@ Signed-off-by: Dave Stevenson pdata->rfe_ctl |= RFE_CTL_VLAN_FILTER_; else pdata->rfe_ctl &= ~RFE_CTL_VLAN_FILTER_; -@@ -2888,6 +2888,9 @@ static int lan78xx_bind(struct lan78xx_n +@@ -2892,6 +2892,9 @@ static int lan78xx_bind(struct lan78xx_n if (DEFAULT_TSO_CSUM_ENABLE) dev->net->features |= NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_SG; diff --git a/target/linux/brcm2708/patches-4.14/950-0271-net-lan78xx-Add-support-for-VLAN-tag-stripping.patch b/target/linux/brcm2708/patches-4.14/950-0271-net-lan78xx-Add-support-for-VLAN-tag-stripping.patch index e1e5500cbc4..0ae1bf5e3e8 100644 --- a/target/linux/brcm2708/patches-4.14/950-0271-net-lan78xx-Add-support-for-VLAN-tag-stripping.patch +++ b/target/linux/brcm2708/patches-4.14/950-0271-net-lan78xx-Add-support-for-VLAN-tag-stripping.patch @@ -24,7 +24,7 @@ Signed-off-by: Dave Stevenson #define TX_OVERHEAD (8) #define RXW_PADDING 2 -@@ -2275,6 +2276,11 @@ static int lan78xx_set_features(struct n +@@ -2279,6 +2280,11 @@ static int lan78xx_set_features(struct n pdata->rfe_ctl &= ~(RFE_CTL_ICMP_COE_ | RFE_CTL_IGMP_COE_); } @@ -36,7 +36,7 @@ Signed-off-by: Dave Stevenson if (features & NETIF_F_HW_VLAN_CTAG_FILTER) pdata->rfe_ctl |= RFE_CTL_VLAN_FILTER_; else -@@ -2888,6 +2894,9 @@ static int lan78xx_bind(struct lan78xx_n +@@ -2892,6 +2898,9 @@ static int lan78xx_bind(struct lan78xx_n if (DEFAULT_TSO_CSUM_ENABLE) dev->net->features |= NETIF_F_TSO | NETIF_F_TSO6 | NETIF_F_SG; @@ -46,7 +46,7 @@ Signed-off-by: Dave Stevenson if (DEFAULT_VLAN_FILTER_ENABLE) dev->net->features |= NETIF_F_HW_VLAN_CTAG_FILTER; -@@ -2968,6 +2977,16 @@ static void lan78xx_rx_csum_offload(stru +@@ -2972,6 +2981,16 @@ static void lan78xx_rx_csum_offload(stru } } @@ -63,7 +63,7 @@ Signed-off-by: Dave Stevenson static void lan78xx_skb_return(struct lan78xx_net *dev, struct sk_buff *skb) { int status; -@@ -3032,6 +3051,8 @@ static int lan78xx_rx(struct lan78xx_net +@@ -3036,6 +3055,8 @@ static int lan78xx_rx(struct lan78xx_net if (skb->len == size) { lan78xx_rx_csum_offload(dev, skb, rx_cmd_a, rx_cmd_b); @@ -72,7 +72,7 @@ Signed-off-by: Dave Stevenson skb_trim(skb, skb->len - 4); /* remove fcs */ skb->truesize = size + sizeof(struct sk_buff); -@@ -3050,6 +3071,7 @@ static int lan78xx_rx(struct lan78xx_net +@@ -3054,6 +3075,7 @@ static int lan78xx_rx(struct lan78xx_net skb_set_tail_pointer(skb2, size); lan78xx_rx_csum_offload(dev, skb2, rx_cmd_a, rx_cmd_b); diff --git a/target/linux/brcm2708/patches-4.14/950-0272-net-lan78xx-Reduce-s-w-csum-check-on-VLANs.patch b/target/linux/brcm2708/patches-4.14/950-0272-net-lan78xx-Reduce-s-w-csum-check-on-VLANs.patch index 3582c532fc4..099f702f005 100644 --- a/target/linux/brcm2708/patches-4.14/950-0272-net-lan78xx-Reduce-s-w-csum-check-on-VLANs.patch +++ b/target/linux/brcm2708/patches-4.14/950-0272-net-lan78xx-Reduce-s-w-csum-check-on-VLANs.patch @@ -16,7 +16,7 @@ Signed-off-by: Dave Stevenson --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2964,12 +2964,13 @@ static void lan78xx_rx_csum_offload(stru +@@ -2968,12 +2968,13 @@ static void lan78xx_rx_csum_offload(stru struct sk_buff *skb, u32 rx_cmd_a, u32 rx_cmd_b) { diff --git a/target/linux/brcm2708/patches-4.14/950-0314-net-lan78xx-Disable-TCP-Segmentation-Offload-TSO.patch b/target/linux/brcm2708/patches-4.14/950-0314-net-lan78xx-Disable-TCP-Segmentation-Offload-TSO.patch index 11b1b22abec..8bc1d5a951e 100644 --- a/target/linux/brcm2708/patches-4.14/950-0314-net-lan78xx-Disable-TCP-Segmentation-Offload-TSO.patch +++ b/target/linux/brcm2708/patches-4.14/950-0314-net-lan78xx-Disable-TCP-Segmentation-Offload-TSO.patch @@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data) { u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL); -@@ -2891,8 +2900,14 @@ static int lan78xx_bind(struct lan78xx_n +@@ -2895,8 +2904,14 @@ static int lan78xx_bind(struct lan78xx_n if (DEFAULT_RX_CSUM_ENABLE) dev->net->features |= NETIF_F_RXCSUM; diff --git a/target/linux/brcm2708/patches-4.14/950-0344-drm-vc4-Set-premultiplied-for-alpha-formats.patch b/target/linux/brcm2708/patches-4.14/950-0344-drm-vc4-Set-premultiplied-for-alpha-formats.patch index cfbdfab0d76..9abfa146195 100644 --- a/target/linux/brcm2708/patches-4.14/950-0344-drm-vc4-Set-premultiplied-for-alpha-formats.patch +++ b/target/linux/brcm2708/patches-4.14/950-0344-drm-vc4-Set-premultiplied-for-alpha-formats.patch @@ -22,7 +22,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/1520556817-97297-2-git-send- --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -618,13 +618,14 @@ static int vc4_plane_mode_set(struct drm +@@ -619,13 +619,14 @@ static int vc4_plane_mode_set(struct drm SCALER_POS1_SCL_HEIGHT)); } diff --git a/target/linux/brcm2708/patches-4.14/950-0345-drm-vc4-Check-if-plane-requires-background-fill.patch b/target/linux/brcm2708/patches-4.14/950-0345-drm-vc4-Check-if-plane-requires-background-fill.patch index 709af646b41..6eaae48b0f9 100644 --- a/target/linux/brcm2708/patches-4.14/950-0345-drm-vc4-Check-if-plane-requires-background-fill.patch +++ b/target/linux/brcm2708/patches-4.14/950-0345-drm-vc4-Check-if-plane-requires-background-fill.patch @@ -36,7 +36,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/1520556817-97297-3-git-send- }; static inline struct vc4_plane_state * -@@ -521,6 +527,7 @@ static int vc4_plane_mode_set(struct drm +@@ -522,6 +528,7 @@ static int vc4_plane_mode_set(struct drm u32 ctl0_offset = vc4_state->dlist_count; const struct hvs_format *format = vc4_get_hvs_format(fb->format->format); int num_planes = drm_format_num_planes(format->drm); @@ -44,7 +44,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/1520556817-97297-3-git-send- u32 scl0, scl1, pitch0; u32 lbm_size, tiling; unsigned long irqflags; -@@ -704,6 +711,16 @@ static int vc4_plane_mode_set(struct drm +@@ -705,6 +712,16 @@ static int vc4_plane_mode_set(struct drm vc4_state->dlist[ctl0_offset] |= VC4_SET_FIELD(vc4_state->dlist_count, SCALER_CTL0_SIZE); diff --git a/target/linux/brcm2708/patches-4.14/950-0354-drm-vc4-Advertise-supported-modifiers-for-planes.patch b/target/linux/brcm2708/patches-4.14/950-0354-drm-vc4-Advertise-supported-modifiers-for-planes.patch index 5bbb0576e63..95d24024931 100644 --- a/target/linux/brcm2708/patches-4.14/950-0354-drm-vc4-Advertise-supported-modifiers-for-planes.patch +++ b/target/linux/brcm2708/patches-4.14/950-0354-drm-vc4-Advertise-supported-modifiers-for-planes.patch @@ -33,7 +33,7 @@ Link: https://patchwork.freedesktop.org/patch/170828/ --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -867,6 +867,32 @@ out: +@@ -868,6 +868,32 @@ out: ctx); } @@ -66,7 +66,7 @@ Link: https://patchwork.freedesktop.org/patch/170828/ static const struct drm_plane_funcs vc4_plane_funcs = { .update_plane = vc4_update_plane, .disable_plane = drm_atomic_helper_disable_plane, -@@ -875,6 +901,7 @@ static const struct drm_plane_funcs vc4_ +@@ -876,6 +902,7 @@ static const struct drm_plane_funcs vc4_ .reset = vc4_plane_reset, .atomic_duplicate_state = vc4_plane_duplicate_state, .atomic_destroy_state = vc4_plane_destroy_state, @@ -74,7 +74,7 @@ Link: https://patchwork.freedesktop.org/patch/170828/ }; struct drm_plane *vc4_plane_init(struct drm_device *dev, -@@ -886,6 +913,11 @@ struct drm_plane *vc4_plane_init(struct +@@ -887,6 +914,11 @@ struct drm_plane *vc4_plane_init(struct u32 num_formats = 0; int ret = 0; unsigned i; @@ -86,7 +86,7 @@ Link: https://patchwork.freedesktop.org/patch/170828/ vc4_plane = devm_kzalloc(dev->dev, sizeof(*vc4_plane), GFP_KERNEL); -@@ -906,7 +938,7 @@ struct drm_plane *vc4_plane_init(struct +@@ -907,7 +939,7 @@ struct drm_plane *vc4_plane_init(struct ret = drm_universal_plane_init(dev, plane, 0, &vc4_plane_funcs, formats, num_formats, diff --git a/target/linux/brcm2708/patches-4.14/950-0356-drm-vc4-Add-missing-formats-to-vc4_format_mod_suppor.patch b/target/linux/brcm2708/patches-4.14/950-0356-drm-vc4-Add-missing-formats-to-vc4_format_mod_suppor.patch index bf9f9e26539..4bed2925a78 100644 --- a/target/linux/brcm2708/patches-4.14/950-0356-drm-vc4-Add-missing-formats-to-vc4_format_mod_suppor.patch +++ b/target/linux/brcm2708/patches-4.14/950-0356-drm-vc4-Add-missing-formats-to-vc4_format_mod_suppor.patch @@ -21,7 +21,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-2-eric@ --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -887,7 +887,9 @@ static bool vc4_format_mod_supported(str +@@ -888,7 +888,9 @@ static bool vc4_format_mod_supported(str case DRM_FORMAT_YUV420: case DRM_FORMAT_YVU420: case DRM_FORMAT_NV12: diff --git a/target/linux/brcm2708/patches-4.14/950-0357-drm-vc4-Add-support-for-SAND-modifier.patch b/target/linux/brcm2708/patches-4.14/950-0357-drm-vc4-Add-support-for-SAND-modifier.patch index 3b94f268b05..fbe7261601f 100644 --- a/target/linux/brcm2708/patches-4.14/950-0357-drm-vc4-Add-support-for-SAND-modifier.patch +++ b/target/linux/brcm2708/patches-4.14/950-0357-drm-vc4-Add-support-for-SAND-modifier.patch @@ -32,7 +32,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ --- a/drivers/gpu/drm/vc4/vc4_plane.c +++ b/drivers/gpu/drm/vc4/vc4_plane.c -@@ -466,11 +466,13 @@ static int vc4_plane_mode_set(struct drm +@@ -467,11 +467,13 @@ static int vc4_plane_mode_set(struct drm struct drm_framebuffer *fb = state->fb; u32 ctl0_offset = vc4_state->dlist_count; const struct hvs_format *format = vc4_get_hvs_format(fb->format->format); @@ -46,7 +46,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ int ret, i; ret = vc4_plane_setup_clipping_and_scaling(state); -@@ -510,7 +512,7 @@ static int vc4_plane_mode_set(struct drm +@@ -511,7 +513,7 @@ static int vc4_plane_mode_set(struct drm scl1 = vc4_get_scl_field(state, 0); } @@ -55,7 +55,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ case DRM_FORMAT_MOD_LINEAR: tiling = SCALER_CTL0_TILING_LINEAR; pitch0 = VC4_SET_FIELD(fb->pitches[0], SCALER_SRC_PITCH); -@@ -533,6 +535,49 @@ static int vc4_plane_mode_set(struct drm +@@ -534,6 +536,49 @@ static int vc4_plane_mode_set(struct drm break; } @@ -105,7 +105,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ default: DRM_DEBUG_KMS("Unsupported FB tiling flag 0x%16llx", (long long)fb->modifier); -@@ -543,7 +588,7 @@ static int vc4_plane_mode_set(struct drm +@@ -544,7 +589,7 @@ static int vc4_plane_mode_set(struct drm vc4_dlist_write(vc4_state, SCALER_CTL0_VALID | (format->pixel_order << SCALER_CTL0_ORDER_SHIFT) | @@ -114,7 +114,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ VC4_SET_FIELD(tiling, SCALER_CTL0_TILING) | (vc4_state->is_unity ? SCALER_CTL0_UNITY : 0) | VC4_SET_FIELD(scl0, SCALER_CTL0_SCL0) | -@@ -597,8 +642,13 @@ static int vc4_plane_mode_set(struct drm +@@ -598,8 +643,13 @@ static int vc4_plane_mode_set(struct drm /* Pitch word 1/2 */ for (i = 1; i < num_planes; i++) { @@ -130,7 +130,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ } /* Colorspace conversion words */ -@@ -881,13 +931,30 @@ static bool vc4_format_mod_supported(str +@@ -882,13 +932,30 @@ static bool vc4_format_mod_supported(str case DRM_FORMAT_BGR565: case DRM_FORMAT_ARGB1555: case DRM_FORMAT_XRGB1555: @@ -164,7 +164,7 @@ Link: https://patchwork.freedesktop.org/patch/msgid/20180316220435.31416-3-eric@ case DRM_FORMAT_NV16: case DRM_FORMAT_NV61: default: -@@ -917,6 +984,9 @@ struct drm_plane *vc4_plane_init(struct +@@ -918,6 +985,9 @@ struct drm_plane *vc4_plane_init(struct unsigned i; static const uint64_t modifiers[] = { DRM_FORMAT_MOD_BROADCOM_VC4_T_TILED, diff --git a/target/linux/brcm2708/patches-4.14/950-0359-net-lan78xx-fix-rx-handling-before-first-packet-is-s.patch b/target/linux/brcm2708/patches-4.14/950-0359-net-lan78xx-fix-rx-handling-before-first-packet-is-s.patch index 1acda73f3af..886a3d35681 100644 --- a/target/linux/brcm2708/patches-4.14/950-0359-net-lan78xx-fix-rx-handling-before-first-packet-is-s.patch +++ b/target/linux/brcm2708/patches-4.14/950-0359-net-lan78xx-fix-rx-handling-before-first-packet-is-s.patch @@ -19,7 +19,7 @@ Signed-off-by: Stefan Wahren --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2585,6 +2585,8 @@ static int lan78xx_open(struct net_devic +@@ -2589,6 +2589,8 @@ static int lan78xx_open(struct net_devic dev->link_on = false; diff --git a/target/linux/brcm2708/patches-4.14/950-0360-lan78xx-Fix-link-status-notifications.patch b/target/linux/brcm2708/patches-4.14/950-0360-lan78xx-Fix-link-status-notifications.patch index c7b1c3e5ed8..b6f050b6b80 100644 --- a/target/linux/brcm2708/patches-4.14/950-0360-lan78xx-Fix-link-status-notifications.patch +++ b/target/linux/brcm2708/patches-4.14/950-0360-lan78xx-Fix-link-status-notifications.patch @@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2585,8 +2585,6 @@ static int lan78xx_open(struct net_devic +@@ -2589,8 +2589,6 @@ static int lan78xx_open(struct net_devic dev->link_on = false; diff --git a/target/linux/brcm2708/patches-4.14/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch b/target/linux/brcm2708/patches-4.14/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch deleted file mode 100644 index f4c433978dc..00000000000 --- a/target/linux/brcm2708/patches-4.14/950-0415-qmi_wwan-apply-SET_DTR-quirk-to-the-SIMCOM-shared-de.patch +++ /dev/null @@ -1,45 +0,0 @@ -From d0b55a012bbf2ffe4307f2632165dc1f8cdc351f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Bj=C3=B8rn=20Mork?= -Date: Fri, 25 May 2018 15:00:20 +0200 -Subject: [PATCH 415/454] qmi_wwan: apply SET_DTR quirk to the SIMCOM shared - device ID -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -commit 102cd909635612c0be784a519651954a7924c786 upstream. - -SIMCOM are reusing a single device ID for many (all of their?) -different modems, based on different chipsets and firmwares. Newer -Qualcomm chipset generations require setting DTR to wake the QMI -function. The SIM7600E modem is using such a chipset, making it -fail to work with this driver despite the device ID match. - -Fix by unconditionally enabling the SET_DTR quirk for all SIMCOM -modems using this specific device ID. This is similar to what -we already have done for another case of device IDs recycled over -multiple chipset generations: 14cf4a771b30 ("drivers: net: usb: -qmi_wwan: add QMI_QUIRK_SET_DTR for Telit PID 0x1201") - -Initial testing on an older SIM7100 modem shows no immediate side -effects. - -Reported-by: Sebastian Sjoholm -Cc: Reinhard Speyerer -Signed-off-by: Bjørn Mork -Signed-off-by: David S. Miller ---- - drivers/net/usb/qmi_wwan.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/usb/qmi_wwan.c -+++ b/drivers/net/usb/qmi_wwan.c -@@ -1250,7 +1250,7 @@ static const struct usb_device_id produc - {QMI_FIXED_INTF(0x03f0, 0x4e1d, 8)}, /* HP lt4111 LTE/EV-DO/HSPA+ Gobi 4G Module */ - {QMI_FIXED_INTF(0x03f0, 0x9d1d, 1)}, /* HP lt4120 Snapdragon X5 LTE */ - {QMI_FIXED_INTF(0x22de, 0x9061, 3)}, /* WeTelecom WPD-600N */ -- {QMI_FIXED_INTF(0x1e0e, 0x9001, 5)}, /* SIMCom 7230E */ -+ {QMI_QUIRK_SET_DTR(0x1e0e, 0x9001, 5)}, /* SIMCom 7100E, 7230E, 7600E ++ */ - {QMI_QUIRK_SET_DTR(0x2c7c, 0x0125, 4)}, /* Quectel EC25, EC20 R2.0 Mini PCIe */ - {QMI_QUIRK_SET_DTR(0x2c7c, 0x0121, 4)}, /* Quectel EC21 Mini PCIe */ - {QMI_QUIRK_SET_DTR(0x2c7c, 0x0191, 4)}, /* Quectel EG91 */ diff --git a/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch b/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch index 1821616b9d0..08972f121f7 100644 --- a/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch +++ b/target/linux/brcm2708/patches-4.14/950-0454-lan78xx-Debounce-link-events-to-minimize-poll-storm.patch @@ -28,7 +28,7 @@ See: https://github.com/raspberrypi/linux/issues/2447 static int lan78xx_read_reg(struct lan78xx_net *dev, u32 index, u32 *data) { u32 *buf = kmalloc(sizeof(u32), GFP_KERNEL); -@@ -3707,7 +3712,12 @@ static int lan78xx_probe(struct usb_inte +@@ -3711,7 +3716,12 @@ static int lan78xx_probe(struct usb_inte dev->pipe_intr = usb_rcvintpipe(dev->udev, dev->ep_intr->desc.bEndpointAddress & USB_ENDPOINT_NUMBER_MASK); diff --git a/target/linux/brcm2708/patches-4.14/961-lan78xx-enable-LED.patch b/target/linux/brcm2708/patches-4.14/961-lan78xx-enable-LED.patch index ae09e083370..9fa63e332e9 100644 --- a/target/linux/brcm2708/patches-4.14/961-lan78xx-enable-LED.patch +++ b/target/linux/brcm2708/patches-4.14/961-lan78xx-enable-LED.patch @@ -1,6 +1,6 @@ --- a/drivers/net/usb/lan78xx.c +++ b/drivers/net/usb/lan78xx.c -@@ -2458,6 +2458,15 @@ static int lan78xx_reset(struct lan78xx_ +@@ -2462,6 +2462,15 @@ static int lan78xx_reset(struct lan78xx_ ret = lan78xx_read_reg(dev, HW_CFG, &buf); buf |= HW_CFG_MEF_; diff --git a/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch b/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch index 96917f82a63..3de77b1afd8 100644 --- a/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch +++ b/target/linux/brcm47xx/patches-4.14/159-cpu_fixes.patch @@ -1,6 +1,6 @@ --- a/arch/mips/include/asm/r4kcache.h +++ b/arch/mips/include/asm/r4kcache.h -@@ -25,6 +25,38 @@ +@@ -26,6 +26,38 @@ extern void (*r4k_blast_dcache)(void); extern void (*r4k_blast_icache)(void); @@ -39,7 +39,7 @@ /* * This macro return a properly sign-extended address suitable as base address * for indexed cache operations. Two issues here: -@@ -98,6 +130,7 @@ static inline void flush_icache_line_ind +@@ -99,6 +131,7 @@ static inline void flush_icache_line_ind static inline void flush_dcache_line_indexed(unsigned long addr) { __dflush_prologue @@ -47,7 +47,7 @@ cache_op(Index_Writeback_Inv_D, addr); __dflush_epilogue } -@@ -125,6 +158,7 @@ static inline void flush_icache_line(uns +@@ -126,6 +159,7 @@ static inline void flush_icache_line(uns static inline void flush_dcache_line(unsigned long addr) { __dflush_prologue @@ -55,7 +55,7 @@ cache_op(Hit_Writeback_Inv_D, addr); __dflush_epilogue } -@@ -132,6 +166,7 @@ static inline void flush_dcache_line(uns +@@ -133,6 +167,7 @@ static inline void flush_dcache_line(uns static inline void invalidate_dcache_line(unsigned long addr) { __dflush_prologue @@ -63,7 +63,7 @@ cache_op(Hit_Invalidate_D, addr); __dflush_epilogue } -@@ -205,6 +240,7 @@ static inline int protected_flush_icache +@@ -206,6 +241,7 @@ static inline int protected_flush_icache #ifdef CONFIG_EVA return protected_cachee_op(Hit_Invalidate_I, addr); #else @@ -71,7 +71,7 @@ return protected_cache_op(Hit_Invalidate_I, addr); #endif } -@@ -218,6 +254,7 @@ static inline int protected_flush_icache +@@ -219,6 +255,7 @@ static inline int protected_flush_icache */ static inline int protected_writeback_dcache_line(unsigned long addr) { @@ -79,7 +79,7 @@ #ifdef CONFIG_EVA return protected_cachee_op(Hit_Writeback_Inv_D, addr); #else -@@ -575,8 +612,51 @@ static inline void invalidate_tcache_pag +@@ -576,8 +613,51 @@ static inline void invalidate_tcache_pag : "r" (base), \ "i" (op)); @@ -132,7 +132,7 @@ static inline void extra##blast_##pfx##cache##lsize(void) \ { \ unsigned long start = INDEX_BASE; \ -@@ -588,6 +668,7 @@ static inline void extra##blast_##pfx##c +@@ -589,6 +669,7 @@ static inline void extra##blast_##pfx##c \ __##pfx##flush_prologue \ \ @@ -140,7 +140,7 @@ for (ws = 0; ws < ws_end; ws += ws_inc) \ for (addr = start; addr < end; addr += lsize * 32) \ cache##lsize##_unroll32(addr|ws, indexop); \ -@@ -602,6 +683,7 @@ static inline void extra##blast_##pfx##c +@@ -603,6 +684,7 @@ static inline void extra##blast_##pfx##c \ __##pfx##flush_prologue \ \ @@ -148,7 +148,7 @@ do { \ cache##lsize##_unroll32(start, hitop); \ start += lsize * 32; \ -@@ -620,6 +702,8 @@ static inline void extra##blast_##pfx##c +@@ -621,6 +703,8 @@ static inline void extra##blast_##pfx##c current_cpu_data.desc.waybit; \ unsigned long ws, addr; \ \ @@ -157,7 +157,7 @@ __##pfx##flush_prologue \ \ for (ws = 0; ws < ws_end; ws += ws_inc) \ -@@ -629,26 +713,26 @@ static inline void extra##blast_##pfx##c +@@ -630,26 +714,26 @@ static inline void extra##blast_##pfx##c __##pfx##flush_epilogue \ } @@ -204,7 +204,7 @@ #define __BUILD_BLAST_USER_CACHE(pfx, desc, indexop, hitop, lsize) \ static inline void blast_##pfx##cache##lsize##_user_page(unsigned long page) \ -@@ -677,53 +761,23 @@ __BUILD_BLAST_USER_CACHE(d, dcache, Inde +@@ -678,53 +762,23 @@ __BUILD_BLAST_USER_CACHE(d, dcache, Inde __BUILD_BLAST_USER_CACHE(i, icache, Index_Invalidate_I, Hit_Invalidate_I, 64) /* build blast_xxx_range, protected_blast_xxx_range */ @@ -266,7 +266,7 @@ } \ \ __##pfx##flush_epilogue \ -@@ -731,8 +785,8 @@ static inline void prot##extra##blast_## +@@ -732,8 +786,8 @@ static inline void prot##extra##blast_## #ifndef CONFIG_EVA @@ -277,7 +277,7 @@ #else -@@ -769,14 +823,14 @@ __BUILD_PROT_BLAST_CACHE_RANGE(d, dcache +@@ -770,15 +824,15 @@ __BUILD_PROT_BLAST_CACHE_RANGE(d, dcache __BUILD_PROT_BLAST_CACHE_RANGE(i, icache, Hit_Invalidate_I) #endif @@ -298,7 +298,8 @@ +__BUILD_BLAST_CACHE_RANGE(inv_d, dcache, Hit_Invalidate_D, , , , BCM4710_DUMMY_RREG();) +__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD, , , , ) - #endif /* _ASM_R4KCACHE_H */ + /* Currently, this is very specific to Loongson-3 */ + #define __BUILD_BLAST_CACHE_NODE(pfx, desc, indexop, hitop, lsize) \ --- a/arch/mips/include/asm/stackframe.h +++ b/arch/mips/include/asm/stackframe.h @@ -428,6 +428,10 @@ @@ -396,7 +397,7 @@ if (dc_lsize == 0) r4k_blast_dcache = (void *)cache_noop; else if (dc_lsize == 16) -@@ -957,6 +969,8 @@ static void local_r4k_flush_cache_sigtra +@@ -986,6 +998,8 @@ static void local_r4k_flush_cache_sigtra } R4600_HIT_CACHEOP_WAR_IMPL; @@ -405,7 +406,7 @@ if (!cpu_has_ic_fills_f_dc) { if (dc_lsize) vaddr ? flush_dcache_line(addr & ~(dc_lsize - 1)) -@@ -1851,6 +1865,17 @@ static void coherency_setup(void) +@@ -1880,6 +1894,17 @@ static void coherency_setup(void) * silly idea of putting something else there ... */ switch (current_cpu_type()) { @@ -423,7 +424,7 @@ case CPU_R4000PC: case CPU_R4000SC: case CPU_R4000MC: -@@ -1897,6 +1922,15 @@ void r4k_cache_init(void) +@@ -1926,6 +1951,15 @@ void r4k_cache_init(void) extern void build_copy_page(void); struct cpuinfo_mips *c = ¤t_cpu_data; @@ -439,7 +440,7 @@ probe_pcache(); probe_vcache(); setup_scache(); -@@ -1974,7 +2008,15 @@ void r4k_cache_init(void) +@@ -2004,7 +2038,15 @@ void r4k_cache_init(void) */ local_r4k___flush_cache_all(NULL); diff --git a/target/linux/brcm47xx/patches-4.14/160-kmap_coherent.patch b/target/linux/brcm47xx/patches-4.14/160-kmap_coherent.patch index 60484ddcb9e..5cdb545e553 100644 --- a/target/linux/brcm47xx/patches-4.14/160-kmap_coherent.patch +++ b/target/linux/brcm47xx/patches-4.14/160-kmap_coherent.patch @@ -29,7 +29,7 @@ This fixes OpenWrt ticket #1485: https://dev.openwrt.org/ticket/1485 #endif /* __ASM_MACH_BCM47XX_CPU_FEATURE_OVERRIDES_H */ --- a/arch/mips/mm/c-r4k.c +++ b/arch/mips/mm/c-r4k.c -@@ -672,7 +672,7 @@ static inline void local_r4k_flush_cache +@@ -694,7 +694,7 @@ static inline void local_r4k_flush_cache map_coherent = (cpu_has_dc_aliases && page_mapcount(page) && !Page_dcache_dirty(page)); @@ -38,7 +38,7 @@ This fixes OpenWrt ticket #1485: https://dev.openwrt.org/ticket/1485 vaddr = kmap_coherent(page, addr); else vaddr = kmap_atomic(page); -@@ -697,7 +697,7 @@ static inline void local_r4k_flush_cache +@@ -719,7 +719,7 @@ static inline void local_r4k_flush_cache } if (vaddr) { diff --git a/target/linux/cns3xxx/patches-4.14/060-pcie_abort.patch b/target/linux/cns3xxx/patches-4.14/060-pcie_abort.patch index b5f0350571c..87b1526c3a3 100644 --- a/target/linux/cns3xxx/patches-4.14/060-pcie_abort.patch +++ b/target/linux/cns3xxx/patches-4.14/060-pcie_abort.patch @@ -82,7 +82,7 @@ { @@ -95,6 +168,11 @@ static int cns3xxx_pci_read_config(struc - ret = pci_generic_config_read32(bus, devfn, where, size, val); + ret = pci_generic_config_read(bus, devfn, where, size, val); + if (check_master_abort(bus, devfn, where)) { + printk(KERN_ERR "pci error: %04d:%02x:%02x.%02x %02x(%d)= master_abort on read\n", pci_domain_nr(bus), bus->number, PCI_SLOT(devfn), PCI_FUNC(devfn), where, size); diff --git a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch index 067481ba943..5639497926c 100644 --- a/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch +++ b/target/linux/generic/backport-4.14/025-tcp-allow-drivers-to-tweak-TSQ-logic.patch @@ -44,7 +44,7 @@ Cc: Kir Kolyshkin * @sk_lingertime: %SO_LINGER l_linger setting * @sk_backlog: always used with the per-socket spinlock held * @sk_callback_lock: used with the callbacks in the end of this struct -@@ -445,6 +446,8 @@ struct sock { +@@ -446,6 +447,8 @@ struct sock { sk_type : 16; #define SK_PROTOCOL_MAX U8_MAX u16 sk_gso_max_segs; @@ -55,7 +55,7 @@ Cc: Kir Kolyshkin rwlock_t sk_callback_lock; --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -2739,6 +2739,7 @@ void sock_init_data(struct socket *sock, +@@ -2742,6 +2742,7 @@ void sock_init_data(struct socket *sock, sk->sk_max_pacing_rate = ~0U; sk->sk_pacing_rate = ~0U; diff --git a/target/linux/generic/backport-4.14/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch b/target/linux/generic/backport-4.14/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch deleted file mode 100644 index f428285a64a..00000000000 --- a/target/linux/generic/backport-4.14/096-mips-math-emu-Write-protect-delay-slot-emulation-pages.patch +++ /dev/null @@ -1,119 +0,0 @@ -From adcc81f148d733b7e8e641300c5590a2cdc13bf3 Mon Sep 17 00:00:00 2001 -From: Paul Burton -Date: Thu, 20 Dec 2018 17:45:43 +0000 -Subject: MIPS: math-emu: Write-protect delay slot emulation pages - -Mapping the delay slot emulation page as both writeable & executable -presents a security risk, in that if an exploit can write to & jump into -the page then it can be used as an easy way to execute arbitrary code. - -Prevent this by mapping the page read-only for userland, and using -access_process_vm() with the FOLL_FORCE flag to write to it from -mips_dsemul(). - -This will likely be less efficient due to copy_to_user_page() performing -cache maintenance on a whole page, rather than a single line as in the -previous use of flush_cache_sigtramp(). However this delay slot -emulation code ought not to be running in any performance critical paths -anyway so this isn't really a problem, and we can probably do better in -copy_to_user_page() anyway in future. - -A major advantage of this approach is that the fix is small & simple to -backport to stable kernels. - -Reported-by: Andy Lutomirski -Signed-off-by: Paul Burton -Fixes: 432c6bacbd0c ("MIPS: Use per-mm page to execute branch delay slot instructions") -Cc: stable@vger.kernel.org # v4.8+ -Cc: linux-mips@vger.kernel.org -Cc: linux-kernel@vger.kernel.org -Cc: Rich Felker -Cc: David Daney ---- - arch/mips/kernel/vdso.c | 4 ++-- - arch/mips/math-emu/dsemul.c | 38 ++++++++++++++++++++------------------ - 2 files changed, 22 insertions(+), 20 deletions(-) - ---- a/arch/mips/kernel/vdso.c -+++ b/arch/mips/kernel/vdso.c -@@ -126,8 +126,8 @@ int arch_setup_additional_pages(struct l - - /* Map delay slot emulation page */ - base = mmap_region(NULL, STACK_TOP, PAGE_SIZE, -- VM_READ|VM_WRITE|VM_EXEC| -- VM_MAYREAD|VM_MAYWRITE|VM_MAYEXEC, -+ VM_READ | VM_EXEC | -+ VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC, - 0, NULL); - if (IS_ERR_VALUE(base)) { - ret = base; ---- a/arch/mips/math-emu/dsemul.c -+++ b/arch/mips/math-emu/dsemul.c -@@ -214,8 +214,9 @@ int mips_dsemul(struct pt_regs *regs, mi - { - int isa16 = get_isa16_mode(regs->cp0_epc); - mips_instruction break_math; -- struct emuframe __user *fr; -- int err, fr_idx; -+ unsigned long fr_uaddr; -+ struct emuframe fr; -+ int fr_idx, ret; - - /* NOP is easy */ - if (ir == 0) -@@ -250,27 +251,31 @@ int mips_dsemul(struct pt_regs *regs, mi - fr_idx = alloc_emuframe(); - if (fr_idx == BD_EMUFRAME_NONE) - return SIGBUS; -- fr = &dsemul_page()[fr_idx]; - - /* Retrieve the appropriately encoded break instruction */ - break_math = BREAK_MATH(isa16); - - /* Write the instructions to the frame */ - if (isa16) { -- err = __put_user(ir >> 16, -- (u16 __user *)(&fr->emul)); -- err |= __put_user(ir & 0xffff, -- (u16 __user *)((long)(&fr->emul) + 2)); -- err |= __put_user(break_math >> 16, -- (u16 __user *)(&fr->badinst)); -- err |= __put_user(break_math & 0xffff, -- (u16 __user *)((long)(&fr->badinst) + 2)); -+ union mips_instruction _emul = { -+ .halfword = { ir >> 16, ir } -+ }; -+ union mips_instruction _badinst = { -+ .halfword = { break_math >> 16, break_math } -+ }; -+ -+ fr.emul = _emul.word; -+ fr.badinst = _badinst.word; - } else { -- err = __put_user(ir, &fr->emul); -- err |= __put_user(break_math, &fr->badinst); -+ fr.emul = ir; -+ fr.badinst = break_math; - } - -- if (unlikely(err)) { -+ /* Write the frame to user memory */ -+ fr_uaddr = (unsigned long)&dsemul_page()[fr_idx]; -+ ret = access_process_vm(current, fr_uaddr, &fr, sizeof(fr), -+ FOLL_FORCE | FOLL_WRITE); -+ if (unlikely(ret != sizeof(fr))) { - MIPS_FPU_EMU_INC_STATS(errors); - free_emuframe(fr_idx, current->mm); - return SIGBUS; -@@ -282,10 +287,7 @@ int mips_dsemul(struct pt_regs *regs, mi - atomic_set(¤t->thread.bd_emu_frame, fr_idx); - - /* Change user register context to execute the frame */ -- regs->cp0_epc = (unsigned long)&fr->emul | isa16; -- -- /* Ensure the icache observes our newly written frame */ -- flush_cache_sigtramp((unsigned long)&fr->emul); -+ regs->cp0_epc = fr_uaddr | isa16; - - return 0; - } diff --git a/target/linux/generic/backport-4.14/101-arm-cns3xxx-use-actual-size-reads-for-PCIe.patch b/target/linux/generic/backport-4.14/101-arm-cns3xxx-use-actual-size-reads-for-PCIe.patch index 44ca8337057..2b3384391a7 100644 --- a/target/linux/generic/backport-4.14/101-arm-cns3xxx-use-actual-size-reads-for-PCIe.patch +++ b/target/linux/generic/backport-4.14/101-arm-cns3xxx-use-actual-size-reads-for-PCIe.patch @@ -33,11 +33,9 @@ CC: stable@vger.kernel.org # v4.0+ arch/arm/mach-cns3xxx/pcie.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/arch/arm/mach-cns3xxx/pcie.c b/arch/arm/mach-cns3xxx/pcie.c -index 5e11ad3164e0..95a11d5b3587 100644 --- a/arch/arm/mach-cns3xxx/pcie.c +++ b/arch/arm/mach-cns3xxx/pcie.c -@@ -93,7 +93,7 @@ static int cns3xxx_pci_read_config(struct pci_bus *bus, unsigned int devfn, +@@ -93,7 +93,7 @@ static int cns3xxx_pci_read_config(struc u32 mask = (0x1ull << (size * 8)) - 1; int shift = (where % 4) * 8; @@ -46,6 +44,3 @@ index 5e11ad3164e0..95a11d5b3587 100644 if (ret == PCIBIOS_SUCCESSFUL && !bus->number && !devfn && (where & 0xffc) == PCI_CLASS_REVISION) --- -2.17.1 - diff --git a/target/linux/generic/hack-4.14/207-disable-modorder.patch b/target/linux/generic/hack-4.14/207-disable-modorder.patch index 0619dcaa7bf..b45a8e3bc2c 100644 --- a/target/linux/generic/hack-4.14/207-disable-modorder.patch +++ b/target/linux/generic/hack-4.14/207-disable-modorder.patch @@ -15,7 +15,7 @@ Signed-off-by: Felix Fietkau --- a/Makefile +++ b/Makefile -@@ -1237,7 +1237,6 @@ all: modules +@@ -1240,7 +1240,6 @@ all: modules PHONY += modules modules: $(vmlinux-dirs) $(if $(KBUILD_BUILTIN),vmlinux) modules.builtin @@ -23,7 +23,7 @@ Signed-off-by: Felix Fietkau @$(kecho) ' Building modules, stage 2.'; $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modpost -@@ -1266,7 +1265,6 @@ _modinst_: +@@ -1269,7 +1268,6 @@ _modinst_: rm -f $(MODLIB)/build ; \ ln -s $(CURDIR) $(MODLIB)/build ; \ fi diff --git a/target/linux/generic/hack-4.14/300-MIPS-r4k_cache-use-more-efficient-cache-blast.patch b/target/linux/generic/hack-4.14/300-MIPS-r4k_cache-use-more-efficient-cache-blast.patch index 860a7e03c56..c07ccf9474e 100644 --- a/target/linux/generic/hack-4.14/300-MIPS-r4k_cache-use-more-efficient-cache-blast.patch +++ b/target/linux/generic/hack-4.14/300-MIPS-r4k_cache-use-more-efficient-cache-blast.patch @@ -10,7 +10,7 @@ Signed-off-by: Felix Fietkau --- --- a/arch/mips/include/asm/r4kcache.h +++ b/arch/mips/include/asm/r4kcache.h -@@ -682,16 +682,48 @@ static inline void prot##extra##blast_## +@@ -683,16 +683,48 @@ static inline void prot##extra##blast_## unsigned long end) \ { \ unsigned long lsize = cpu_##desc##_line_size(); \ diff --git a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch index 0453112a1fd..24d3cdffa33 100644 --- a/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch +++ b/target/linux/generic/hack-4.14/702-phy_add_aneg_done_function.patch @@ -15,7 +15,7 @@ --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1458,6 +1458,9 @@ int genphy_update_link(struct phy_device +@@ -1455,6 +1455,9 @@ int genphy_update_link(struct phy_device { int status; diff --git a/target/linux/generic/hack-4.14/902-debloat_proc.patch b/target/linux/generic/hack-4.14/902-debloat_proc.patch index 98788cd2650..092f0aa81bc 100644 --- a/target/linux/generic/hack-4.14/902-debloat_proc.patch +++ b/target/linux/generic/hack-4.14/902-debloat_proc.patch @@ -327,7 +327,7 @@ Signed-off-by: Felix Fietkau --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -3378,6 +3378,8 @@ static __net_initdata struct pernet_oper +@@ -3381,6 +3381,8 @@ static __net_initdata struct pernet_oper static int __init proto_init(void) { diff --git a/target/linux/generic/pending-4.14/203-kallsyms_uncompressed.patch b/target/linux/generic/pending-4.14/203-kallsyms_uncompressed.patch index fa68f307d4e..5f66c3d5012 100644 --- a/target/linux/generic/pending-4.14/203-kallsyms_uncompressed.patch +++ b/target/linux/generic/pending-4.14/203-kallsyms_uncompressed.patch @@ -65,7 +65,7 @@ Signed-off-by: Felix Fietkau static int absolute_percpu = 0; static char symbol_prefix_char = '\0'; static int base_relative = 0; -@@ -457,6 +458,9 @@ static void write_src(void) +@@ -458,6 +459,9 @@ static void write_src(void) free(markers); @@ -75,7 +75,7 @@ Signed-off-by: Felix Fietkau output_label("kallsyms_token_table"); off = 0; for (i = 0; i < 256; i++) { -@@ -515,6 +519,9 @@ static void *find_token(unsigned char *s +@@ -516,6 +520,9 @@ static void *find_token(unsigned char *s { int i; @@ -85,7 +85,7 @@ Signed-off-by: Felix Fietkau for (i = 0; i < len - 1; i++) { if (str[i] == token[0] && str[i+1] == token[1]) return &str[i]; -@@ -587,6 +594,9 @@ static void optimize_result(void) +@@ -588,6 +595,9 @@ static void optimize_result(void) { int i, best; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau /* using the '\0' symbol last allows compress_symbols to use standard * fast string functions */ for (i = 255; i >= 0; i--) { -@@ -775,6 +785,8 @@ int main(int argc, char **argv) +@@ -776,6 +786,8 @@ int main(int argc, char **argv) symbol_prefix_char = *p; } else if (strcmp(argv[i], "--base-relative") == 0) base_relative = 1; diff --git a/target/linux/generic/pending-4.14/470-mtd-spi-nor-support-limiting-4K-sectors-support-base.patch b/target/linux/generic/pending-4.14/470-mtd-spi-nor-support-limiting-4K-sectors-support-base.patch index 231f9c21a4e..0f4ea32688b 100644 --- a/target/linux/generic/pending-4.14/470-mtd-spi-nor-support-limiting-4K-sectors-support-base.patch +++ b/target/linux/generic/pending-4.14/470-mtd-spi-nor-support-limiting-4K-sectors-support-base.patch @@ -36,7 +36,7 @@ Signed-off-by: Felix Fietkau + config SPI_ATMEL_QUADSPI tristate "Atmel Quad SPI Controller" - depends on ARCH_AT91 || (ARM && COMPILE_TEST) + depends on ARCH_AT91 || (ARM && COMPILE_TEST && !ARCH_EBSA110) --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c @@ -2561,10 +2561,12 @@ static int spi_nor_select_erase(struct s diff --git a/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch b/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch deleted file mode 100644 index 6cbaf28e81f..00000000000 --- a/target/linux/generic/pending-4.14/510-f2fs-fix-sanity_check_raw_super-on-big-endian-machines.patch +++ /dev/null @@ -1,51 +0,0 @@ -From: Martin Blumenstingl -To: linux-f2fs-devel@lists.sourceforge.net, yuchao0@huawei.com, - jaegeuk@kernel.org -Subject: [PATCH v2 1/1] f2fs: fix validation of the block count in - sanity_check_raw_super -Date: Sat, 22 Dec 2018 11:22:26 +0100 -Message-Id: <20181222102226.10050-2-martin.blumenstingl@googlemail.com> - -Treat "block_count" from struct f2fs_super_block as 64-bit little endian -value in sanity_check_raw_super() because struct f2fs_super_block -declares "block_count" as "__le64". - -This fixes a bug where the superblock validation fails on big endian -devices with the following error: - F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0) - F2FS-fs (sda1): Can't find valid F2FS filesystem in 1th superblock - F2FS-fs (sda1): Wrong segment_count / block_count (61439 > 0) - F2FS-fs (sda1): Can't find valid F2FS filesystem in 2th superblock -As result of this the partition cannot be mounted. - -With this patch applied the superblock validation works fine and the -partition can be mounted again: - F2FS-fs (sda1): Mounted with checkpoint version = 7c84 - -My little endian x86-64 hardware was able to mount the partition without -this fix. -To confirm that mounting f2fs filesystems works on big endian machines -again I tested this on a 32-bit MIPS big endian (lantiq) device. - -Fixes: 0cfe75c5b01199 ("f2fs: enhance sanity_check_raw_super() to avoid potential overflows") -Cc: stable@vger.kernel.org -Signed-off-by: Martin Blumenstingl -Reviewed-by: Chao Yu ---- - ---- a/fs/f2fs/super.c -+++ b/fs/f2fs/super.c -@@ -1897,10 +1897,10 @@ static int sanity_check_raw_super(struct - return 1; - } - -- if (segment_count > (le32_to_cpu(raw_super->block_count) >> 9)) { -+ if (segment_count > (le64_to_cpu(raw_super->block_count) >> 9)) { - f2fs_msg(sb, KERN_INFO, -- "Wrong segment_count / block_count (%u > %u)", -- segment_count, le32_to_cpu(raw_super->block_count)); -+ "Wrong segment_count / block_count (%u > %llu)", -+ segment_count, le64_to_cpu(raw_super->block_count)); - return 1; - } - diff --git a/target/linux/generic/pending-4.14/630-packet_socket_type.patch b/target/linux/generic/pending-4.14/630-packet_socket_type.patch index d55d678549f..e8eae3b7ff8 100644 --- a/target/linux/generic/pending-4.14/630-packet_socket_type.patch +++ b/target/linux/generic/pending-4.14/630-packet_socket_type.patch @@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -3265,6 +3267,7 @@ static int packet_create(struct net *net +@@ -3269,6 +3271,7 @@ static int packet_create(struct net *net mutex_init(&po->pg_vec_lock); po->rollover = NULL; po->prot_hook.func = packet_rcv; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau if (sock->type == SOCK_PACKET) po->prot_hook.func = packet_rcv_spkt; -@@ -3878,6 +3881,16 @@ packet_setsockopt(struct socket *sock, i +@@ -3882,6 +3885,16 @@ packet_setsockopt(struct socket *sock, i po->xmit = val ? packet_direct_xmit : dev_queue_xmit; return 0; } @@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau default: return -ENOPROTOOPT; } -@@ -3930,6 +3943,13 @@ static int packet_getsockopt(struct sock +@@ -3934,6 +3947,13 @@ static int packet_getsockopt(struct sock case PACKET_VNET_HDR: val = po->has_vnet_hdr; break; diff --git a/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch b/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch index 7c60d7e7999..89e6646c572 100644 --- a/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch +++ b/target/linux/generic/pending-4.14/666-Add-support-for-MAP-E-FMRs-mesh-mode.patch @@ -292,7 +292,7 @@ Signed-off-by: Steven Barth __skb_tunnel_rx(skb, tunnel->dev, tunnel->net); err = dscp_ecn_decapsulate(tunnel, ipv6h, skb); -@@ -962,6 +1101,7 @@ static void init_tel_txopt(struct ipv6_t +@@ -963,6 +1102,7 @@ static void init_tel_txopt(struct ipv6_t opt->ops.opt_nflen = 8; } @@ -300,7 +300,7 @@ Signed-off-by: Steven Barth /** * ip6_tnl_addr_conflict - compare packet addresses to tunnel's own * @t: the outgoing tunnel device -@@ -1305,6 +1445,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str +@@ -1306,6 +1446,7 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str { struct ip6_tnl *t = netdev_priv(dev); struct ipv6hdr *ipv6h; @@ -308,7 +308,7 @@ Signed-off-by: Steven Barth int encap_limit = -1; __u16 offset; struct flowi6 fl6; -@@ -1371,6 +1512,18 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str +@@ -1372,6 +1513,18 @@ ip6ip6_tnl_xmit(struct sk_buff *skb, str fl6.flowi6_uid = sock_net_uid(dev_net(dev), NULL); @@ -327,7 +327,7 @@ Signed-off-by: Steven Barth if (iptunnel_handle_offloads(skb, SKB_GSO_IPXIP6)) return -1; -@@ -1499,6 +1652,14 @@ ip6_tnl_change(struct ip6_tnl *t, const +@@ -1500,6 +1653,14 @@ ip6_tnl_change(struct ip6_tnl *t, const t->parms.link = p->link; t->parms.proto = p->proto; t->parms.fwmark = p->fwmark; @@ -342,7 +342,7 @@ Signed-off-by: Steven Barth dst_cache_reset(&t->dst_cache); ip6_tnl_link_config(t); return 0; -@@ -1537,6 +1698,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_ +@@ -1538,6 +1699,7 @@ ip6_tnl_parm_from_user(struct __ip6_tnl_ p->flowinfo = u->flowinfo; p->link = u->link; p->proto = u->proto; @@ -350,7 +350,7 @@ Signed-off-by: Steven Barth memcpy(p->name, u->name, sizeof(u->name)); } -@@ -1923,6 +2085,15 @@ static int ip6_tnl_validate(struct nlatt +@@ -1924,6 +2086,15 @@ static int ip6_tnl_validate(struct nlatt return 0; } @@ -366,7 +366,7 @@ Signed-off-by: Steven Barth static void ip6_tnl_netlink_parms(struct nlattr *data[], struct __ip6_tnl_parm *parms) { -@@ -1960,6 +2131,46 @@ static void ip6_tnl_netlink_parms(struct +@@ -1961,6 +2132,46 @@ static void ip6_tnl_netlink_parms(struct if (data[IFLA_IPTUN_FWMARK]) parms->fwmark = nla_get_u32(data[IFLA_IPTUN_FWMARK]); @@ -413,7 +413,7 @@ Signed-off-by: Steven Barth } static bool ip6_tnl_netlink_encap_parms(struct nlattr *data[], -@@ -2075,6 +2286,12 @@ static void ip6_tnl_dellink(struct net_d +@@ -2076,6 +2287,12 @@ static void ip6_tnl_dellink(struct net_d static size_t ip6_tnl_get_size(const struct net_device *dev) { @@ -426,7 +426,7 @@ Signed-off-by: Steven Barth return /* IFLA_IPTUN_LINK */ nla_total_size(4) + -@@ -2104,6 +2321,24 @@ static size_t ip6_tnl_get_size(const str +@@ -2105,6 +2322,24 @@ static size_t ip6_tnl_get_size(const str nla_total_size(0) + /* IFLA_IPTUN_FWMARK */ nla_total_size(4) + @@ -451,7 +451,7 @@ Signed-off-by: Steven Barth 0; } -@@ -2111,6 +2346,9 @@ static int ip6_tnl_fill_info(struct sk_b +@@ -2112,6 +2347,9 @@ static int ip6_tnl_fill_info(struct sk_b { struct ip6_tnl *tunnel = netdev_priv(dev); struct __ip6_tnl_parm *parm = &tunnel->parms; @@ -461,7 +461,7 @@ Signed-off-by: Steven Barth if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) || nla_put_in6_addr(skb, IFLA_IPTUN_LOCAL, &parm->laddr) || -@@ -2120,9 +2358,27 @@ static int ip6_tnl_fill_info(struct sk_b +@@ -2121,9 +2359,27 @@ static int ip6_tnl_fill_info(struct sk_b nla_put_be32(skb, IFLA_IPTUN_FLOWINFO, parm->flowinfo) || nla_put_u32(skb, IFLA_IPTUN_FLAGS, parm->flags) || nla_put_u8(skb, IFLA_IPTUN_PROTO, parm->proto) || @@ -490,7 +490,7 @@ Signed-off-by: Steven Barth if (nla_put_u16(skb, IFLA_IPTUN_ENCAP_TYPE, tunnel->encap.type) || nla_put_be16(skb, IFLA_IPTUN_ENCAP_SPORT, tunnel->encap.sport) || nla_put_be16(skb, IFLA_IPTUN_ENCAP_DPORT, tunnel->encap.dport) || -@@ -2162,6 +2418,7 @@ static const struct nla_policy ip6_tnl_p +@@ -2163,6 +2419,7 @@ static const struct nla_policy ip6_tnl_p [IFLA_IPTUN_ENCAP_DPORT] = { .type = NLA_U16 }, [IFLA_IPTUN_COLLECT_METADATA] = { .type = NLA_FLAG }, [IFLA_IPTUN_FWMARK] = { .type = NLA_U32 }, diff --git a/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch b/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch index 1397580382d..36aaccbdb3e 100644 --- a/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch +++ b/target/linux/generic/pending-4.14/670-ipv6-allow-rejecting-with-source-address-failed-policy.patch @@ -76,7 +76,7 @@ Signed-off-by: Jonas Gorski static inline const char *rtn_type(char *buf, size_t len, unsigned int t) --- a/net/ipv4/ipmr.c +++ b/net/ipv4/ipmr.c -@@ -161,6 +161,7 @@ static int ipmr_rule_action(struct fib_r +@@ -163,6 +163,7 @@ static int ipmr_rule_action(struct fib_r case FR_ACT_UNREACHABLE: return -ENETUNREACH; case FR_ACT_PROHIBIT: @@ -99,7 +99,7 @@ Signed-off-by: Jonas Gorski tb_id = fib_rule_get_table(rule, arg); --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c -@@ -168,6 +168,8 @@ static int ip6mr_rule_action(struct fib_ +@@ -170,6 +170,8 @@ static int ip6mr_rule_action(struct fib_ return -ENETUNREACH; case FR_ACT_PROHIBIT: return -EACCES; diff --git a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch index 11436a21667..119b53c6d71 100644 --- a/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch +++ b/target/linux/generic/pending-4.14/703-phy-add-detach-callback-to-struct-phy_driver.patch @@ -11,7 +11,7 @@ Signed-off-by: Gabor Juhos --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1102,6 +1102,9 @@ void phy_detach(struct phy_device *phyde +@@ -1099,6 +1099,9 @@ void phy_detach(struct phy_device *phyde struct module *ndev_owner = dev->dev.parent->driver->owner; struct mii_bus *bus; diff --git a/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch b/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch index 9d9391d6cda..1e0f9a9b2a9 100644 --- a/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch +++ b/target/linux/mediatek/patches-4.14/0052-net-phy-add-FC.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin --- a/drivers/net/phy/phy_device.c +++ b/drivers/net/phy/phy_device.c -@@ -1940,7 +1940,7 @@ static struct phy_driver genphy_driver = +@@ -1937,7 +1937,7 @@ static struct phy_driver genphy_driver = .config_init = genphy_config_init, .features = PHY_GBIT_FEATURES | SUPPORTED_MII | SUPPORTED_AUI | SUPPORTED_FIBRE | diff --git a/target/linux/mpc85xx/patches-4.14/100-powerpc-85xx-tl-wdr4900-v1-support.patch b/target/linux/mpc85xx/patches-4.14/100-powerpc-85xx-tl-wdr4900-v1-support.patch index 8b627fb7293..0fbb16f3bd3 100644 --- a/target/linux/mpc85xx/patches-4.14/100-powerpc-85xx-tl-wdr4900-v1-support.patch +++ b/target/linux/mpc85xx/patches-4.14/100-powerpc-85xx-tl-wdr4900-v1-support.patch @@ -17,7 +17,7 @@ Signed-off-by: Gabor Juhos --- a/arch/powerpc/boot/Makefile +++ b/arch/powerpc/boot/Makefile -@@ -151,6 +151,7 @@ src-plat-$(CONFIG_PPC_PSERIES) += pserie +@@ -156,6 +156,7 @@ src-plat-$(CONFIG_PPC_PSERIES) += pserie src-plat-$(CONFIG_PPC_POWERNV) += pseries-head.S src-plat-$(CONFIG_PPC_IBM_CELL_BLADE) += pseries-head.S src-plat-$(CONFIG_MVME7100) += motload-head.S mvme7100.c @@ -25,7 +25,7 @@ Signed-off-by: Gabor Juhos src-wlib := $(sort $(src-wlib-y)) src-plat := $(sort $(src-plat-y)) -@@ -330,7 +331,7 @@ image-$(CONFIG_TQM8555) += cuImage.tqm +@@ -335,7 +336,7 @@ image-$(CONFIG_TQM8555) += cuImage.tqm image-$(CONFIG_TQM8560) += cuImage.tqm8560 image-$(CONFIG_SBC8548) += cuImage.sbc8548 image-$(CONFIG_KSI8560) += cuImage.ksi8560 -- 2.30.2