kernel: bump 5.10 to 5.10.168
authorJohn Audia <therealgraysky@proton.me>
Wed, 15 Feb 2023 19:05:27 +0000 (14:05 -0500)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 18 Feb 2023 16:41:23 +0000 (17:41 +0100)
Manually rebased:
  backport-5.10/804-v5.14-0001-nvmem-core-allow-specifying-of_node.patch

Removed upstreamed:
  generic-backport/807-v5.17-0003-nvmem-core-Fix-a-conflict-between-MTD-and-NVMEM-on-w.patch[1]

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.10.168&id=34ec4c7831c416ac56619477f1701986634a7efc

Build system: x86_64
Build-tested: ramips/tplink_archer-a6-v3
Run-tested: ramips/tplink_archer-a6-v3

Signed-off-by: John Audia <therealgraysky@proton.me>
include/kernel-5.10
target/linux/ath79/patches-5.10/910-unaligned_access_hacks.patch
target/linux/generic/backport-5.10/801-v5.11-0001-nvmem-core-Add-support-for-keepout-regions.patch
target/linux/generic/backport-5.10/804-v5.14-0001-nvmem-core-allow-specifying-of_node.patch
target/linux/generic/backport-5.10/805-v5.15-0003-nvmem-core-fix-error-handling-while-validating-keepo.patch
target/linux/generic/backport-5.10/806-v5.16-0002-nvmem-core-add-nvmem-cell-post-processing-callback.patch
target/linux/generic/backport-5.10/807-v5.17-0003-nvmem-core-Fix-a-conflict-between-MTD-and-NVMEM-on-w.patch [deleted file]
target/linux/generic/backport-5.10/811-v6.1-0001-nvmem-core-Fix-memleak-in-nvmem_register.patch
target/linux/generic/backport-5.10/811-v6.1-0003-nvmem-core-add-error-handling-for-dev_set_name.patch
target/linux/generic/pending-5.10/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch

index 01985403611b2a782c0f1c1163c5af59e3f56e65..e0bdccaf43daa3c7abc8b9d272714584b1f61bec 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-5.10 = .167
-LINUX_KERNEL_HASH-5.10.167 = d807f97812e566410cd13b3170009e0d7552748d4f22d608ffd4dbd7f85bf9c6
+LINUX_VERSION-5.10 = .168
+LINUX_KERNEL_HASH-5.10.168 = b67d2596ba8d30510f743f31899c94c43eaf006a254ff44d7fc6ea26e7ab359c
index 1891a6425ec57e5f2bd021fcc56338bed6cd63b7..0de433914da8e80c52c6418fce65c1d6453d5aa0 100644 (file)
@@ -162,7 +162,7 @@ SVN-Revision: 35130
  
 --- a/include/uapi/linux/ip.h
 +++ b/include/uapi/linux/ip.h
-@@ -105,7 +105,7 @@ struct iphdr {
+@@ -106,7 +106,7 @@ struct iphdr {
                __be32  daddr;
        );
        /*The options start here. */
@@ -173,7 +173,7 @@ SVN-Revision: 35130
  struct ip_auth_hdr {
 --- a/include/uapi/linux/ipv6.h
 +++ b/include/uapi/linux/ipv6.h
-@@ -134,7 +134,7 @@ struct ipv6hdr {
+@@ -135,7 +135,7 @@ struct ipv6hdr {
                struct  in6_addr        saddr;
                struct  in6_addr        daddr;
        );
index 6fe5032f33dadac262ddba866d527ddfecff308e..23879d40af56fcfb1dad9c369dbecf5dca1f2e06 100644 (file)
@@ -203,7 +203,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  static int nvmem_add_cells_from_of(struct nvmem_device *nvmem)
  {
        struct device_node *parent, *child;
-@@ -655,6 +792,8 @@ struct nvmem_device *nvmem_register(cons
+@@ -656,6 +793,8 @@ struct nvmem_device *nvmem_register(cons
        nvmem->type = config->type;
        nvmem->reg_read = config->reg_read;
        nvmem->reg_write = config->reg_write;
@@ -212,7 +212,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
        if (!config->no_of_node)
                nvmem->dev.of_node = config->dev->of_node;
  
-@@ -679,6 +818,12 @@ struct nvmem_device *nvmem_register(cons
+@@ -680,6 +819,12 @@ struct nvmem_device *nvmem_register(cons
        nvmem->dev.groups = nvmem_dev_groups;
  #endif
  
@@ -256,7 +256,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
   * @type:     Type of the nvmem storage
   * @read_only:        Device is read-only.
   * @root_only:        Device is accessibly to root only.
-@@ -66,6 +81,8 @@ struct nvmem_config {
+@@ -67,6 +82,8 @@ struct nvmem_config {
        struct gpio_desc        *wp_gpio;
        const struct nvmem_cell_info    *cells;
        int                     ncells;
index 8c5a55e3646f9f9ce633a394804bf102ff33052b..5889e619106af1483235872504a550b5a14be7c1 100644 (file)
@@ -49,7 +49,7 @@ Link: https://lore.kernel.org/linux-mtd/20210424110608.15748-2-michael@walle.cc
 
 --- a/drivers/nvmem/core.c
 +++ b/drivers/nvmem/core.c
-@@ -794,7 +794,9 @@ struct nvmem_device *nvmem_register(cons
+@@ -795,7 +795,9 @@ struct nvmem_device *nvmem_register(cons
        nvmem->reg_write = config->reg_write;
        nvmem->keepout = config->keepout;
        nvmem->nkeepout = config->nkeepout;
@@ -70,11 +70,11 @@ Link: https://lore.kernel.org/linux-mtd/20210424110608.15748-2-michael@walle.cc
   * @no_of_node:       Device should not use the parent's of_node even if it's !NULL.
   * @reg_read: Callback to read data.
   * @reg_write:        Callback to write data.
-@@ -86,6 +87,7 @@ struct nvmem_config {
+@@ -87,6 +88,7 @@ struct nvmem_config {
        enum nvmem_type         type;
        bool                    read_only;
        bool                    root_only;
 +      struct device_node      *of_node;
+       bool                    ignore_wp;
        bool                    no_of_node;
        nvmem_reg_read_t        reg_read;
-       nvmem_reg_write_t       reg_write;
index 59c9281cdb496a6964f05ae8f0513a6729dd98db..e5342e79d3c69ddb1ed7277dc70aab29534a743e 100644 (file)
@@ -20,7 +20,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 --- a/drivers/nvmem/core.c
 +++ b/drivers/nvmem/core.c
-@@ -826,8 +826,11 @@ struct nvmem_device *nvmem_register(cons
+@@ -827,8 +827,11 @@ struct nvmem_device *nvmem_register(cons
  
        if (nvmem->nkeepout) {
                rval = nvmem_validate_keepouts(nvmem);
index 787fea30375595300bddc6b27dfd2ac846e6ba48..a5d4ace4e53d5e6a97b09dd5474087b6bf013c5a 100644 (file)
@@ -30,7 +30,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
        struct gpio_desc        *wp_gpio;
        void *priv;
  };
-@@ -798,6 +799,7 @@ struct nvmem_device *nvmem_register(cons
+@@ -799,6 +800,7 @@ struct nvmem_device *nvmem_register(cons
        nvmem->type = config->type;
        nvmem->reg_read = config->reg_read;
        nvmem->reg_write = config->reg_write;
@@ -72,7 +72,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
   * @size:     Device size.
   * @word_size:        Minimum read/write access granularity.
   * @stride:   Minimum read/write access stride.
-@@ -92,6 +96,7 @@ struct nvmem_config {
+@@ -94,6 +98,7 @@ struct nvmem_config {
        bool                    no_of_node;
        nvmem_reg_read_t        reg_read;
        nvmem_reg_write_t       reg_write;
diff --git a/target/linux/generic/backport-5.10/807-v5.17-0003-nvmem-core-Fix-a-conflict-between-MTD-and-NVMEM-on-w.patch b/target/linux/generic/backport-5.10/807-v5.17-0003-nvmem-core-Fix-a-conflict-between-MTD-and-NVMEM-on-w.patch
deleted file mode 100644 (file)
index a9ef3e2..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From f6c052afe6f802d87c74153b7a57c43b2e9faf07 Mon Sep 17 00:00:00 2001
-From: Christophe Kerello <christophe.kerello@foss.st.com>
-Date: Sun, 20 Feb 2022 15:14:31 +0000
-Subject: [PATCH] nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios
- property
-
-Wp-gpios property can be used on NVMEM nodes and the same property can
-be also used on MTD NAND nodes. In case of the wp-gpios property is
-defined at NAND level node, the GPIO management is done at NAND driver
-level. Write protect is disabled when the driver is probed or resumed
-and is enabled when the driver is released or suspended.
-
-When no partitions are defined in the NAND DT node, then the NAND DT node
-will be passed to NVMEM framework. If wp-gpios property is defined in
-this node, the GPIO resource is taken twice and the NAND controller
-driver fails to probe.
-
-It would be possible to set config->wp_gpio at MTD level before calling
-nvmem_register function but NVMEM framework will toggle this GPIO on
-each write when this GPIO should only be controlled at NAND level driver
-to ensure that the Write Protect has not been enabled.
-
-A way to fix this conflict is to add a new boolean flag in nvmem_config
-named ignore_wp. In case ignore_wp is set, the GPIO resource will
-be managed by the provider.
-
-Fixes: 2a127da461a9 ("nvmem: add support for the write-protect pin")
-Cc: stable@vger.kernel.org
-Signed-off-by: Christophe Kerello <christophe.kerello@foss.st.com>
-Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
-Link: https://lore.kernel.org/r/20220220151432.16605-2-srinivas.kandagatla@linaro.org
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/nvmem/core.c           | 2 +-
- include/linux/nvmem-provider.h | 4 +++-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
---- a/drivers/nvmem/core.c
-+++ b/drivers/nvmem/core.c
-@@ -771,7 +771,7 @@ struct nvmem_device *nvmem_register(cons
-       if (config->wp_gpio)
-               nvmem->wp_gpio = config->wp_gpio;
--      else
-+      else if (!config->ignore_wp)
-               nvmem->wp_gpio = gpiod_get_optional(config->dev, "wp",
-                                                   GPIOD_OUT_HIGH);
-       if (IS_ERR(nvmem->wp_gpio)) {
---- a/include/linux/nvmem-provider.h
-+++ b/include/linux/nvmem-provider.h
-@@ -70,7 +70,8 @@ struct nvmem_keepout {
-  * @word_size:        Minimum read/write access granularity.
-  * @stride:   Minimum read/write access stride.
-  * @priv:     User context passed to read/write callbacks.
-- * @wp-gpio:   Write protect pin
-+ * @wp-gpio:  Write protect pin
-+ * @ignore_wp:  Write Protect pin is managed by the provider.
-  *
-  * Note: A default "nvmem<id>" name will be assigned to the device if
-  * no name is specified in its configuration. In such case "<id>" is
-@@ -92,6 +93,7 @@ struct nvmem_config {
-       enum nvmem_type         type;
-       bool                    read_only;
-       bool                    root_only;
-+      bool                    ignore_wp;
-       struct device_node      *of_node;
-       bool                    no_of_node;
-       nvmem_reg_read_t        reg_read;
index 4d7ad9bba7573e708282196bd271693848338950..698e737973bf5b0c65a1454141f8a672b5f56841 100644 (file)
@@ -22,7 +22,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 --- a/drivers/nvmem/core.c
 +++ b/drivers/nvmem/core.c
-@@ -829,21 +829,18 @@ struct nvmem_device *nvmem_register(cons
+@@ -830,21 +830,18 @@ struct nvmem_device *nvmem_register(cons
        nvmem->dev.groups = nvmem_dev_groups;
  #endif
  
index 34a28fa6fe35a4babf8c17d5f55fd1e1d2978391..322a1f6b55b670f16b4dc2775dd44ad0dfaf610b 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 --- a/drivers/nvmem/core.c
 +++ b/drivers/nvmem/core.c
-@@ -810,18 +810,24 @@ struct nvmem_device *nvmem_register(cons
+@@ -811,18 +811,24 @@ struct nvmem_device *nvmem_register(cons
  
        switch (config->id) {
        case NVMEM_DEVID_NONE:
index e00382149a65c0b4f1d8105efc07e8d17353ad99..1adfd22e87b72694d98ccc983451880ee5fe83e7 100644 (file)
@@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de>
 
 --- a/mm/page_alloc.c
 +++ b/mm/page_alloc.c
-@@ -7104,7 +7104,7 @@ static void __ref alloc_node_mem_map(str
+@@ -7107,7 +7107,7 @@ static void __ref alloc_node_mem_map(str
        if (pgdat == NODE_DATA(0)) {
                mem_map = NODE_DATA(0)->node_mem_map;
                if (page_to_pfn(mem_map) != pgdat->node_start_pfn)