From f230bfadd0d3d81a88c69adc122f2bbf98d693e6 Mon Sep 17 00:00:00 2001
From: John Audia <graysky@archlinux.us>
Date: Wed, 23 Jun 2021 03:00:02 -0400
Subject: [PATCH] kernel: bump 5.4 to 5.4.126

Manually rebased:
  bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch

All other patches automatically rebased.

Signed-off-by: John Audia <graysky@archlinux.us>
Signed-off-by: maurerr <mariusd84@gmail.com>
---
 include/kernel-version.mk                     |  4 +-
 ...oup-Disable-cgroup-memory-by-default.patch | 39 +++++++++++++------
 ...i-bcm2835-Disable-forced-software-CS.patch |  2 +-
 ...2835-enable-shared-interrupt-support.patch |  2 +-
 ...ASH-Fix-spi-driver-compiler-warnings.patch |  2 +-
 ...CS_HIGH-if-GPIO-descriptors-are-used.patch |  4 +-
 ..._descriptor-fixup-moved-to-spi_setup.patch |  2 +-
 ...te-SPI_CS_HIGH-warning-to-KERN_DEBUG.patch |  2 +-
 ...ASH-Fix-spi-driver-compiler-warnings.patch |  2 +-
 ...i-bcm2835-Disable-forced-software-CS.patch |  2 +-
 target/linux/generic/config-5.4               |  1 +
 .../generic/hack-5.4/221-module_exports.patch |  2 +-
 ...-spi-make-spi-max-frequency-optional.patch |  2 +-
 13 files changed, 41 insertions(+), 25 deletions(-)

diff --git a/include/kernel-version.mk b/include/kernel-version.mk
index 4bd243663c2..d3d08a6d339 100644
--- a/include/kernel-version.mk
+++ b/include/kernel-version.mk
@@ -6,10 +6,10 @@ ifdef CONFIG_TESTING_KERNEL
   KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
 endif
 
-LINUX_VERSION-5.4 = .125
+LINUX_VERSION-5.4 = .126
 LINUX_VERSION-5.10 = .46
 
-LINUX_KERNEL_HASH-5.4.125 = 17ee750a4aeb1c883d721e730d1f7e2855124585e2f47766864a1359a7ebe33c
+LINUX_KERNEL_HASH-5.4.126 = c7fd7998ab36b574326bbd67bcc2b74e4c58e81581a5f8a7a71af5185f635277
 LINUX_KERNEL_HASH-5.10.46 = 569122a39c6b325befb9ac1c07da0c53e6363b3baacd82081d131b06c1dc1415
 
 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
diff --git a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch
index 86f60e7052f..d4818b22399 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch
@@ -1,4 +1,4 @@
-From 0f95a2f2688ff44dc7080beaa2076741a0bdf510 Mon Sep 17 00:00:00 2001
+From 2b13c54592135b6fab269517ed687fa9f80bf8e5 Mon Sep 17 00:00:00 2001
 From: Phil Elwell <phil@raspberrypi.org>
 Date: Mon, 27 Nov 2017 17:14:54 +0000
 Subject: [PATCH] cgroup: Disable cgroup "memory" by default
@@ -12,34 +12,46 @@ See: https://github.com/raspberrypi/linux/issues/1950
 
 Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 ---
- kernel/cgroup/cgroup.c | 30 ++++++++++++++++++++++++++++++
- 1 file changed, 30 insertions(+)
+ kernel/cgroup/cgroup.c | 38 ++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 38 insertions(+)
 
 --- a/kernel/cgroup/cgroup.c
 +++ b/kernel/cgroup/cgroup.c
-@@ -5722,6 +5722,8 @@ int __init cgroup_init_early(void)
+@@ -5721,6 +5721,9 @@ int __init cgroup_init_early(void)
+ 	return 0;
  }
  
- static u16 cgroup_disable_mask __initdata;
 +static u16 cgroup_enable_mask __initdata;
 +static int __init cgroup_disable(char *str);
- 
++
  /**
   * cgroup_init - cgroup initialization
-@@ -5761,6 +5763,12 @@ int __init cgroup_init(void)
+  *
+@@ -5759,6 +5762,12 @@ int __init cgroup_init(void)
  
  	mutex_unlock(&cgroup_mutex);
  
-+	/* Apply an implicit disable... */
++	/*
++	 * Apply an implicit disable, knowing that an explicit enable will
++	 * prevent if from doing anything.
++	 */
 +	cgroup_disable("memory");
-+
-+	/* ...knowing that an explicit enable will override it. */
-+	cgroup_disable_mask &= ~cgroup_enable_mask;
 +
  	for_each_subsys(ss, ssid) {
  		if (ss->early_init) {
  			struct cgroup_subsys_state *css =
-@@ -6180,6 +6188,28 @@ static int __init cgroup_disable(char *s
+@@ -6168,6 +6177,10 @@ static int __init cgroup_disable(char *s
+ 			    strcmp(token, ss->legacy_name))
+ 				continue;
+ 
++			/* An explicit cgroup_enable overrides a disable */
++			if (cgroup_enable_mask & (1 << i))
++				continue;
++
+ 			static_branch_disable(cgroup_subsys_enabled_key[i]);
+ 			pr_info("Disabling %s control group subsystem\n",
+ 				ss->name);
+@@ -6177,6 +6190,31 @@ static int __init cgroup_disable(char *s
  }
  __setup("cgroup_disable=", cgroup_disable);
  
@@ -59,6 +71,9 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 +				continue;
 +
 +			cgroup_enable_mask |= 1 << i;
++			static_branch_enable(cgroup_subsys_enabled_key[i]);
++			pr_info("Enabling %s control group subsystem\n",
++				ss->name);
 +		}
 +	}
 +	return 1;
diff --git a/target/linux/bcm27xx/patches-5.4/950-0134-spi-spi-bcm2835-Disable-forced-software-CS.patch b/target/linux/bcm27xx/patches-5.4/950-0134-spi-spi-bcm2835-Disable-forced-software-CS.patch
index 0abe5059c0d..cfb46d87913 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0134-spi-spi-bcm2835-Disable-forced-software-CS.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0134-spi-spi-bcm2835-Disable-forced-software-CS.patch
@@ -13,7 +13,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
 
 --- a/drivers/spi/spi-bcm2835.c
 +++ b/drivers/spi/spi-bcm2835.c
-@@ -1230,31 +1230,6 @@ static int bcm2835_spi_setup(struct spi_
+@@ -1236,31 +1236,6 @@ static int bcm2835_spi_setup(struct spi_
  		return -EINVAL;
  	}
  
diff --git a/target/linux/bcm27xx/patches-5.4/950-0212-spi-bcm2835-enable-shared-interrupt-support.patch b/target/linux/bcm27xx/patches-5.4/950-0212-spi-bcm2835-enable-shared-interrupt-support.patch
index f82ae7d9f69..5326934b712 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0212-spi-bcm2835-enable-shared-interrupt-support.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0212-spi-bcm2835-enable-shared-interrupt-support.patch
@@ -23,7 +23,7 @@ Signed-off-by: Martin Sperl <kernel@martin.sperl.org>
  	/* Read as many bytes as possible from FIFO */
  	bcm2835_rd_fifo(bs);
  	/* Write as many bytes as possible to FIFO */
-@@ -1281,7 +1285,8 @@ static int bcm2835_spi_probe(struct plat
+@@ -1287,7 +1291,8 @@ static int bcm2835_spi_probe(struct plat
  	bcm2835_wr(bs, BCM2835_SPI_CS,
  		   BCM2835_SPI_CS_CLEAR_RX | BCM2835_SPI_CS_CLEAR_TX);
  
diff --git a/target/linux/bcm27xx/patches-5.4/950-0409-SQUASH-Fix-spi-driver-compiler-warnings.patch b/target/linux/bcm27xx/patches-5.4/950-0409-SQUASH-Fix-spi-driver-compiler-warnings.patch
index 44134391011..742dbad7120 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0409-SQUASH-Fix-spi-driver-compiler-warnings.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0409-SQUASH-Fix-spi-driver-compiler-warnings.patch
@@ -19,4 +19,4 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 -	struct gpio_chip *chip;
  	u32 cs;
  
- 	/*
+ 	if (spi->chip_select >= BCM2835_SPI_NUM_CS) {
diff --git a/target/linux/bcm27xx/patches-5.4/950-0646-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch b/target/linux/bcm27xx/patches-5.4/950-0646-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
index 6ee6a275c30..05fa9f8f2ec 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0646-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0646-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
@@ -23,7 +23,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -3110,6 +3110,7 @@ static int __spi_validate_bits_per_word(
+@@ -3116,6 +3116,7 @@ static int __spi_validate_bits_per_word(
   */
  int spi_setup(struct spi_device *spi)
  {
@@ -31,7 +31,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  	unsigned	bad_bits, ugly_bits;
  	int		status;
  
-@@ -3127,6 +3128,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3133,6 +3134,14 @@ int spi_setup(struct spi_device *spi)
  		(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
  		 SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
  		return -EINVAL;
diff --git a/target/linux/bcm27xx/patches-5.4/950-0665-spi-use_gpio_descriptor-fixup-moved-to-spi_setup.patch b/target/linux/bcm27xx/patches-5.4/950-0665-spi-use_gpio_descriptor-fixup-moved-to-spi_setup.patch
index 8792faa0c9b..402635d838b 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0665-spi-use_gpio_descriptor-fixup-moved-to-spi_setup.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0665-spi-use_gpio_descriptor-fixup-moved-to-spi_setup.patch
@@ -37,7 +37,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -1793,15 +1793,6 @@ static int of_spi_parse_dt(struct spi_co
+@@ -1799,15 +1799,6 @@ static int of_spi_parse_dt(struct spi_co
  	}
  	spi->chip_select = value;
  
diff --git a/target/linux/bcm27xx/patches-5.4/950-0690-SQUASH-spi-Demote-SPI_CS_HIGH-warning-to-KERN_DEBUG.patch b/target/linux/bcm27xx/patches-5.4/950-0690-SQUASH-spi-Demote-SPI_CS_HIGH-warning-to-KERN_DEBUG.patch
index fee107876a1..b821afb08b4 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0690-SQUASH-spi-Demote-SPI_CS_HIGH-warning-to-KERN_DEBUG.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0690-SQUASH-spi-Demote-SPI_CS_HIGH-warning-to-KERN_DEBUG.patch
@@ -15,7 +15,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -3122,8 +3122,8 @@ int spi_setup(struct spi_device *spi)
+@@ -3128,8 +3128,8 @@ int spi_setup(struct spi_device *spi)
  
  	if (ctlr->use_gpio_descriptors && ctlr->cs_gpiods &&
  	    ctlr->cs_gpiods[spi->chip_select] && !(spi->mode & SPI_CS_HIGH)) {
diff --git a/target/linux/bcm27xx/patches-5.4/950-0788-Revert-SQUASH-Fix-spi-driver-compiler-warnings.patch b/target/linux/bcm27xx/patches-5.4/950-0788-Revert-SQUASH-Fix-spi-driver-compiler-warnings.patch
index 437e5aba595..fad57b48639 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0788-Revert-SQUASH-Fix-spi-driver-compiler-warnings.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0788-Revert-SQUASH-Fix-spi-driver-compiler-warnings.patch
@@ -20,4 +20,4 @@ See: https://github.com/raspberrypi/linux/pull/3687
 +	enum gpio_lookup_flags lflags;
  	u32 cs;
  
- 	/*
+ 	if (spi->chip_select >= BCM2835_SPI_NUM_CS) {
diff --git a/target/linux/bcm27xx/patches-5.4/950-0789-Revert-spi-spi-bcm2835-Disable-forced-software-CS.patch b/target/linux/bcm27xx/patches-5.4/950-0789-Revert-spi-spi-bcm2835-Disable-forced-software-CS.patch
index 14793352172..ac0684be862 100644
--- a/target/linux/bcm27xx/patches-5.4/950-0789-Revert-spi-spi-bcm2835-Disable-forced-software-CS.patch
+++ b/target/linux/bcm27xx/patches-5.4/950-0789-Revert-spi-spi-bcm2835-Disable-forced-software-CS.patch
@@ -13,7 +13,7 @@ See: https://github.com/raspberrypi/linux/pull/3687
 
 --- a/drivers/spi/spi-bcm2835.c
 +++ b/drivers/spi/spi-bcm2835.c
-@@ -1235,6 +1235,43 @@ static int bcm2835_spi_setup(struct spi_
+@@ -1241,6 +1241,43 @@ static int bcm2835_spi_setup(struct spi_
  		return -EINVAL;
  	}
  
diff --git a/target/linux/generic/config-5.4 b/target/linux/generic/config-5.4
index f5e976a6910..fe5204abb55 100644
--- a/target/linux/generic/config-5.4
+++ b/target/linux/generic/config-5.4
@@ -3833,6 +3833,7 @@ CONFIG_NMI_LOG_BUF_SHIFT=13
 # CONFIG_NVMEM_SYSFS is not set
 # CONFIG_NVME_FC is not set
 # CONFIG_NVME_TARGET is not set
+# CONFIG_NVME_TCP is not set
 # CONFIG_NVRAM is not set
 # CONFIG_NV_TCO is not set
 # CONFIG_NXP_STB220 is not set
diff --git a/target/linux/generic/hack-5.4/221-module_exports.patch b/target/linux/generic/hack-5.4/221-module_exports.patch
index 09855b04d1f..ef6e980892b 100644
--- a/target/linux/generic/hack-5.4/221-module_exports.patch
+++ b/target/linux/generic/hack-5.4/221-module_exports.patch
@@ -56,7 +56,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  	}								\
  									\
  	/* __*init sections */						\
-@@ -903,6 +913,8 @@
+@@ -904,6 +914,8 @@
  	EXIT_TEXT							\
  	EXIT_DATA							\
  	EXIT_CALL							\
diff --git a/target/linux/mediatek/patches-5.4/0001-v5.7-spi-make-spi-max-frequency-optional.patch b/target/linux/mediatek/patches-5.4/0001-v5.7-spi-make-spi-max-frequency-optional.patch
index 8487c3dda0b..79ce15c37b6 100644
--- a/target/linux/mediatek/patches-5.4/0001-v5.7-spi-make-spi-max-frequency-optional.patch
+++ b/target/linux/mediatek/patches-5.4/0001-v5.7-spi-make-spi-max-frequency-optional.patch
@@ -20,7 +20,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -1803,13 +1803,8 @@ static int of_spi_parse_dt(struct spi_co
+@@ -1809,13 +1809,8 @@ static int of_spi_parse_dt(struct spi_co
  		spi->mode |= SPI_CS_HIGH;
  
  	/* Device speed */