kernel: update kernel 4.4 to 4.4.74

Refresh patches.
Compile-tested on ar71xx.
Runtime-tested on ar71xx.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
openwrt-18.06
Stijn Tintel 2017-06-27 07:41:10 +02:00
parent 69649a1b45
commit f80963d4d1
22 changed files with 54 additions and 54 deletions

View File

@ -3,11 +3,11 @@
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .43
LINUX_VERSION-4.4 = .71
LINUX_VERSION-4.4 = .74
LINUX_VERSION-4.9 = .34
LINUX_KERNEL_HASH-3.18.43 = 1236e8123a6ce537d5029232560966feed054ae31776fe8481dd7d18cdd5492c
LINUX_KERNEL_HASH-4.4.71 = 44cd5532d6df32197fd0f89e6f8c542fcfb76b52155a4d3a609ef4898522e6ab
LINUX_KERNEL_HASH-4.4.74 = c319ad6150d112bd4f8c9d1427868eeafd3ab461becf9457f814e4ba7c57808e
LINUX_KERNEL_HASH-4.9.34 = 13d159d1b1fa41ea19fcc2defe09d7532f312ee0b8279b8e12c961d8b02a4546
ifdef KERNEL_PATCHVER

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -140,6 +140,8 @@ static void ar934x_wmac_setup(void)
@@ -139,6 +139,8 @@ static void ar934x_wmac_setup(void)
ath79_wmac_data.is_clk_25mhz = false;
else
ath79_wmac_data.is_clk_25mhz = true;

View File

@ -16,7 +16,7 @@
static struct ath9k_platform_data ath79_wmac_data;
static struct resource ath79_wmac_resources[] = {
@@ -162,7 +164,7 @@ static void qca955x_wmac_setup(void)
@@ -161,7 +163,7 @@ static void qca955x_wmac_setup(void)
ath79_wmac_data.is_clk_25mhz = true;
}
@ -25,7 +25,7 @@
{
if (soc_is_ar913x())
ar913x_wmac_setup();
@@ -179,5 +181,10 @@ void __init ath79_register_wmac(u8 *cal_
@@ -178,5 +180,10 @@ void __init ath79_register_wmac(u8 *cal_
memcpy(ath79_wmac_data.eeprom_data, cal_data,
sizeof(ath79_wmac_data.eeprom_data));

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -191,3 +191,9 @@ void __init ath79_register_wmac(u8 *cal_
@@ -190,3 +190,9 @@ void __init ath79_register_wmac(u8 *cal_
platform_device_register(&ath79_wmac_device);
}

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -167,6 +167,149 @@ static void qca955x_wmac_setup(void)
@@ -166,6 +166,149 @@ static void qca955x_wmac_setup(void)
ath79_wmac_data.is_clk_25mhz = true;
}

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -310,6 +310,16 @@ bool __init ar93xx_wmac_read_mac_address
@@ -309,6 +309,16 @@ bool __init ar93xx_wmac_read_mac_address
return ret;
}

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -320,6 +320,11 @@ void __init ath79_wmac_disable_5ghz(void
@@ -319,6 +319,11 @@ void __init ath79_wmac_disable_5ghz(void
ath79_wmac_data.disable_5ghz = true;
}

View File

@ -12,7 +12,7 @@
#include "dev-wmac.h"
static u8 ath79_wmac_mac[ETH_ALEN];
@@ -325,6 +327,51 @@ void __init ath79_wmac_set_tx_gain_buffa
@@ -324,6 +326,51 @@ void __init ath79_wmac_set_tx_gain_buffa
ath79_wmac_data.tx_gain_buffalo = true;
}

View File

@ -229,7 +229,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
else
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -101,7 +101,7 @@ static int ar933x_wmac_reset(void)
@@ -100,7 +100,7 @@ static int ar933x_wmac_reset(void)
return -ETIMEDOUT;
}
@ -238,7 +238,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
{
return ath79_soc_rev;
}
@@ -126,7 +126,7 @@ static void __init ar933x_wmac_setup(voi
@@ -125,7 +125,7 @@ static void __init ar933x_wmac_setup(voi
ath79_wmac_data.is_clk_25mhz = true;
if (ath79_soc_rev == 1)
@ -247,7 +247,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
ath79_wmac_data.external_reset = ar933x_wmac_reset;
}
@@ -151,6 +151,26 @@ static void ar934x_wmac_setup(void)
@@ -150,6 +150,26 @@ static void ar934x_wmac_setup(void)
ath79_wmac_data.get_mac_revision = ar93xx_get_soc_revision;
}
@ -274,7 +274,7 @@ meaning of the bits CPUCLK_FROM_CPUPLL and DDRCLK_FROM_DDRPLL is reversed.
static void qca955x_wmac_setup(void)
{
u32 t;
@@ -380,6 +400,8 @@ void __init ath79_register_wmac(u8 *cal_
@@ -379,6 +399,8 @@ void __init ath79_register_wmac(u8 *cal_
ar933x_wmac_setup();
else if (soc_is_ar934x())
ar934x_wmac_setup();

View File

@ -219,7 +219,7 @@
}
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -201,6 +201,26 @@ static void qca955x_wmac_setup(void)
@@ -200,6 +200,26 @@ static void qca955x_wmac_setup(void)
#define AR93XX_OTP_READ_DATA \
(soc_is_ar934x() ? AR934X_OTP_READ_DATA : AR9300_OTP_READ_DATA)
@ -246,7 +246,7 @@
static bool __init
ar93xx_wmac_otp_read_word(void __iomem *base, int addr, u32 *data)
{
@@ -404,6 +424,8 @@ void __init ath79_register_wmac(u8 *cal_
@@ -403,6 +423,8 @@ void __init ath79_register_wmac(u8 *cal_
qca953x_wmac_setup();
else if (soc_is_qca955x())
qca955x_wmac_setup();

View File

@ -1,6 +1,6 @@
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -412,6 +412,11 @@ void __init ath79_wmac_set_ext_lna_gpio(
@@ -411,6 +411,11 @@ void __init ath79_wmac_set_ext_lna_gpio(
ar934x_set_ext_lna_gpio(chain, gpio);
}

View File

@ -32,7 +32,7 @@
*/
--- a/arch/mips/ath79/dev-wmac.c
+++ b/arch/mips/ath79/dev-wmac.c
@@ -171,6 +171,27 @@ static void qca953x_wmac_setup(void)
@@ -170,6 +170,27 @@ static void qca953x_wmac_setup(void)
ath79_wmac_data.get_mac_revision = ar93xx_get_soc_revision;
}
@ -60,7 +60,7 @@
static void qca955x_wmac_setup(void)
{
u32 t;
@@ -187,6 +208,8 @@ static void qca955x_wmac_setup(void)
@@ -186,6 +207,8 @@ static void qca955x_wmac_setup(void)
ath79_wmac_data.is_clk_25mhz = false;
else
ath79_wmac_data.is_clk_25mhz = true;

View File

@ -214,7 +214,7 @@
#include <linux/uaccess.h>
#include <linux/ipv6.h>
#include <linux/icmpv6.h>
@@ -781,10 +782,10 @@ static void tcp_v6_send_response(const s
@@ -786,10 +787,10 @@ static void tcp_v6_send_response(const s
topt = (__be32 *)(t1 + 1);
if (tsecr) {
@ -241,7 +241,7 @@
*/
--- a/net/ipv6/datagram.c
+++ b/net/ipv6/datagram.c
@@ -429,7 +429,7 @@ int ipv6_recv_error(struct sock *sk, str
@@ -433,7 +433,7 @@ int ipv6_recv_error(struct sock *sk, str
ipv6_iface_scope_id(&sin->sin6_addr,
IP6CB(skb)->iif);
} else {
@ -250,7 +250,7 @@
&sin->sin6_addr);
sin->sin6_scope_id = 0;
}
@@ -766,12 +766,12 @@ int ip6_datagram_send_ctl(struct net *ne
@@ -770,12 +770,12 @@ int ip6_datagram_send_ctl(struct net *ne
}
if (fl6->flowlabel&IPV6_FLOWINFO_MASK) {
@ -610,7 +610,7 @@
goto next_ht;
--- a/net/ipv6/ip6_offload.c
+++ b/net/ipv6/ip6_offload.c
@@ -223,7 +223,7 @@ static struct sk_buff **ipv6_gro_receive
@@ -225,7 +225,7 @@ static struct sk_buff **ipv6_gro_receive
continue;
iph2 = (struct ipv6hdr *)(p->data + off);
@ -711,7 +711,7 @@
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
@@ -799,17 +803,18 @@ static inline int ip6_default_np_autolab
@@ -804,17 +808,18 @@ static inline int ip6_default_np_autolab
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{

View File

@ -13,16 +13,16 @@ Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
--- a/drivers/net/phy/b53/b53_common.c
+++ b/drivers/net/phy/b53/b53_common.c
@@ -25,6 +25,7 @@
#include <linux/module.h>
#include <linux/switch.h>
@@ -27,6 +27,7 @@
#include <linux/of.h>
#include <linux/of_net.h>
#include <linux/platform_data/b53.h>
+#include <linux/of.h>
#include "b53_regs.h"
#include "b53_priv.h"
@@ -1383,6 +1384,28 @@ static int b53_switch_init(struct b53_de
sw_dev->cpu_port = 5;
@@ -1522,6 +1523,28 @@ static int b53_switch_init(struct b53_de
return ret;
}
+ /* Set correct CPU port */

View File

@ -75,7 +75,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -5326,7 +5326,7 @@ static void __init_refok alloc_node_mem_
@@ -5345,7 +5345,7 @@ static void __init_refok alloc_node_mem_
mem_map = NODE_DATA(0)->node_mem_map;
#if defined(CONFIG_HAVE_MEMBLOCK_NODE_MAP) || defined(CONFIG_FLATMEM)
if (page_to_pfn(mem_map) != pgdat->node_start_pfn)

View File

@ -121,7 +121,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
defect7374_enable_data_eps_zero(dev);
ep0_start(dev);
@@ -3063,7 +3063,7 @@ static void handle_stat0_irqs(struct net
@@ -3060,7 +3060,7 @@ static void handle_stat0_irqs(struct net
}
ep->stopped = 0;
dev->protocol_stall = 0;
@ -130,7 +130,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
if (ep->dev->quirks & PLX_2280)
tmp = BIT(FIFO_OVERFLOW) |
BIT(FIFO_UNDERFLOW);
@@ -3090,7 +3090,7 @@ static void handle_stat0_irqs(struct net
@@ -3087,7 +3087,7 @@ static void handle_stat0_irqs(struct net
cpu_to_le32s(&u.raw[0]);
cpu_to_le32s(&u.raw[1]);
@ -139,7 +139,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
defect7374_workaround(dev, u.r);
tmp = 0;
@@ -3173,7 +3173,7 @@ static void handle_stat0_irqs(struct net
@@ -3170,7 +3170,7 @@ static void handle_stat0_irqs(struct net
} else {
ep_vdbg(dev, "%s clear halt\n", e->ep.name);
clear_halt(e);
@ -148,7 +148,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
!list_empty(&e->queue) && e->td_dma)
restart_dma(e);
}
@@ -3195,7 +3195,7 @@ static void handle_stat0_irqs(struct net
@@ -3192,7 +3192,7 @@ static void handle_stat0_irqs(struct net
if (e->ep.name == ep0name)
goto do_stall;
set_halt(e);
@ -157,7 +157,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
abort_dma(e);
allow_status(ep);
ep_vdbg(dev, "%s set halt\n", ep->ep.name);
@@ -3234,7 +3234,7 @@ do_stall:
@@ -3231,7 +3231,7 @@ do_stall:
#undef w_length
next_endpoints:
@ -166,7 +166,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
u32 mask = (BIT(ENDPOINT_0_INTERRUPT) |
USB3380_IRQSTAT0_EP_INTR_MASK_IN |
USB3380_IRQSTAT0_EP_INTR_MASK_OUT);
@@ -3399,7 +3399,7 @@ __acquires(dev->lock)
@@ -3392,7 +3392,7 @@ static void handle_stat1_irqs(struct net
writel(tmp, &dma->dmastat);
/* dma sync*/
@ -175,7 +175,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
u32 r_dmacount = readl(&dma->dmacount);
if (!ep->is_in && (r_dmacount & 0x00FFFFFF) &&
(tmp & BIT(DMA_TRANSACTION_DONE_INTERRUPT)))
@@ -3468,7 +3468,7 @@ static irqreturn_t net2280_irq(int irq,
@@ -3461,7 +3461,7 @@ static irqreturn_t net2280_irq(int irq,
/* control requests and PIO */
handle_stat0_irqs(dev, readl(&dev->regs->irqstat0));
@ -184,7 +184,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
/* re-enable interrupt to trigger any possible new interrupt */
u32 pciirqenb1 = readl(&dev->regs->pciirqenb1);
writel(pciirqenb1 & 0x7FFFFFFF, &dev->regs->pciirqenb1);
@@ -3513,7 +3513,7 @@ static void net2280_remove(struct pci_de
@@ -3506,7 +3506,7 @@ static void net2280_remove(struct pci_de
}
if (dev->got_irq)
free_irq(pdev->irq, dev);
@ -193,7 +193,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
pci_disable_msi(pdev);
if (dev->regs)
iounmap(dev->regs);
@@ -3593,7 +3593,7 @@ static int net2280_probe(struct pci_dev
@@ -3586,7 +3586,7 @@ static int net2280_probe(struct pci_dev
dev->dep = (struct net2280_dep_regs __iomem *) (base + 0x0200);
dev->epregs = (struct net2280_ep_regs __iomem *) (base + 0x0300);
@ -202,7 +202,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
u32 fsmvalue;
u32 usbstat;
dev->usb_ext = (struct usb338x_usb_ext_regs __iomem *)
@@ -3637,7 +3637,7 @@ static int net2280_probe(struct pci_dev
@@ -3630,7 +3630,7 @@ static int net2280_probe(struct pci_dev
goto done;
}
@ -211,7 +211,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
if (pci_enable_msi(pdev))
ep_err(dev, "Failed to enable MSI mode\n");
@@ -3755,10 +3755,19 @@ static const struct pci_device_id pci_id
@@ -3748,10 +3748,19 @@ static const struct pci_device_id pci_id
.class = ((PCI_CLASS_SERIAL_USB << 8) | 0xfe),
.class_mask = ~0,
.vendor = PCI_VENDOR_ID_PLX,
@ -232,7 +232,7 @@ Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
},
{
.class = ((PCI_CLASS_SERIAL_USB << 8) | 0xfe),
@@ -3767,7 +3776,7 @@ static const struct pci_device_id pci_id
@@ -3760,7 +3769,7 @@ static const struct pci_device_id pci_id
.device = 0x3382,
.subvendor = PCI_ANY_ID,
.subdevice = PCI_ANY_ID,

View File

@ -1,6 +1,6 @@
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2180,7 +2180,7 @@ static inline int pskb_network_may_pull(
@@ -2177,7 +2177,7 @@ static inline int pskb_network_may_pull(
* NET_IP_ALIGN(2) + ethernet_header(14) + IP_header(20/40) + ports(8)
*/
#ifndef NET_SKB_PAD

View File

@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -4246,6 +4246,9 @@ static enum gro_result dev_gro_receive(s
@@ -4248,6 +4248,9 @@ static enum gro_result dev_gro_receive(s
enum gro_result ret;
int grow;
@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
if (!(skb->dev->features & NETIF_F_GRO))
goto normal;
@@ -5405,6 +5408,48 @@ static void __netdev_adjacent_dev_unlink
@@ -5404,6 +5407,48 @@ static void __netdev_adjacent_dev_unlink
&upper_dev->adj_list.lower);
}
@ -76,7 +76,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
static int __netdev_upper_dev_link(struct net_device *dev,
struct net_device *upper_dev, bool master,
void *private)
@@ -5476,6 +5521,7 @@ static int __netdev_upper_dev_link(struc
@@ -5475,6 +5520,7 @@ static int __netdev_upper_dev_link(struc
goto rollback_lower_mesh;
}
@ -84,7 +84,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
return 0;
@@ -5602,6 +5648,7 @@ void netdev_upper_dev_unlink(struct net_
@@ -5601,6 +5647,7 @@ void netdev_upper_dev_unlink(struct net_
list_for_each_entry(i, &upper_dev->all_adj_list.upper, list)
__netdev_adjacent_dev_unlink(dev, i->dev, i->ref_nr);
@ -92,7 +92,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev,
&changeupper_info.info);
}
@@ -6142,6 +6189,7 @@ int dev_set_mac_address(struct net_devic
@@ -6141,6 +6188,7 @@ int dev_set_mac_address(struct net_devic
if (err)
return err;
dev->addr_assign_type = NET_ADDR_SET;

View File

@ -41,7 +41,7 @@
*/
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -2211,6 +2211,10 @@ static inline int pskb_trim(struct sk_bu
@@ -2208,6 +2208,10 @@ static inline int pskb_trim(struct sk_bu
return (len < skb->len) ? __pskb_trim(skb, len) : 0;
}
@ -52,7 +52,7 @@
/**
* pskb_trim_unique - remove end from a paged unique (not cloned) buffer
* @skb: buffer to alter
@@ -2315,16 +2319,6 @@ static inline struct sk_buff *dev_alloc_
@@ -2312,16 +2316,6 @@ static inline struct sk_buff *dev_alloc_
}

View File

@ -31,7 +31,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
comment "MII PHY device drivers"
config AQUANTIA_PHY
@@ -205,6 +208,7 @@ config RTL8306_PHY
@@ -210,6 +213,7 @@ config RTL8306_PHY
config FIXED_PHY
tristate "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs"
depends on PHYLIB

View File

@ -19,7 +19,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -233,6 +233,16 @@ config MDIO_GPIO
@@ -238,6 +238,16 @@ config MDIO_GPIO
To compile this driver as a module, choose M here: the module
will be called mdio-gpio.

View File

@ -30,7 +30,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
--- a/drivers/net/phy/Kconfig
+++ b/drivers/net/phy/Kconfig
@@ -225,6 +225,11 @@ config FIXED_PHY
@@ -230,6 +230,11 @@ config FIXED_PHY
Currently tested with mpc866ads and mpc8349e-mitx.
@ -44,7 +44,7 @@ Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
help
--- a/drivers/net/phy/Makefile
+++ b/drivers/net/phy/Makefile
@@ -61,3 +61,4 @@ obj-$(CONFIG_MDIO_MOXART) += mdio-moxart
@@ -62,3 +62,4 @@ obj-$(CONFIG_MDIO_MOXART) += mdio-moxart
obj-$(CONFIG_MDIO_BCM_UNIMAC) += mdio-bcm-unimac.o
obj-$(CONFIG_MICROCHIP_PHY) += microchip.o
obj-$(CONFIG_MDIO_BCM_IPROC) += mdio-bcm-iproc.o