kernel: bump 4.14 to 4.14.180
Refreshed all patches. Fixes: - CVE-2020-12114 - CVE-2020-11669 Compile-tested on: pistachio Runtime-tested on: none Signed-off-by: Koen Vandeputte <koen.vandeputte@ncentric.com>
This commit is contained in:
		| @@ -6,11 +6,11 @@ ifdef CONFIG_TESTING_KERNEL | |||||||
|   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) |   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER) | ||||||
| endif | endif | ||||||
|  |  | ||||||
| LINUX_VERSION-4.14 = .176 | LINUX_VERSION-4.14 = .180 | ||||||
| LINUX_VERSION-4.19 = .115 | LINUX_VERSION-4.19 = .115 | ||||||
| LINUX_VERSION-5.4 = .39 | LINUX_VERSION-5.4 = .39 | ||||||
|  |  | ||||||
| LINUX_KERNEL_HASH-4.14.176 = bcae0956baaeb55dab5bad0401873fbc5baaa7fbe957ea6d27a5ab241cec5ca2 | LINUX_KERNEL_HASH-4.14.180 = 444ef973d9b6a6ea174e4a9086f0aea980d8575d13302e431ad688f22e27ed0e | ||||||
| LINUX_KERNEL_HASH-4.19.115 = 11b2d97c8ea5ceb40c5e1d0bb87ad5b2b8c84560181bc60c0d28ec3a3e3801c2 | LINUX_KERNEL_HASH-4.19.115 = 11b2d97c8ea5ceb40c5e1d0bb87ad5b2b8c84560181bc60c0d28ec3a3e3801c2 | ||||||
| LINUX_KERNEL_HASH-5.4.39 = 5141965a61a7b1c538443782ec3ef25fe0c3f9cd4d70c4e9f969d16883f365c8 | LINUX_KERNEL_HASH-5.4.39 = 5141965a61a7b1c538443782ec3ef25fe0c3f9cd4d70c4e9f969d16883f365c8 | ||||||
|  |  | ||||||
|   | |||||||
| @@ -43,7 +43,7 @@ | |||||||
|  static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip, |  static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip, | ||||||
|  				    unsigned long adr, const u_char *buf, |  				    unsigned long adr, const u_char *buf, | ||||||
|  				    int len) |  				    int len) | ||||||
| @@ -1926,7 +1931,6 @@ static int __xipram do_write_buffer(stru | @@ -1930,7 +1935,6 @@ static int __xipram do_write_buffer(stru | ||||||
|  	return ret; |  	return ret; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -51,7 +51,7 @@ | |||||||
|  static int cfi_amdstd_write_buffers(struct mtd_info *mtd, loff_t to, size_t len, |  static int cfi_amdstd_write_buffers(struct mtd_info *mtd, loff_t to, size_t len, | ||||||
|  				    size_t *retlen, const u_char *buf) |  				    size_t *retlen, const u_char *buf) | ||||||
|  { |  { | ||||||
| @@ -2001,6 +2005,7 @@ static int cfi_amdstd_write_buffers(stru | @@ -2005,6 +2009,7 @@ static int cfi_amdstd_write_buffers(stru | ||||||
|   |   | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
|   | |||||||
| @@ -325,7 +325,7 @@ | |||||||
|  	for (p = *head; p; p = p->next) { |  	for (p = *head; p; p = p->next) { | ||||||
| --- a/net/ipv4/route.c | --- a/net/ipv4/route.c | ||||||
| +++ b/net/ipv4/route.c | +++ b/net/ipv4/route.c | ||||||
| @@ -466,7 +466,7 @@ static struct neighbour *ipv4_neigh_look | @@ -464,7 +464,7 @@ static struct neighbour *ipv4_neigh_look | ||||||
|  	else if (skb) |  	else if (skb) | ||||||
|  		pkey = &ip_hdr(skb)->daddr; |  		pkey = &ip_hdr(skb)->daddr; | ||||||
|   |   | ||||||
|   | |||||||
| @@ -259,9 +259,10 @@ there. | |||||||
|  	depends on MTD && (BCM47XX || ARCH_BCM_5301X || COMPILE_TEST) |  	depends on MTD && (BCM47XX || ARCH_BCM_5301X || COMPILE_TEST) | ||||||
| --- a/drivers/mtd/parsers/Makefile | --- a/drivers/mtd/parsers/Makefile | ||||||
| +++ b/drivers/mtd/parsers/Makefile | +++ b/drivers/mtd/parsers/Makefile | ||||||
| @@ -1 +1,2 @@ | @@ -1,2 +1,3 @@ | ||||||
| +obj-$(CONFIG_MTD_PARSER_IMAGETAG)	+= parser_imagetag.o | +obj-$(CONFIG_MTD_PARSER_IMAGETAG)	+= parser_imagetag.o | ||||||
|  obj-$(CONFIG_MTD_PARSER_TRX)		+= parser_trx.o |  obj-$(CONFIG_MTD_PARSER_TRX)		+= parser_trx.o | ||||||
|  |  obj-$(CONFIG_MTD_ROUTERBOOT_PARTS)	+= routerbootpart.o | ||||||
| --- /dev/null | --- /dev/null | ||||||
| +++ b/drivers/mtd/parsers/parser_imagetag.c | +++ b/drivers/mtd/parsers/parser_imagetag.c | ||||||
| @@ -0,0 +1,214 @@ | @@ -0,0 +1,214 @@ | ||||||
|   | |||||||
| @@ -89,7 +89,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com> | |||||||
|   |   | ||||||
| --- a/drivers/gpio/gpiolib.c | --- a/drivers/gpio/gpiolib.c | ||||||
| +++ b/drivers/gpio/gpiolib.c | +++ b/drivers/gpio/gpiolib.c | ||||||
| @@ -1958,7 +1958,8 @@ int gpiochip_add_pingroup_range(struct g | @@ -1941,7 +1941,8 @@ int gpiochip_add_pingroup_range(struct g | ||||||
|   |   | ||||||
|  	list_add_tail(&pin_range->node, &gdev->pin_ranges); |  	list_add_tail(&pin_range->node, &gdev->pin_ranges); | ||||||
|   |   | ||||||
| @@ -99,7 +99,7 @@ Signed-off-by: Jonas Gorski <jonas.gorski@gmail.com> | |||||||
|  } |  } | ||||||
|  EXPORT_SYMBOL_GPL(gpiochip_add_pingroup_range); |  EXPORT_SYMBOL_GPL(gpiochip_add_pingroup_range); | ||||||
|   |   | ||||||
| @@ -2010,7 +2011,7 @@ int gpiochip_add_pin_range(struct gpio_c | @@ -1993,7 +1994,7 @@ int gpiochip_add_pin_range(struct gpio_c | ||||||
|   |   | ||||||
|  	list_add_tail(&pin_range->node, &gdev->pin_ranges); |  	list_add_tail(&pin_range->node, &gdev->pin_ranges); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -48,7 +48,7 @@ Reviewed-by: John Gilmore <gnu@toad.com> | |||||||
|  #define	INADDR_ANY		((unsigned long int) 0x00000000) |  #define	INADDR_ANY		((unsigned long int) 0x00000000) | ||||||
| --- a/net/ipv4/devinet.c | --- a/net/ipv4/devinet.c | ||||||
| +++ b/net/ipv4/devinet.c | +++ b/net/ipv4/devinet.c | ||||||
| @@ -929,7 +929,7 @@ static int inet_abc_len(__be32 addr) | @@ -934,7 +934,7 @@ static int inet_abc_len(__be32 addr) | ||||||
|  { |  { | ||||||
|  	int rc = -1;	/* Something else, probably a multicast. */ |  	int rc = -1;	/* Something else, probably a multicast. */ | ||||||
|   |   | ||||||
| @@ -57,7 +57,7 @@ Reviewed-by: John Gilmore <gnu@toad.com> | |||||||
|  		rc = 0; |  		rc = 0; | ||||||
|  	else { |  	else { | ||||||
|  		__u32 haddr = ntohl(addr); |  		__u32 haddr = ntohl(addr); | ||||||
| @@ -940,6 +940,8 @@ static int inet_abc_len(__be32 addr) | @@ -945,6 +945,8 @@ static int inet_abc_len(__be32 addr) | ||||||
|  			rc = 16; |  			rc = 16; | ||||||
|  		else if (IN_CLASSC(haddr)) |  		else if (IN_CLASSC(haddr)) | ||||||
|  			rc = 24; |  			rc = 24; | ||||||
|   | |||||||
| @@ -9,7 +9,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  |  | ||||||
| --- a/include/net/ip6_route.h | --- a/include/net/ip6_route.h | ||||||
| +++ b/include/net/ip6_route.h | +++ b/include/net/ip6_route.h | ||||||
| @@ -252,4 +252,26 @@ static inline bool rt6_duplicate_nexthop | @@ -253,4 +253,26 @@ static inline bool rt6_duplicate_nexthop | ||||||
|  	       ipv6_addr_equal(&a->rt6i_gateway, &b->rt6i_gateway) && |  	       ipv6_addr_equal(&a->rt6i_gateway, &b->rt6i_gateway) && | ||||||
|  	       !lwtunnel_cmp_encap(a->dst.lwtstate, b->dst.lwtstate); |  	       !lwtunnel_cmp_encap(a->dst.lwtstate, b->dst.lwtstate); | ||||||
|  } |  } | ||||||
|   | |||||||
| @@ -232,7 +232,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  		return -ENOMEM; |  		return -ENOMEM; | ||||||
| --- a/mm/vmalloc.c | --- a/mm/vmalloc.c | ||||||
| +++ b/mm/vmalloc.c | +++ b/mm/vmalloc.c | ||||||
| @@ -2786,6 +2786,8 @@ static const struct file_operations proc | @@ -2798,6 +2798,8 @@ static const struct file_operations proc | ||||||
|   |   | ||||||
|  static int __init proc_vmalloc_init(void) |  static int __init proc_vmalloc_init(void) | ||||||
|  { |  { | ||||||
| @@ -393,7 +393,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|   |   | ||||||
| --- a/net/ipv4/route.c | --- a/net/ipv4/route.c | ||||||
| +++ b/net/ipv4/route.c | +++ b/net/ipv4/route.c | ||||||
| @@ -428,6 +428,9 @@ static struct pernet_operations ip_rt_pr | @@ -426,6 +426,9 @@ static struct pernet_operations ip_rt_pr | ||||||
|   |   | ||||||
|  static int __init ip_rt_proc_init(void) |  static int __init ip_rt_proc_init(void) | ||||||
|  { |  { | ||||||
|   | |||||||
| @@ -14,8 +14,6 @@ Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> | |||||||
|  drivers/platform/Makefile | 1 + |  drivers/platform/Makefile | 1 + | ||||||
|  2 files changed, 3 insertions(+) |  2 files changed, 3 insertions(+) | ||||||
|  |  | ||||||
| diff --git a/drivers/platform/Kconfig b/drivers/platform/Kconfig |  | ||||||
| index c11db8b..0283f0b 100644 |  | ||||||
| --- a/drivers/platform/Kconfig | --- a/drivers/platform/Kconfig | ||||||
| +++ b/drivers/platform/Kconfig | +++ b/drivers/platform/Kconfig | ||||||
| @@ -8,3 +8,5 @@ endif | @@ -8,3 +8,5 @@ endif | ||||||
| @@ -24,8 +22,6 @@ index c11db8b..0283f0b 100644 | |||||||
|  source "drivers/platform/chrome/Kconfig" |  source "drivers/platform/chrome/Kconfig" | ||||||
| + | + | ||||||
| +source "drivers/platform/mikrotik/Kconfig" | +source "drivers/platform/mikrotik/Kconfig" | ||||||
| diff --git a/drivers/platform/Makefile b/drivers/platform/Makefile |  | ||||||
| index d3a6630..ad290c3 100644 |  | ||||||
| --- a/drivers/platform/Makefile | --- a/drivers/platform/Makefile | ||||||
| +++ b/drivers/platform/Makefile | +++ b/drivers/platform/Makefile | ||||||
| @@ -8,3 +8,4 @@ obj-$(CONFIG_MIPS)		+= mips/ | @@ -8,3 +8,4 @@ obj-$(CONFIG_MIPS)		+= mips/ | ||||||
| @@ -33,6 +29,3 @@ index d3a6630..ad290c3 100644 | |||||||
|  obj-$(CONFIG_GOLDFISH)		+= goldfish/ |  obj-$(CONFIG_GOLDFISH)		+= goldfish/ | ||||||
|  obj-$(CONFIG_CHROME_PLATFORMS)	+= chrome/ |  obj-$(CONFIG_CHROME_PLATFORMS)	+= chrome/ | ||||||
| +obj-$(CONFIG_MIKROTIK)		+= mikrotik/ | +obj-$(CONFIG_MIKROTIK)		+= mikrotik/ | ||||||
| --  |  | ||||||
| 2.11.0 |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -14,8 +14,6 @@ Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org> | |||||||
|  drivers/mtd/parsers/Makefile | 1 + |  drivers/mtd/parsers/Makefile | 1 + | ||||||
|  2 files changed, 10 insertions(+) |  2 files changed, 10 insertions(+) | ||||||
|  |  | ||||||
| diff --git a/drivers/mtd/parsers/Kconfig b/drivers/mtd/parsers/Kconfig |  | ||||||
| index d206b3c..58cbdd6 100644 |  | ||||||
| --- a/drivers/mtd/parsers/Kconfig | --- a/drivers/mtd/parsers/Kconfig | ||||||
| +++ b/drivers/mtd/parsers/Kconfig | +++ b/drivers/mtd/parsers/Kconfig | ||||||
| @@ -6,3 +6,12 @@ config MTD_PARSER_TRX | @@ -6,3 +6,12 @@ config MTD_PARSER_TRX | ||||||
| @@ -31,13 +29,8 @@ index d206b3c..58cbdd6 100644 | |||||||
| +	  flash, some of which are fixed and some of which are located at | +	  flash, some of which are fixed and some of which are located at | ||||||
| +	  variable offsets. This parser handles both cases via properly | +	  variable offsets. This parser handles both cases via properly | ||||||
| +	  formatted DTS. | +	  formatted DTS. | ||||||
| diff --git a/drivers/mtd/parsers/Makefile b/drivers/mtd/parsers/Makefile |  | ||||||
| index 4d9024e..41d363a 100644 |  | ||||||
| --- a/drivers/mtd/parsers/Makefile | --- a/drivers/mtd/parsers/Makefile | ||||||
| +++ b/drivers/mtd/parsers/Makefile | +++ b/drivers/mtd/parsers/Makefile | ||||||
| @@ -1 +1,2 @@ | @@ -1 +1,2 @@ | ||||||
|  obj-$(CONFIG_MTD_PARSER_TRX)		+= parser_trx.o |  obj-$(CONFIG_MTD_PARSER_TRX)		+= parser_trx.o | ||||||
| +obj-$(CONFIG_MTD_ROUTERBOOT_PARTS)	+= routerbootpart.o | +obj-$(CONFIG_MTD_ROUTERBOOT_PARTS)	+= routerbootpart.o | ||||||
| --  |  | ||||||
| 2.11.0 |  | ||||||
|  |  | ||||||
|   | |||||||
| @@ -32,7 +32,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	__u16			tc_index;	/* traffic control index */ |  	__u16			tc_index;	/* traffic control index */ | ||||||
| --- a/net/core/dev.c | --- a/net/core/dev.c | ||||||
| +++ b/net/core/dev.c | +++ b/net/core/dev.c | ||||||
| @@ -4805,6 +4805,9 @@ static enum gro_result dev_gro_receive(s | @@ -4806,6 +4806,9 @@ static enum gro_result dev_gro_receive(s | ||||||
|  	enum gro_result ret; |  	enum gro_result ret; | ||||||
|  	int grow; |  	int grow; | ||||||
|   |   | ||||||
| @@ -42,7 +42,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	if (netif_elide_gro(skb->dev)) |  	if (netif_elide_gro(skb->dev)) | ||||||
|  		goto normal; |  		goto normal; | ||||||
|   |   | ||||||
| @@ -6282,6 +6285,48 @@ static void __netdev_adjacent_dev_unlink | @@ -6283,6 +6286,48 @@ static void __netdev_adjacent_dev_unlink | ||||||
|  					   &upper_dev->adj_list.lower); |  					   &upper_dev->adj_list.lower); | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -91,7 +91,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  static int __netdev_upper_dev_link(struct net_device *dev, |  static int __netdev_upper_dev_link(struct net_device *dev, | ||||||
|  				   struct net_device *upper_dev, bool master, |  				   struct net_device *upper_dev, bool master, | ||||||
|  				   void *upper_priv, void *upper_info) |  				   void *upper_priv, void *upper_info) | ||||||
| @@ -6320,6 +6365,7 @@ static int __netdev_upper_dev_link(struc | @@ -6321,6 +6366,7 @@ static int __netdev_upper_dev_link(struc | ||||||
|  	if (ret) |  	if (ret) | ||||||
|  		return ret; |  		return ret; | ||||||
|   |   | ||||||
| @@ -99,7 +99,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, |  	ret = call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, | ||||||
|  					    &changeupper_info.info); |  					    &changeupper_info.info); | ||||||
|  	ret = notifier_to_errno(ret); |  	ret = notifier_to_errno(ret); | ||||||
| @@ -6397,6 +6443,7 @@ void netdev_upper_dev_unlink(struct net_ | @@ -6398,6 +6444,7 @@ void netdev_upper_dev_unlink(struct net_ | ||||||
|   |   | ||||||
|  	__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev); |  	__netdev_adjacent_dev_unlink_neighbour(dev, upper_dev); | ||||||
|   |   | ||||||
| @@ -107,7 +107,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> | |||||||
|  	call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, |  	call_netdevice_notifiers_info(NETDEV_CHANGEUPPER, dev, | ||||||
|  				      &changeupper_info.info); |  				      &changeupper_info.info); | ||||||
|  } |  } | ||||||
| @@ -6961,6 +7008,7 @@ int dev_set_mac_address(struct net_devic | @@ -6962,6 +7009,7 @@ int dev_set_mac_address(struct net_devic | ||||||
|  	if (err) |  	if (err) | ||||||
|  		return err; |  		return err; | ||||||
|  	dev->addr_assign_type = NET_ADDR_SET; |  	dev->addr_assign_type = NET_ADDR_SET; | ||||||
|   | |||||||
| @@ -442,7 +442,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|   |   | ||||||
| --- a/drivers/soc/imx/gpc.c | --- a/drivers/soc/imx/gpc.c | ||||||
| +++ b/drivers/soc/imx/gpc.c | +++ b/drivers/soc/imx/gpc.c | ||||||
| @@ -209,7 +209,7 @@ static int imx_pgc_power_domain_probe(st | @@ -210,7 +210,7 @@ static int imx_pgc_power_domain_probe(st | ||||||
|  			goto genpd_err; |  			goto genpd_err; | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -713,7 +713,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  } |  } | ||||||
|   |   | ||||||
|  #ifdef CONFIG_NET_INGRESS |  #ifdef CONFIG_NET_INGRESS | ||||||
| @@ -6341,7 +6342,15 @@ static int __netdev_upper_dev_link(struc | @@ -6342,7 +6343,15 @@ static int __netdev_upper_dev_link(struc | ||||||
|  				   struct net_device *upper_dev, bool master, |  				   struct net_device *upper_dev, bool master, | ||||||
|  				   void *upper_priv, void *upper_info) |  				   void *upper_priv, void *upper_info) | ||||||
|  { |  { | ||||||
| @@ -730,7 +730,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  	int ret = 0; |  	int ret = 0; | ||||||
|   |   | ||||||
|  	ASSERT_RTNL(); |  	ASSERT_RTNL(); | ||||||
| @@ -6359,12 +6368,7 @@ static int __netdev_upper_dev_link(struc | @@ -6360,12 +6369,7 @@ static int __netdev_upper_dev_link(struc | ||||||
|  	if (master && netdev_master_upper_dev_get(dev)) |  	if (master && netdev_master_upper_dev_get(dev)) | ||||||
|  		return -EBUSY; |  		return -EBUSY; | ||||||
|   |   | ||||||
| @@ -744,7 +744,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  					    &changeupper_info.info); |  					    &changeupper_info.info); | ||||||
|  	ret = notifier_to_errno(ret); |  	ret = notifier_to_errno(ret); | ||||||
|  	if (ret) |  	if (ret) | ||||||
| @@ -6376,7 +6380,7 @@ static int __netdev_upper_dev_link(struc | @@ -6377,7 +6381,7 @@ static int __netdev_upper_dev_link(struc | ||||||
|  		return ret; |  		return ret; | ||||||
|   |   | ||||||
|  	netdev_update_addr_mask(dev); |  	netdev_update_addr_mask(dev); | ||||||
| @@ -753,7 +753,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  					    &changeupper_info.info); |  					    &changeupper_info.info); | ||||||
|  	ret = notifier_to_errno(ret); |  	ret = notifier_to_errno(ret); | ||||||
|  	if (ret) |  	if (ret) | ||||||
| @@ -6440,21 +6444,25 @@ EXPORT_SYMBOL(netdev_master_upper_dev_li | @@ -6441,21 +6445,25 @@ EXPORT_SYMBOL(netdev_master_upper_dev_li | ||||||
|  void netdev_upper_dev_unlink(struct net_device *dev, |  void netdev_upper_dev_unlink(struct net_device *dev, | ||||||
|  			     struct net_device *upper_dev) |  			     struct net_device *upper_dev) | ||||||
|  { |  { | ||||||
| @@ -784,7 +784,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  				      &changeupper_info.info); |  				      &changeupper_info.info); | ||||||
|  } |  } | ||||||
|  EXPORT_SYMBOL(netdev_upper_dev_unlink); |  EXPORT_SYMBOL(netdev_upper_dev_unlink); | ||||||
| @@ -6470,11 +6478,13 @@ EXPORT_SYMBOL(netdev_upper_dev_unlink); | @@ -6471,11 +6479,13 @@ EXPORT_SYMBOL(netdev_upper_dev_unlink); | ||||||
|  void netdev_bonding_info_change(struct net_device *dev, |  void netdev_bonding_info_change(struct net_device *dev, | ||||||
|  				struct netdev_bonding_info *bonding_info) |  				struct netdev_bonding_info *bonding_info) | ||||||
|  { |  { | ||||||
| @@ -800,7 +800,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  				      &info.info); |  				      &info.info); | ||||||
|  } |  } | ||||||
|  EXPORT_SYMBOL(netdev_bonding_info_change); |  EXPORT_SYMBOL(netdev_bonding_info_change); | ||||||
| @@ -6600,11 +6610,13 @@ EXPORT_SYMBOL(dev_get_nest_level); | @@ -6601,11 +6611,13 @@ EXPORT_SYMBOL(dev_get_nest_level); | ||||||
|  void netdev_lower_state_changed(struct net_device *lower_dev, |  void netdev_lower_state_changed(struct net_device *lower_dev, | ||||||
|  				void *lower_state_info) |  				void *lower_state_info) | ||||||
|  { |  { | ||||||
| @@ -816,7 +816,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  				      &changelowerstate_info.info); |  				      &changelowerstate_info.info); | ||||||
|  } |  } | ||||||
|  EXPORT_SYMBOL(netdev_lower_state_changed); |  EXPORT_SYMBOL(netdev_lower_state_changed); | ||||||
| @@ -6895,11 +6907,14 @@ void __dev_notify_flags(struct net_devic | @@ -6896,11 +6908,14 @@ void __dev_notify_flags(struct net_devic | ||||||
|   |   | ||||||
|  	if (dev->flags & IFF_UP && |  	if (dev->flags & IFF_UP && | ||||||
|  	    (changes & ~(IFF_UP | IFF_PROMISC | IFF_ALLMULTI | IFF_VOLATILE))) { |  	    (changes & ~(IFF_UP | IFF_PROMISC | IFF_ALLMULTI | IFF_VOLATILE))) { | ||||||
|   | |||||||
| @@ -323,7 +323,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  	usb_phy_set_suspend(dwc->usb2_phy, 0); |  	usb_phy_set_suspend(dwc->usb2_phy, 0); | ||||||
|  	usb_phy_set_suspend(dwc->usb3_phy, 0); |  	usb_phy_set_suspend(dwc->usb3_phy, 0); | ||||||
|  	ret = phy_power_on(dwc->usb2_generic_phy); |  	ret = phy_power_on(dwc->usb2_generic_phy); | ||||||
| @@ -870,6 +1006,22 @@ static int dwc3_core_init(struct dwc3 *d | @@ -873,6 +1009,22 @@ static int dwc3_core_init(struct dwc3 *d | ||||||
|  		dwc3_writel(dwc->regs, DWC3_GUCTL1, reg); |  		dwc3_writel(dwc->regs, DWC3_GUCTL1, reg); | ||||||
|  	} |  	} | ||||||
|   |   | ||||||
| @@ -346,7 +346,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  	return 0; |  	return 0; | ||||||
|   |   | ||||||
|  err4: |  err4: | ||||||
| @@ -1076,6 +1228,8 @@ static void dwc3_get_properties(struct d | @@ -1079,6 +1231,8 @@ static void dwc3_get_properties(struct d | ||||||
|  				&hird_threshold); |  				&hird_threshold); | ||||||
|  	dwc->usb3_lpm_capable = device_property_read_bool(dev, |  	dwc->usb3_lpm_capable = device_property_read_bool(dev, | ||||||
|  				"snps,usb3_lpm_capable"); |  				"snps,usb3_lpm_capable"); | ||||||
| @@ -355,9 +355,9 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|   |   | ||||||
|  	dwc->disable_scramble_quirk = device_property_read_bool(dev, |  	dwc->disable_scramble_quirk = device_property_read_bool(dev, | ||||||
|  				"snps,disable_scramble_quirk"); |  				"snps,disable_scramble_quirk"); | ||||||
| @@ -1108,8 +1262,16 @@ static void dwc3_get_properties(struct d | @@ -1113,8 +1267,16 @@ static void dwc3_get_properties(struct d | ||||||
|  	dwc->dis_tx_ipgap_linecheck_quirk = device_property_read_bool(dev, |  	dwc->parkmode_disable_ss_quirk = device_property_read_bool(dev, | ||||||
|  				"snps,dis-tx-ipgap-linecheck-quirk"); |  				"snps,parkmode-disable-ss-quirk"); | ||||||
|   |   | ||||||
| +	dwc->quirk_reverse_in_out = device_property_read_bool(dev, | +	dwc->quirk_reverse_in_out = device_property_read_bool(dev, | ||||||
| +				"snps,quirk_reverse_in_out"); | +				"snps,quirk_reverse_in_out"); | ||||||
| @@ -372,7 +372,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  	device_property_read_u8(dev, "snps,tx_de_emphasis", |  	device_property_read_u8(dev, "snps,tx_de_emphasis", | ||||||
|  				&tx_de_emphasis); |  				&tx_de_emphasis); | ||||||
|  	device_property_read_string(dev, "snps,hsphy_interface", |  	device_property_read_string(dev, "snps,hsphy_interface", | ||||||
| @@ -1120,6 +1282,9 @@ static void dwc3_get_properties(struct d | @@ -1125,6 +1287,9 @@ static void dwc3_get_properties(struct d | ||||||
|  	dwc->dis_metastability_quirk = device_property_read_bool(dev, |  	dwc->dis_metastability_quirk = device_property_read_bool(dev, | ||||||
|  				"snps,dis_metastability_quirk"); |  				"snps,dis_metastability_quirk"); | ||||||
|   |   | ||||||
| @@ -382,7 +382,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  	dwc->lpm_nyet_threshold = lpm_nyet_threshold; |  	dwc->lpm_nyet_threshold = lpm_nyet_threshold; | ||||||
|  	dwc->tx_de_emphasis = tx_de_emphasis; |  	dwc->tx_de_emphasis = tx_de_emphasis; | ||||||
|   |   | ||||||
| @@ -1371,12 +1536,14 @@ static int dwc3_resume_common(struct dwc | @@ -1376,12 +1541,14 @@ static int dwc3_resume_common(struct dwc | ||||||
|   |   | ||||||
|  	switch (dwc->dr_mode) { |  	switch (dwc->dr_mode) { | ||||||
|  	case USB_DR_MODE_PERIPHERAL: |  	case USB_DR_MODE_PERIPHERAL: | ||||||
| @@ -440,9 +440,9 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
| +#define DWC3_GUCTL_HSTINAUTORETRY	BIT(14) | +#define DWC3_GUCTL_HSTINAUTORETRY	BIT(14) | ||||||
| + | + | ||||||
|  /* Global User Control 1 Register */ |  /* Global User Control 1 Register */ | ||||||
|  |  #define DWC3_GUCTL1_PARKMODE_DISABLE_SS	BIT(17) | ||||||
|  #define DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS	BIT(28) |  #define DWC3_GUCTL1_TX_IPGAP_LINECHECK_DIS	BIT(28) | ||||||
|  #define DWC3_GUCTL1_DEV_L1_EXIT_BY_HW	BIT(24) | @@ -478,6 +507,14 @@ | ||||||
| @@ -477,6 +506,14 @@ |  | ||||||
|  #define DWC3_DEV_IMOD_INTERVAL_SHIFT	0 |  #define DWC3_DEV_IMOD_INTERVAL_SHIFT	0 | ||||||
|  #define DWC3_DEV_IMOD_INTERVAL_MASK	(0xffff << 0) |  #define DWC3_DEV_IMOD_INTERVAL_MASK	(0xffff << 0) | ||||||
|   |   | ||||||
| @@ -457,7 +457,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  /* Structures */ |  /* Structures */ | ||||||
|   |   | ||||||
|  struct dwc3_trb; |  struct dwc3_trb; | ||||||
| @@ -788,6 +825,7 @@ struct dwc3_scratchpad_array { | @@ -789,6 +826,7 @@ struct dwc3_scratchpad_array { | ||||||
|   * @regs: base address for our registers |   * @regs: base address for our registers | ||||||
|   * @regs_size: address space size |   * @regs_size: address space size | ||||||
|   * @fladj: frame length adjustment |   * @fladj: frame length adjustment | ||||||
| @@ -465,7 +465,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|   * @irq_gadget: peripheral controller's IRQ number |   * @irq_gadget: peripheral controller's IRQ number | ||||||
|   * @nr_scratch: number of scratch buffers |   * @nr_scratch: number of scratch buffers | ||||||
|   * @u1u2: only used on revisions <1.83a for workaround |   * @u1u2: only used on revisions <1.83a for workaround | ||||||
| @@ -843,6 +881,7 @@ struct dwc3_scratchpad_array { | @@ -844,6 +882,7 @@ struct dwc3_scratchpad_array { | ||||||
|   * @setup_packet_pending: true when there's a Setup Packet in FIFO. Workaround |   * @setup_packet_pending: true when there's a Setup Packet in FIFO. Workaround | ||||||
|   * @three_stage_setup: set if we perform a three phase setup |   * @three_stage_setup: set if we perform a three phase setup | ||||||
|   * @usb3_lpm_capable: set if hadrware supports Link Power Management |   * @usb3_lpm_capable: set if hadrware supports Link Power Management | ||||||
| @@ -473,7 +473,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|   * @disable_scramble_quirk: set if we enable the disable scramble quirk |   * @disable_scramble_quirk: set if we enable the disable scramble quirk | ||||||
|   * @u2exit_lfps_quirk: set if we enable u2exit lfps quirk |   * @u2exit_lfps_quirk: set if we enable u2exit lfps quirk | ||||||
|   * @u2ss_inp3_quirk: set if we enable P3 OK for U2/SS Inactive quirk |   * @u2ss_inp3_quirk: set if we enable P3 OK for U2/SS Inactive quirk | ||||||
| @@ -922,6 +961,12 @@ struct dwc3 { | @@ -925,6 +964,12 @@ struct dwc3 { | ||||||
|  	enum usb_phy_interface	hsphy_mode; |  	enum usb_phy_interface	hsphy_mode; | ||||||
|   |   | ||||||
|  	u32			fladj; |  	u32			fladj; | ||||||
| @@ -486,7 +486,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  	u32			irq_gadget; |  	u32			irq_gadget; | ||||||
|  	u32			nr_scratch; |  	u32			nr_scratch; | ||||||
|  	u32			u1u2; |  	u32			u1u2; | ||||||
| @@ -1006,6 +1051,7 @@ struct dwc3 { | @@ -1009,6 +1054,7 @@ struct dwc3 { | ||||||
|  	unsigned		setup_packet_pending:1; |  	unsigned		setup_packet_pending:1; | ||||||
|  	unsigned		three_stage_setup:1; |  	unsigned		three_stage_setup:1; | ||||||
|  	unsigned		usb3_lpm_capable:1; |  	unsigned		usb3_lpm_capable:1; | ||||||
| @@ -494,7 +494,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|   |   | ||||||
|  	unsigned		disable_scramble_quirk:1; |  	unsigned		disable_scramble_quirk:1; | ||||||
|  	unsigned		u2exit_lfps_quirk:1; |  	unsigned		u2exit_lfps_quirk:1; | ||||||
| @@ -1025,6 +1071,11 @@ struct dwc3 { | @@ -1029,6 +1075,11 @@ struct dwc3 { | ||||||
|   |   | ||||||
|  	unsigned		tx_de_emphasis_quirk:1; |  	unsigned		tx_de_emphasis_quirk:1; | ||||||
|  	unsigned		tx_de_emphasis:2; |  	unsigned		tx_de_emphasis:2; | ||||||
| @@ -528,7 +528,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|  		reg &= ~DWC3_DCTL_INITU2ENA; |  		reg &= ~DWC3_DCTL_INITU2ENA; | ||||||
| --- a/drivers/usb/dwc3/gadget.c | --- a/drivers/usb/dwc3/gadget.c | ||||||
| +++ b/drivers/usb/dwc3/gadget.c | +++ b/drivers/usb/dwc3/gadget.c | ||||||
| @@ -3220,6 +3220,7 @@ int dwc3_gadget_init(struct dwc3 *dwc) | @@ -3216,6 +3216,7 @@ int dwc3_gadget_init(struct dwc3 *dwc) | ||||||
|  { |  { | ||||||
|  	int ret; |  	int ret; | ||||||
|  	int irq; |  	int irq; | ||||||
| @@ -536,7 +536,7 @@ Signed-off-by: Zhao Chenhui <chenhui.zhao@freescale.com> | |||||||
|   |   | ||||||
|  	irq = dwc3_gadget_get_irq(dwc); |  	irq = dwc3_gadget_get_irq(dwc); | ||||||
|  	if (irq < 0) { |  	if (irq < 0) { | ||||||
| @@ -3298,6 +3299,12 @@ int dwc3_gadget_init(struct dwc3 *dwc) | @@ -3294,6 +3295,12 @@ int dwc3_gadget_init(struct dwc3 *dwc) | ||||||
|   |   | ||||||
|  	dwc3_gadget_set_speed(&dwc->gadget, dwc->maximum_speed); |  	dwc3_gadget_set_speed(&dwc->gadget, dwc->maximum_speed); | ||||||
|   |   | ||||||
|   | |||||||
| @@ -5715,7 +5715,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  	int	(*start)(struct pci_epc *epc); |  	int	(*start)(struct pci_epc *epc); | ||||||
|  	void	(*stop)(struct pci_epc *epc); |  	void	(*stop)(struct pci_epc *epc); | ||||||
|  	struct module *owner; |  	struct module *owner; | ||||||
| @@ -91,8 +97,17 @@ struct pci_epc { | @@ -94,8 +100,17 @@ struct pci_epc { | ||||||
|  	struct config_group		*group; |  	struct config_group		*group; | ||||||
|  	/* spinlock to protect against concurrent access of EP controller */ |  	/* spinlock to protect against concurrent access of EP controller */ | ||||||
|  	spinlock_t			lock; |  	spinlock_t			lock; | ||||||
| @@ -5733,7 +5733,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> | |||||||
|  #define to_pci_epc(device) container_of((device), struct pci_epc, dev) |  #define to_pci_epc(device) container_of((device), struct pci_epc, dev) | ||||||
|   |   | ||||||
|  #define pci_epc_create(dev, ops)    \ |  #define pci_epc_create(dev, ops)    \ | ||||||
| @@ -124,17 +139,23 @@ void pci_epc_destroy(struct pci_epc *epc | @@ -127,17 +142,23 @@ void pci_epc_destroy(struct pci_epc *epc | ||||||
|  int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf); |  int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf); | ||||||
|  void pci_epc_linkup(struct pci_epc *epc); |  void pci_epc_linkup(struct pci_epc *epc); | ||||||
|  void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf); |  void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf); | ||||||
|   | |||||||
| @@ -52,7 +52,7 @@ Subject: [PATCH 37/53] mtd: cfi cmdset 0002 force word write | |||||||
|  static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip, |  static int __xipram do_write_buffer(struct map_info *map, struct flchip *chip, | ||||||
|  				    unsigned long adr, const u_char *buf, |  				    unsigned long adr, const u_char *buf, | ||||||
|  				    int len) |  				    int len) | ||||||
| @@ -1926,7 +1931,6 @@ static int __xipram do_write_buffer(stru | @@ -1930,7 +1935,6 @@ static int __xipram do_write_buffer(stru | ||||||
|  	return ret; |  	return ret; | ||||||
|  } |  } | ||||||
|   |   | ||||||
| @@ -60,7 +60,7 @@ Subject: [PATCH 37/53] mtd: cfi cmdset 0002 force word write | |||||||
|  static int cfi_amdstd_write_buffers(struct mtd_info *mtd, loff_t to, size_t len, |  static int cfi_amdstd_write_buffers(struct mtd_info *mtd, loff_t to, size_t len, | ||||||
|  				    size_t *retlen, const u_char *buf) |  				    size_t *retlen, const u_char *buf) | ||||||
|  { |  { | ||||||
| @@ -2001,6 +2005,7 @@ static int cfi_amdstd_write_buffers(stru | @@ -2005,6 +2009,7 @@ static int cfi_amdstd_write_buffers(stru | ||||||
|   |   | ||||||
|  	return 0; |  	return 0; | ||||||
|  } |  } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Koen Vandeputte
					Koen Vandeputte