Refreshed all patches.
Removed upstreamed patches:
- 037-v4.18-0008-ARM-dts-BCM5301x-Fix-i2c-controller-interrupt-type.patch
Compile-tested on: cns3xxx, imx6
Runtime-tested on: cns3xxx, imx6
Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
LINUX_RELEASE?=1
LINUX_VERSION-3.18 = .119
-LINUX_VERSION-4.14 = .66
LINUX_VERSION-4.9 = .124
+LINUX_VERSION-4.14 = .67
LINUX_KERNEL_HASH-3.18.119 = 2bab623ed868b679eac224f62212cc285264061bedf1e32897f72e35aa26160d
-LINUX_KERNEL_HASH-4.14.66 = a38061ca4c864d11a72beb3dc5918a99f13372fe9ee35508d004fdfabd460413
LINUX_KERNEL_HASH-4.9.124 = 5ca6b0d48c8dd1265005169f1b97149a4e893668c0d8aa566a73c7663c8e4311
+LINUX_KERNEL_HASH-4.14.67 = 3f4b056dc27233a78f7a4a35ed6fdcfd0a9680ec40b611a898bb6c8b905070ba
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1)))))))
#define IP6_MF 0x0001
#define IP6_OFFSET 0xFFF8
-@@ -451,8 +451,8 @@ static inline void __ipv6_addr_set_half(
+@@ -444,8 +444,8 @@ static inline void __ipv6_addr_set_half(
}
#endif
#endif
}
static inline void ipv6_addr_set(struct in6_addr *addr,
-@@ -511,6 +511,8 @@ static inline bool ipv6_prefix_equal(con
+@@ -504,6 +504,8 @@ static inline bool ipv6_prefix_equal(con
const __be32 *a1 = addr1->s6_addr32;
const __be32 *a2 = addr2->s6_addr32;
unsigned int pdw, pbi;
/* check complete u32 in prefix */
pdw = prefixlen >> 5;
-@@ -519,7 +521,9 @@ static inline bool ipv6_prefix_equal(con
+@@ -512,7 +514,9 @@ static inline bool ipv6_prefix_equal(con
/* check incomplete u32 in prefix */
pbi = prefixlen & 0x1f;
return false;
return true;
-@@ -663,13 +667,13 @@ static inline void ipv6_addr_set_v4mappe
+@@ -656,13 +660,13 @@ static inline void ipv6_addr_set_v4mappe
*/
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
{
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
-@@ -838,17 +842,18 @@ static inline int ip6_default_np_autolab
+@@ -831,17 +835,18 @@ static inline int ip6_default_np_autolab
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
-Index: linux-4.14.66/arch/mips/pci/pci-ar71xx.c
-===================================================================
---- linux-4.14.66.orig/arch/mips/pci/pci-ar71xx.c
-+++ linux-4.14.66/arch/mips/pci/pci-ar71xx.c
+--- a/arch/mips/pci/pci-ar71xx.c
++++ b/arch/mips/pci/pci-ar71xx.c
@@ -54,11 +54,9 @@
struct ar71xx_pci_controller {
struct device_node *np;
Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
-Index: linux-4.14.65/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
-===================================================================
---- linux-4.14.65.orig/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
-+++ linux-4.14.65/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
+--- a/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
++++ b/arch/mips/include/asm/mach-ath79/ar71xx_regs.h
@@ -1229,6 +1229,10 @@
#define AR934X_ETH_CFG_RDV_DELAY BIT(16)
#define AR934X_ETH_CFG_RDV_DELAY_MASK 0x3
+#endif /* __ASM_MACH_ATH79_MANGLE_PORT_H */
--- a/arch/mips/pci/pci-ar71xx.c
+++ b/arch/mips/pci/pci-ar71xx.c
-@@ -73,6 +73,45 @@ static const u32 ar71xx_pci_read_mask[8]
+@@ -71,6 +71,45 @@ static const u32 ar71xx_pci_read_mask[8]
0, 0xff, 0xffff, 0, 0xffffffff, 0, 0, 0
};
static inline u32 ar71xx_pci_get_ble(int where, int size, int local)
{
u32 t;
-@@ -385,6 +424,9 @@ static int ar71xx_pci_probe(struct platf
+@@ -279,6 +318,9 @@ static int ar71xx_pci_probe(struct platf
register_pci_controller(&apc->pci_ctrl);
#define IP6_MF 0x0001
#define IP6_OFFSET 0xFFF8
-@@ -451,8 +451,8 @@ static inline void __ipv6_addr_set_half(
+@@ -444,8 +444,8 @@ static inline void __ipv6_addr_set_half(
}
#endif
#endif
}
static inline void ipv6_addr_set(struct in6_addr *addr,
-@@ -511,6 +511,8 @@ static inline bool ipv6_prefix_equal(con
+@@ -504,6 +504,8 @@ static inline bool ipv6_prefix_equal(con
const __be32 *a1 = addr1->s6_addr32;
const __be32 *a2 = addr2->s6_addr32;
unsigned int pdw, pbi;
/* check complete u32 in prefix */
pdw = prefixlen >> 5;
-@@ -519,7 +521,9 @@ static inline bool ipv6_prefix_equal(con
+@@ -512,7 +514,9 @@ static inline bool ipv6_prefix_equal(con
/* check incomplete u32 in prefix */
pbi = prefixlen & 0x1f;
return false;
return true;
-@@ -663,13 +667,13 @@ static inline void ipv6_addr_set_v4mappe
+@@ -656,13 +660,13 @@ static inline void ipv6_addr_set_v4mappe
*/
static inline int __ipv6_addr_diff32(const void *token1, const void *token2, int addrlen)
{
if (xb)
return i * 32 + 31 - __fls(ntohl(xb));
}
-@@ -838,17 +842,18 @@ static inline int ip6_default_np_autolab
+@@ -831,17 +835,18 @@ static inline int ip6_default_np_autolab
static inline void ip6_flow_hdr(struct ipv6hdr *hdr, unsigned int tclass,
__be32 flowlabel)
{
+++ /dev/null
-From a0a8338e905734518ab9b10b06e7fd0201228f8b Mon Sep 17 00:00:00 2001
-From: Florian Fainelli <f.fainelli@gmail.com>
-Date: Mon, 11 Jun 2018 15:53:40 -0700
-Subject: [PATCH] ARM: dts: BCM5301x: Fix i2c controller interrupt type
-
-The i2c controller should be using IRQ_TYPE_LEVEL_HIGH, fix that.
-
-Fixes: bb097e3e0045 ("ARM: dts: BCM5301X: Add I2C support to the DT")
-Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm/boot/dts/bcm5301x.dtsi | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/arch/arm/boot/dts/bcm5301x.dtsi
-+++ b/arch/arm/boot/dts/bcm5301x.dtsi
-@@ -365,7 +365,7 @@
- i2c0: i2c@18009000 {
- compatible = "brcm,iproc-i2c";
- reg = <0x18009000 0x50>;
-- interrupts = <GIC_SPI 121 IRQ_TYPE_NONE>;
-+ interrupts = <GIC_SPI 121 IRQ_TYPE_LEVEL_HIGH>;
- #address-cells = <1>;
- #size-cells = <0>;
- clock-frequency = <100000>;
--- a/drivers/pci/probe.c
+++ b/drivers/pci/probe.c
-@@ -2305,7 +2305,8 @@ static void pcie_write_mrrs(struct pci_d
+@@ -2309,7 +2309,8 @@ static void pcie_write_mrrs(struct pci_d
/* In the "safe" case, do not configure the MRRS. There appear to be
* issues with setting MRRS to 0 on a number of devices.
*/
* @phyif: PHY interface width
* @lock: Spinlock that protects all the driver data structures
* @priv: Stores a pointer to the struct usb_hcd
-@@ -913,6 +914,7 @@ struct dwc2_hsotg {
+@@ -914,6 +915,7 @@ struct dwc2_hsotg {
struct usb_phy *uphy;
struct dwc2_hsotg_plat *plat;
struct regulator_bulk_data supplies[DWC2_NUM_SUPPLIES];
/**
* dwc2_enable_host_interrupts() - Enables the Host mode interrupts
*
-@@ -3278,6 +3295,7 @@ static void dwc2_conn_id_status_change(s
+@@ -3342,6 +3359,7 @@ static void dwc2_conn_id_status_change(s
/* B-Device connector (Device Mode) */
if (gotgctl & GOTGCTL_CONID_B) {
/* Wait for switch to device mode */
dev_dbg(hsotg->dev, "connId B\n");
if (hsotg->bus_suspended) {
-@@ -4384,6 +4402,9 @@ static int _dwc2_hcd_start(struct usb_hc
+@@ -4448,6 +4466,9 @@ static int _dwc2_hcd_start(struct usb_hc
}
spin_unlock_irqrestore(&hsotg->lock, flags);
return 0;
}
-@@ -4411,6 +4432,8 @@ static void _dwc2_hcd_stop(struct usb_hc
+@@ -4475,6 +4496,8 @@ static void _dwc2_hcd_stop(struct usb_hc
clear_bit(HCD_FLAG_HW_ACCESSIBLE, &hcd->flags);
spin_unlock_irqrestore(&hsotg->lock, flags);
usleep_range(1000, 3000);
}
-@@ -4447,6 +4470,7 @@ static int _dwc2_hcd_suspend(struct usb_
+@@ -4511,6 +4534,7 @@ static int _dwc2_hcd_suspend(struct usb_
hprt0 |= HPRT0_SUSP;
hprt0 &= ~HPRT0_PWR;
dwc2_writel(hprt0, hsotg->regs + HPRT0);
}
/* Enter hibernation */
-@@ -4527,6 +4551,8 @@ static int _dwc2_hcd_resume(struct usb_h
+@@ -4591,6 +4615,8 @@ static int _dwc2_hcd_resume(struct usb_h
spin_unlock_irqrestore(&hsotg->lock, flags);
dwc2_port_resume(hsotg);
} else {
return regulator_enable(hsotg->vbus_supply);
}
-@@ -4403,9 +4408,7 @@ static int _dwc2_hcd_start(struct usb_hc
+@@ -4467,9 +4472,7 @@ static int _dwc2_hcd_start(struct usb_hc
spin_unlock_irqrestore(&hsotg->lock, flags);
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
-@@ -918,6 +918,8 @@ static inline struct sk_buff *ip6_finish
+@@ -911,6 +911,8 @@ static inline struct sk_buff *ip6_finish
&inet6_sk(sk)->cork);
}
- family = ctx->afi->family;
+ family = ctx->family;
- /* Re-use the existing target if it's already loaded. */
- list_for_each_entry(nft_target, &nft_target_list, head) {
+ if (strcmp(tg_name, XT_ERROR_TARGET) == 0 ||
+ strcmp(tg_name, XT_STANDARD_TARGET) == 0 ||
--- a/net/netfilter/nft_ct.c
+++ b/net/netfilter/nft_ct.c
@@ -405,7 +405,7 @@ static int nft_ct_get_init(const struct
#endif
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
-@@ -918,8 +918,6 @@ static inline struct sk_buff *ip6_finish
+@@ -911,8 +911,6 @@ static inline struct sk_buff *ip6_finish
&inet6_sk(sk)->cork);
}
--- a/drivers/usb/dwc2/hcd.c
+++ b/drivers/usb/dwc2/hcd.c
-@@ -2631,6 +2631,7 @@ static void dwc2_hc_init_xfer(struct dwc
+@@ -2669,6 +2669,7 @@ static int dwc2_alloc_split_dma_aligned_
static void dwc2_free_dma_aligned_buffer(struct urb *urb)
{
void *stored_xfer_buffer;
if (!(urb->transfer_flags & URB_ALIGNED_TEMP_BUFFER))
return;
-@@ -2639,9 +2640,14 @@ static void dwc2_free_dma_aligned_buffer
+@@ -2677,9 +2678,14 @@ static void dwc2_free_dma_aligned_buffer
memcpy(&stored_xfer_buffer, urb->transfer_buffer +
urb->transfer_buffer_length, sizeof(urb->transfer_buffer));
if (!net_eq(dev_net(dev), sock_net(sk)))
goto drop;
-@@ -3260,6 +3262,7 @@ static int packet_create(struct net *net
+@@ -3262,6 +3264,7 @@ static int packet_create(struct net *net
mutex_init(&po->pg_vec_lock);
po->rollover = NULL;
po->prot_hook.func = packet_rcv;
if (sock->type == SOCK_PACKET)
po->prot_hook.func = packet_rcv_spkt;
-@@ -3873,6 +3876,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -3875,6 +3878,16 @@ packet_setsockopt(struct socket *sock, i
po->xmit = val ? packet_direct_xmit : dev_queue_xmit;
return 0;
}
default:
return -ENOPROTOOPT;
}
-@@ -3925,6 +3938,13 @@ static int packet_getsockopt(struct sock
+@@ -3927,6 +3940,13 @@ static int packet_getsockopt(struct sock
case PACKET_VNET_HDR:
val = po->has_vnet_hdr;
break;
+
of_platform_depopulate(dev);
- pm_runtime_put_sync(dev);
+ pm_runtime_disable(dev);
(transaction layer end-to-end CRC checking).
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
-@@ -1300,6 +1300,8 @@ void pci_walk_bus(struct pci_bus *top, i
+@@ -1302,6 +1302,8 @@ void pci_walk_bus(struct pci_bus *top, i
void *userdata);
int pci_cfg_space_size(struct pci_dev *dev);
unsigned char pci_bus_max_busnr(struct pci_bus *bus);
#include <linux/usb/hcd.h>
#include <linux/usb/ch11.h>
-@@ -5142,6 +5143,8 @@ int dwc2_hcd_init(struct dwc2_hsotg *hso
+@@ -5206,6 +5207,8 @@ int dwc2_hcd_init(struct dwc2_hsotg *hso
retval = -ENOMEM;