kernel: bump 6.6 to 6.6.33 and adjust subarches
authorJohn Audia <therealgraysky@proton.me>
Wed, 12 Jun 2024 20:46:19 +0000 (16:46 -0400)
committerHauke Mehrtens <hauke@hauke-m.de>
Sat, 15 Jun 2024 20:44:06 +0000 (22:44 +0200)
This commit accomplishes three goals:
1. bump 6.6 to 6.6.33
2. kernel: modules: video: change package definition for fb for
   upstream changes[1]
3. kernel/multiple subtargets: add CONFIG_FB_IOMEM_FOPS=y to all
   subtargets which also set CONFIG_FB_CORE=y.

Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.33

Removed upstreamed:
pending-6.6/195-block-fix-and-simplify-blkdevparts-cmdline-parsing.patch[2]
gemini/patches-6.6/0003-net-ethernet-cortina-Locking-fixes.patch[3]

Manually rebased:
ramips/patches-6.6/810-uvc-add-iPassion-iP2970-support.patch

All other patches automatically rebased.

1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=c00e8fd749502c02085534c60b1edca4fc479c91
2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.33&id=99bbbd9aea059f8a206736dc601be2ae61d366fb
3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.33&id=8f6f82d6a205ceb3aba8d279f9ff6eeea0b1689b

Build system: x86/64
Build-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3
Run-tested: x86/64/AMD Cezanne, flogic/xiaomi_redmi-router-ax6000-ubootmod, ramips/tplink_archer-a6-v3

Tested-by: Stijn Segers <foss@volatilesystems.org>
Signed-off-by: John Audia <therealgraysky@proton.me>
27 files changed:
include/kernel-6.6
package/kernel/linux/modules/video.mk
target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch
target/linux/gemini/config-6.6
target/linux/gemini/patches-6.6/0001-net-ethernet-cortina-Drop-TSO-support.patch
target/linux/gemini/patches-6.6/0003-net-ethernet-cortina-Locking-fixes.patch [deleted file]
target/linux/generic/hack-6.6/402-mtd-blktrans-call-add-disks-after-mtd-device.patch
target/linux/generic/hack-6.6/711-net-dsa-mv88e6xxx-disable-ATU-violation.patch
target/linux/generic/pending-6.6/195-block-fix-and-simplify-blkdevparts-cmdline-parsing.patch [deleted file]
target/linux/generic/pending-6.6/510-block-add-uImage.FIT-subimage-block-driver.patch
target/linux/generic/pending-6.6/630-packet_socket_type.patch
target/linux/generic/pending-6.6/680-net-add-TCP-fraglist-GRO-support.patch
target/linux/generic/pending-6.6/739-05-net-pcs-add-driver-for-MediaTek-USXGMII-PCS.patch
target/linux/generic/pending-6.6/760-net-core-add-optional-threading-for-backlog-processi.patch
target/linux/generic/pending-6.6/768-net-dsa-mv88e6xxx-Request-assisted-learning-on-CPU-port.patch
target/linux/ipq40xx/patches-6.6/700-net-ipqess-introduce-the-Qualcomm-IPQESS-driver.patch
target/linux/ipq40xx/patches-6.6/701-net-dsa-add-out-of-band-tagging-protocol.patch
target/linux/layerscape/armv8_64b/config-6.6
target/linux/loongarch64/config-6.6
target/linux/mediatek/mt7623/config-6.6
target/linux/mediatek/patches-6.6/041-block-fit-partition-parser.patch
target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch
target/linux/ramips/patches-6.6/810-uvc-add-iPassion-iP2970-support.patch
target/linux/tegra/config-6.6
target/linux/x86/64/config-6.6
target/linux/x86/generic/config-6.6
target/linux/x86/legacy/config-6.6

index 896c95ea7d8a883e18ad41b7c12239af8e8a8435..9ea7e286458643f346835014ae78ab9c832ee2d7 100644 (file)
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.6 = .32
-LINUX_KERNEL_HASH-6.6.32 = aaa824eaf07f61911d22b75ff090a403c3dd0bd73e23933e0bba8b5971436ce1
+LINUX_VERSION-6.6 = .33
+LINUX_KERNEL_HASH-6.6.33 = a13ebc20dc2a75722699949af74aa86a4ce5d544d6daaa6a7de4e8c81b40de97
index e40915fbd58db8754abc348db94473f9678df1d5..b59907c643f84c55b60322acc20f3e6e531ff3af 100644 (file)
@@ -106,7 +106,8 @@ define KernelPackage/fb
        CONFIG_VT_CONSOLE=y \
        CONFIG_VT_HW_CONSOLE_BINDING=y
   FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb.ko \
-       $(LINUX_DIR)/lib/fonts/font.ko
+       $(LINUX_DIR)/lib/fonts/font.ko \
+       $(LINUX_DIR)/drivers/video/fbdev/core/fb_io_fops.ko@ge6.6
   AUTOLOAD:=$(call AutoLoad,06,fb font)
 endef
 
index 0190da85de7c1fc9a2bbbe13cbbec5fd4a5d1f41..49a65ec62218a1392ad1202f2f8692900e193368 100644 (file)
@@ -337,7 +337,7 @@ SVN-Revision: 35130
  #endif /* _LINUX_TYPES_H */
 --- a/net/ipv4/af_inet.c
 +++ b/net/ipv4/af_inet.c
-@@ -1506,8 +1506,8 @@ struct sk_buff *inet_gro_receive(struct
+@@ -1508,8 +1508,8 @@ struct sk_buff *inet_gro_receive(struct
                goto out;
  
        NAPI_GRO_CB(skb)->proto = proto;
index d670279135f9580366b64e9ece15f9bd3dabb082..87174d292f4b01260de206848b466f9734726ec3 100644 (file)
@@ -162,6 +162,7 @@ CONFIG_FB=y
 CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DMAMEM_HELPERS=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_SYSMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
 CONFIG_FB_SYS_COPYAREA=y
index 43e0cb283aac105169e2792391b3ece19bebcc32..6fbd0487eb9f5f6f5f3d50d989e55191f88f7f7e 100644 (file)
@@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
  /**
   * struct gmac_queue_page - page buffer per-page info
-@@ -1143,23 +1142,13 @@ static int gmac_map_tx_bufs(struct net_d
+@@ -1148,23 +1147,13 @@ static int gmac_map_tx_bufs(struct net_d
        struct gmac_txdesc *txd;
        skb_frag_t *skb_frag;
        dma_addr_t mapping;
diff --git a/target/linux/gemini/patches-6.6/0003-net-ethernet-cortina-Locking-fixes.patch b/target/linux/gemini/patches-6.6/0003-net-ethernet-cortina-Locking-fixes.patch
deleted file mode 100644 (file)
index 661e928..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-From 81889eb2b37bc21df4ff259441e8fc12d4f27cd9 Mon Sep 17 00:00:00 2001
-From: Linus Walleij <linus.walleij@linaro.org>
-Date: Thu, 9 May 2024 08:48:31 +0200
-Subject: [PATCH] net: ethernet: cortina: Locking fixes
-
-This fixes a probably long standing problem in the Cortina
-Gemini ethernet driver: there are some paths in the code
-where the IRQ registers are written without taking the proper
-locks.
-
-Fixes: 4d5ae32f5e1e ("net: ethernet: Add a driver for Gemini gigabit ethernet")
-Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
----
- drivers/net/ethernet/cortina/gemini.c | 12 ++++++++++--
- 1 file changed, 10 insertions(+), 2 deletions(-)
-
---- a/drivers/net/ethernet/cortina/gemini.c
-+++ b/drivers/net/ethernet/cortina/gemini.c
-@@ -1107,10 +1107,13 @@ static void gmac_tx_irq_enable(struct ne
- {
-       struct gemini_ethernet_port *port = netdev_priv(netdev);
-       struct gemini_ethernet *geth = port->geth;
-+      unsigned long flags;
-       u32 val, mask;
-       netdev_dbg(netdev, "%s device %d\n", __func__, netdev->dev_id);
-+      spin_lock_irqsave(&geth->irq_lock, flags);
-+
-       mask = GMAC0_IRQ0_TXQ0_INTS << (6 * netdev->dev_id + txq);
-       if (en)
-@@ -1119,6 +1122,8 @@ static void gmac_tx_irq_enable(struct ne
-       val = readl(geth->base + GLOBAL_INTERRUPT_ENABLE_0_REG);
-       val = en ? val | mask : val & ~mask;
-       writel(val, geth->base + GLOBAL_INTERRUPT_ENABLE_0_REG);
-+
-+      spin_unlock_irqrestore(&geth->irq_lock, flags);
- }
- static void gmac_tx_irq(struct net_device *netdev, unsigned int txq_num)
-@@ -1415,15 +1420,19 @@ static unsigned int gmac_rx(struct net_d
-       union gmac_rxdesc_3 word3;
-       struct page *page = NULL;
-       unsigned int page_offs;
-+      unsigned long flags;
-       unsigned short r, w;
-       union dma_rwptr rw;
-       dma_addr_t mapping;
-       int frag_nr = 0;
-+      spin_lock_irqsave(&geth->irq_lock, flags);
-       rw.bits32 = readl(ptr_reg);
-       /* Reset interrupt as all packages until here are taken into account */
-       writel(DEFAULT_Q0_INT_BIT << netdev->dev_id,
-              geth->base + GLOBAL_INTERRUPT_STATUS_1_REG);
-+      spin_unlock_irqrestore(&geth->irq_lock, flags);
-+
-       r = rw.bits.rptr;
-       w = rw.bits.wptr;
-@@ -1726,10 +1735,9 @@ static irqreturn_t gmac_irq(int irq, voi
-               gmac_update_hw_stats(netdev);
-       if (val & (GMAC0_RX_OVERRUN_INT_BIT << (netdev->dev_id * 8))) {
-+              spin_lock(&geth->irq_lock);
-               writel(GMAC0_RXDERR_INT_BIT << (netdev->dev_id * 8),
-                      geth->base + GLOBAL_INTERRUPT_STATUS_4_REG);
--
--              spin_lock(&geth->irq_lock);
-               u64_stats_update_begin(&port->ir_stats_syncp);
-               ++port->stats.rx_fifo_errors;
-               u64_stats_update_end(&port->ir_stats_syncp);
index 29607b155da94cf3de9da8d698b1705fab393f3c..24b7963cbf30e31a9dadbb31e722d412d0a2eaa8 100644 (file)
@@ -91,7 +91,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
  
  #include "mtdcore.h"
  
-@@ -1125,6 +1126,8 @@ int mtd_device_parse_register(struct mtd
+@@ -1127,6 +1128,8 @@ int mtd_device_parse_register(struct mtd
                register_reboot_notifier(&mtd->reboot_notifier);
        }
  
index 89c98f6fbc51ae7035e81da67c470609796d15f6..dbf1da04ef7bd07d6beed87f82de2b7d83de6b53 100644 (file)
@@ -9,7 +9,7 @@ Subject: [PATCH] net/dsa/mv88e6xxx: disable ATU violation
 
 --- a/drivers/net/dsa/mv88e6xxx/chip.c
 +++ b/drivers/net/dsa/mv88e6xxx/chip.c
-@@ -3365,6 +3365,9 @@ static int mv88e6xxx_setup_port(struct m
+@@ -3375,6 +3375,9 @@ static int mv88e6xxx_setup_port(struct m
        else
                reg = 1 << port;
  
diff --git a/target/linux/generic/pending-6.6/195-block-fix-and-simplify-blkdevparts-cmdline-parsing.patch b/target/linux/generic/pending-6.6/195-block-fix-and-simplify-blkdevparts-cmdline-parsing.patch
deleted file mode 100644 (file)
index d504a74..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-From patchwork Sun Apr 21 07:39:52 2024
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-X-Patchwork-Submitter: INAGAKI Hiroshi <musashino.open@gmail.com>
-X-Patchwork-Id: 13637306
-From: INAGAKI Hiroshi <musashino.open@gmail.com>
-To: axboe@kernel.dk
-Cc: yang.yang29@zte.com,
-       justinstitt@google.com,
-       xu.panda@zte.com.cn,
-       linux-block@vger.kernel.org,
-       linux-kernel@vger.kernel.org,
-       INAGAKI Hiroshi <musashino.open@gmail.com>,
-       Naohiro Aota <naota@elisp.net>
-Subject: [PATCH] block: fix and simplify blkdevparts= cmdline parsing
-Date: Sun, 21 Apr 2024 16:39:52 +0900
-Message-ID: <20240421074005.565-1-musashino.open@gmail.com>
-X-Mailer: git-send-email 2.42.0.windows.2
-Precedence: bulk
-X-Mailing-List: linux-block@vger.kernel.org
-List-Id: <linux-block.vger.kernel.org>
-List-Subscribe: <mailto:linux-block+subscribe@vger.kernel.org>
-List-Unsubscribe: <mailto:linux-block+unsubscribe@vger.kernel.org>
-MIME-Version: 1.0
-
-Fix the cmdline parsing of the "blkdevparts=" parameter using strsep(),
-which makes the code simpler.
-
-Before commit 146afeb235cc ("block: use strscpy() to instead of
-strncpy()"), we used a strncpy() to copy a block device name and partition
-names. The commit simply replaced a strncpy() and NULL termination with
-a strscpy(). It did not update calculations of length passed to strscpy().
-While the length passed to strncpy() is just a length of valid characters
-without NULL termination ('\0'), strscpy() takes it as a length of the
-destination buffer, including a NULL termination.
-
-Since the source buffer is not necessarily NULL terminated, the current
-code copies "length - 1" characters and puts a NULL character in the
-destination buffer. It replaces the last character with NULL and breaks
-the parsing.
-
-As an example, that buffer will be passed to parse_parts() and breaks
-parsing sub-partitions due to the missing ')' at the end, like the
-following.
-
-example (Check Point V-80 & OpenWrt):
-
-- Linux Kernel 6.6
-
-  [    0.000000] Kernel command line: console=ttyS0,115200 earlycon=uart8250,mmio32,0xf0512000 crashkernel=30M mvpp2x.queue_mode=1 blkdevparts=mmcblk1:48M@10M(kernel-1),1M(dtb-1),720M(rootfs-1),48M(kernel-2),1M(dtb-2),720M(rootfs-2),300M(default_sw),650M(logs),1M(preset_cfg),1M(adsl),-(storage) maxcpus=4
-  ...
-  [    0.884016] mmc1: new HS200 MMC card at address 0001
-  [    0.889951] mmcblk1: mmc1:0001 004GA0 3.69 GiB
-  [    0.895043] cmdline partition format is invalid.
-  [    0.895704]  mmcblk1: p1
-  [    0.903447] mmcblk1boot0: mmc1:0001 004GA0 2.00 MiB
-  [    0.908667] mmcblk1boot1: mmc1:0001 004GA0 2.00 MiB
-  [    0.913765] mmcblk1rpmb: mmc1:0001 004GA0 512 KiB, chardev (248:0)
-
-  1. "48M@10M(kernel-1),..." is passed to strscpy() with length=17
-     from parse_parts()
-  2. strscpy() returns -E2BIG and the destination buffer has
-     "48M@10M(kernel-1\0"
-  3. "48M@10M(kernel-1\0" is passed to parse_subpart()
-  4. parse_subpart() fails to find ')' when parsing a partition name,
-     and returns error
-
-- Linux Kernel 6.1
-
-  [    0.000000] Kernel command line: console=ttyS0,115200 earlycon=uart8250,mmio32,0xf0512000 crashkernel=30M mvpp2x.queue_mode=1 blkdevparts=mmcblk1:48M@10M(kernel-1),1M(dtb-1),720M(rootfs-1),48M(kernel-2),1M(dtb-2),720M(rootfs-2),300M(default_sw),650M(logs),1M(preset_cfg),1M(adsl),-(storage) maxcpus=4
-  ...
-  [    0.953142] mmc1: new HS200 MMC card at address 0001
-  [    0.959114] mmcblk1: mmc1:0001 004GA0 3.69 GiB
-  [    0.964259]  mmcblk1: p1(kernel-1) p2(dtb-1) p3(rootfs-1) p4(kernel-2) p5(dtb-2) 6(rootfs-2) p7(default_sw) p8(logs) p9(preset_cfg) p10(adsl) p11(storage)
-  [    0.979174] mmcblk1boot0: mmc1:0001 004GA0 2.00 MiB
-  [    0.984674] mmcblk1boot1: mmc1:0001 004GA0 2.00 MiB
-  [    0.989926] mmcblk1rpmb: mmc1:0001 004GA0 512 KiB, chardev (248:0
-
-By the way, strscpy() takes a length of destination buffer and it is
-often confusing when copying characters with a specified length. Using
-strsep() helps to separate the string by the specified character. Then,
-we can use strscpy() naturally with the size of the destination buffer.
-
-Separating the string on the fly is also useful to omit the redundant
-string copy, reducing memory usage and improve the code readability.
-
-Fixes: 146afeb235cc ("block: use strscpy() to instead of strncpy()")
-Suggested-by: Naohiro Aota <naota@elisp.net>
-Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
-Reviewed-by: Daniel Golle <daniel@makrotopia.org>
----
- block/partitions/cmdline.c | 49 ++++++++++----------------------------
- 1 file changed, 12 insertions(+), 37 deletions(-)
-
---- a/block/partitions/cmdline.c
-+++ b/block/partitions/cmdline.c
-@@ -70,8 +70,8 @@ static int parse_subpart(struct cmdline_
-       }
-       if (*partdef == '(') {
--              int length;
--              char *next = strchr(++partdef, ')');
-+              partdef++;
-+              char *next = strsep(&partdef, ")");
-               if (!next) {
-                       pr_warn("cmdline partition format is invalid.");
-@@ -79,11 +79,7 @@ static int parse_subpart(struct cmdline_
-                       goto fail;
-               }
--              length = min_t(int, next - partdef,
--                             sizeof(new_subpart->name) - 1);
--              strscpy(new_subpart->name, partdef, length);
--
--              partdef = ++next;
-+              strscpy(new_subpart->name, next, sizeof(new_subpart->name));
-       } else
-               new_subpart->name[0] = '\0';
-@@ -117,14 +113,12 @@ static void free_subpart(struct cmdline_
-       }
- }
--static int parse_parts(struct cmdline_parts **parts, const char *bdevdef)
-+static int parse_parts(struct cmdline_parts **parts, char *bdevdef)
- {
-       int ret = -EINVAL;
-       char *next;
--      int length;
-       struct cmdline_subpart **next_subpart;
-       struct cmdline_parts *newparts;
--      char buf[BDEVNAME_SIZE + 32 + 4];
-       *parts = NULL;
-@@ -132,28 +126,19 @@ static int parse_parts(struct cmdline_pa
-       if (!newparts)
-               return -ENOMEM;
--      next = strchr(bdevdef, ':');
-+      next = strsep(&bdevdef, ":");
-       if (!next) {
-               pr_warn("cmdline partition has no block device.");
-               goto fail;
-       }
--      length = min_t(int, next - bdevdef, sizeof(newparts->name) - 1);
--      strscpy(newparts->name, bdevdef, length);
-+      strscpy(newparts->name, next, sizeof(newparts->name));
-       newparts->nr_subparts = 0;
-       next_subpart = &newparts->subpart;
--      while (next && *(++next)) {
--              bdevdef = next;
--              next = strchr(bdevdef, ',');
--
--              length = (!next) ? (sizeof(buf) - 1) :
--                      min_t(int, next - bdevdef, sizeof(buf) - 1);
--
--              strscpy(buf, bdevdef, length);
--
--              ret = parse_subpart(next_subpart, buf);
-+      while ((next = strsep(&bdevdef, ","))) {
-+              ret = parse_subpart(next_subpart, next);
-               if (ret)
-                       goto fail;
-@@ -199,24 +184,17 @@ static int cmdline_parts_parse(struct cm
-       *parts = NULL;
--      next = pbuf = buf = kstrdup(cmdline, GFP_KERNEL);
-+      pbuf = buf = kstrdup(cmdline, GFP_KERNEL);
-       if (!buf)
-               return -ENOMEM;
-       next_parts = parts;
--      while (next && *pbuf) {
--              next = strchr(pbuf, ';');
--              if (next)
--                      *next = '\0';
--
--              ret = parse_parts(next_parts, pbuf);
-+      while ((next = strsep(&pbuf, ";"))) {
-+              ret = parse_parts(next_parts, next);
-               if (ret)
-                       goto fail;
--              if (next)
--                      pbuf = ++next;
--
-               next_parts = &(*next_parts)->next_parts;
-       }
-@@ -250,7 +228,6 @@ static struct cmdline_parts *bdev_parts;
- static int add_part(int slot, struct cmdline_subpart *subpart,
-               struct parsed_partitions *state)
- {
--      int label_min;
-       struct partition_meta_info *info;
-       char tmp[sizeof(info->volname) + 4];
-@@ -262,9 +239,7 @@ static int add_part(int slot, struct cmd
-       info = &state->parts[slot].info;
--      label_min = min_t(int, sizeof(info->volname) - 1,
--                        sizeof(subpart->name));
--      strscpy(info->volname, subpart->name, label_min);
-+      strscpy(info->volname, subpart->name, sizeof(info->volname));
-       snprintf(tmp, sizeof(tmp), "(%s)", info->volname);
-       strlcat(state->pp_buf, tmp, PAGE_SIZE);
index 117edbcef2d438ab72ac294c1f91afd46916740f..26ef29ca87251fc8a4f41a540bbb8afef223ba9d 100644 (file)
@@ -36,7 +36,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
 
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -22006,6 +22006,12 @@ F:    Documentation/filesystems/ubifs-authe
+@@ -22014,6 +22014,12 @@ F:    Documentation/filesystems/ubifs-authe
  F:    Documentation/filesystems/ubifs.rst
  F:    fs/ubifs/
  
index 02d6700af96bde263e8ea35e2975a80d3d97cc08..10a312776f7056a85395a8d5f56e692c8b943dd2 100644 (file)
@@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        if (!net_eq(dev_net(dev), sock_net(sk)))
                goto drop;
  
-@@ -3386,6 +3388,7 @@ static int packet_create(struct net *net
+@@ -3385,6 +3387,7 @@ static int packet_create(struct net *net
        mutex_init(&po->pg_vec_lock);
        po->rollover = NULL;
        po->prot_hook.func = packet_rcv;
@@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  
        if (sock->type == SOCK_PACKET)
                po->prot_hook.func = packet_rcv_spkt;
-@@ -4035,6 +4038,16 @@ packet_setsockopt(struct socket *sock, i
+@@ -4034,6 +4037,16 @@ packet_setsockopt(struct socket *sock, i
                packet_sock_flag_set(po, PACKET_SOCK_QDISC_BYPASS, val);
                return 0;
        }
@@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
        default:
                return -ENOPROTOOPT;
        }
-@@ -4094,6 +4107,13 @@ static int packet_getsockopt(struct sock
+@@ -4093,6 +4106,13 @@ static int packet_getsockopt(struct sock
        case PACKET_VNET_HDR_SZ:
                val = READ_ONCE(po->vnet_hdr_sz);
                break;
index cd7762667713c3a85bb08e09b7a741d2c15e2eef..7672f46d203722a5de26350974643db659f829f1 100644 (file)
@@ -31,7 +31,7 @@ Signe-off-by: Felix Fietkau <nbd@nbd.name>
  static inline void gro_normal_list(struct napi_struct *napi)
 --- a/include/net/tcp.h
 +++ b/include/net/tcp.h
-@@ -2082,7 +2082,10 @@ void tcp_v4_destroy_sock(struct sock *sk
+@@ -2083,7 +2083,10 @@ void tcp_v4_destroy_sock(struct sock *sk
  
  struct sk_buff *tcp_gso_segment(struct sk_buff *skb,
                                netdev_features_t features);
index 73ec05464a06d34f1e38f4071c6308fc3bc2e1c1..c7fcac3abfd670b9e8987ed0f5f5aad9377b75eb 100644 (file)
@@ -19,7 +19,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
 
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -13348,7 +13348,9 @@ M:     Daniel Golle <daniel@makrotopia.org>
+@@ -13356,7 +13356,9 @@ M:     Daniel Golle <daniel@makrotopia.org>
  L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/pcs/pcs-mtk-lynxi.c
index 5372171b42e477204171219d056e67f921a1b2ea..8a9066bf12c103806073592fe874acbeae896ef4 100644 (file)
@@ -157,7 +157,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  void netif_napi_add_weight(struct net_device *dev, struct napi_struct *napi,
                           int (*poll)(struct napi_struct *, int), int weight)
  {
-@@ -11306,6 +11377,9 @@ static int dev_cpu_dead(unsigned int old
+@@ -11307,6 +11378,9 @@ static int dev_cpu_dead(unsigned int old
        raise_softirq_irqoff(NET_TX_SOFTIRQ);
        local_irq_enable();
  
@@ -167,7 +167,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
  #ifdef CONFIG_RPS
        remsd = oldsd->rps_ipi_list;
        oldsd->rps_ipi_list = NULL;
-@@ -11621,6 +11695,7 @@ static int __init net_dev_init(void)
+@@ -11622,6 +11696,7 @@ static int __init net_dev_init(void)
                INIT_CSD(&sd->defer_csd, trigger_rx_softirq, sd);
                spin_lock_init(&sd->defer_lock);
  
index ea3c6c8fe9e3599353723feab9f3d61214b21556..56a015b71edba9a0bb7b5abaea36e657fd913b44 100644 (file)
@@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com>
 
 --- a/drivers/net/dsa/mv88e6xxx/chip.c
 +++ b/drivers/net/dsa/mv88e6xxx/chip.c
-@@ -6947,6 +6947,7 @@ static int mv88e6xxx_register_switch(str
+@@ -6989,6 +6989,7 @@ static int mv88e6xxx_register_switch(str
        ds->ops = &mv88e6xxx_switch_ops;
        ds->ageing_time_min = chip->info->age_time_coeff;
        ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX;
index a15efe57d8e91e73625b184ec42f68fb2a6c0cc7..5c57f73fa674ed453500d6a3f041efc4a5725ad4 100644 (file)
@@ -32,7 +32,7 @@ Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
 
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -17708,6 +17708,13 @@ L:    netdev@vger.kernel.org
+@@ -17716,6 +17716,13 @@ L:    netdev@vger.kernel.org
  S:    Maintained
  F:    drivers/net/ethernet/qualcomm/emac/
  
index f535ef2d8955fd3cf261b59df1a4258c3c12c8ed..9c4b520fcda0a1559e1368c3e89f670cc68ab2af 100644 (file)
@@ -64,7 +64,7 @@ Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
  
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -17714,6 +17714,7 @@ L:     netdev@vger.kernel.org
+@@ -17722,6 +17722,7 @@ L:     netdev@vger.kernel.org
  S:    Maintained
  F:    Documentation/devicetree/bindings/net/qcom,ipq4019-ess-edma.yaml
  F:    drivers/net/ethernet/qualcomm/ipqess/
index 71692ef4ee9094e5d75d4afc30b29b70053f4e6c..f95b4603bec4b075c0c1e3a0f6fb4b20d515d6c5 100644 (file)
@@ -283,6 +283,7 @@ CONFIG_FB_CFB_FILLRECT=y
 CONFIG_FB_CFB_IMAGEBLIT=y
 CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
index 596301f0f4ab121dd2ed92e908e966aa5b0df77c..6f637a6f01a153846b3a295884a16f08f6f798a9 100644 (file)
@@ -247,6 +247,7 @@ CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DEVICE=y
 CONFIG_FB_EFI=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_IOMEM_HELPERS=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_SIMPLE=y
index de32b83e94fca2f4fcae57375ecc1fc04512ad96..9d6c5eed967795dbdba412342f487ad872a24bdd 100644 (file)
@@ -217,6 +217,7 @@ CONFIG_FB=y
 CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DEVICE=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_SYSMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
 CONFIG_FB_SYS_COPYAREA=y
index feb50c157b97e830d1bb47c7e90563d0eb2291cd..2d85313f8d59ba5a2ab19cc28bf62b438437e41e 100644 (file)
@@ -19,7 +19,7 @@ Subject: [PATCH] kernel: add block fit partition parser
 
 --- a/block/blk.h
 +++ b/block/blk.h
-@@ -423,6 +423,8 @@ void blk_free_ext_minor(unsigned int min
+@@ -424,6 +424,8 @@ void blk_free_ext_minor(unsigned int min
  #define ADDPART_FLAG_NONE     0
  #define ADDPART_FLAG_RAID     1
  #define ADDPART_FLAG_WHOLEDISK        2
index b5505c803a9685e21ab8128c064533c9a2299e26..7ad07c3583716c94be4e590eea5b96555d61c4fa 100644 (file)
@@ -11,7 +11,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
 
 --- a/drivers/spi/spi.c
 +++ b/drivers/spi/spi.c
-@@ -1366,6 +1366,70 @@ static int spi_transfer_wait(struct spi_
+@@ -1370,6 +1370,70 @@ static int spi_transfer_wait(struct spi_
        return 0;
  }
  
@@ -82,7 +82,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
  static void _spi_transfer_delay_ns(u32 ns)
  {
        if (!ns)
-@@ -2211,6 +2275,75 @@ void spi_flush_queue(struct spi_controll
+@@ -2215,6 +2279,75 @@ void spi_flush_queue(struct spi_controll
  /*-------------------------------------------------------------------------*/
  
  #if defined(CONFIG_OF)
@@ -158,7 +158,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
  static void of_spi_parse_dt_cs_delay(struct device_node *nc,
                                     struct spi_delay *delay, const char *prop)
  {
-@@ -2350,6 +2483,10 @@ of_register_spi_device(struct spi_contro
+@@ -2354,6 +2487,10 @@ of_register_spi_device(struct spi_contro
        if (rc)
                goto err_out;
  
index 80d5ec3b4afdfb1fcb255f54718b86985529c15f..b58cb786ad8eb3fb1740fc33371b52d4bee739c5 100644 (file)
@@ -13,7 +13,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
 
 --- a/drivers/media/usb/uvc/uvc_driver.c
 +++ b/drivers/media/usb/uvc/uvc_driver.c
-@@ -3120,6 +3120,18 @@ static const struct usb_device_id uvc_id
+@@ -3151,6 +3151,18 @@ static const struct usb_device_id uvc_id
          .bInterfaceSubClass   = 1,
          .bInterfaceProtocol   = 0,
          .driver_info          = UVC_INFO_META(V4L2_META_FMT_D4XX) },
@@ -225,16 +225,16 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
        for_each_uvc_urb(uvc_urb, stream) {
 --- a/drivers/media/usb/uvc/uvcvideo.h
 +++ b/drivers/media/usb/uvc/uvcvideo.h
-@@ -73,6 +73,8 @@
- #define UVC_QUIRK_FORCE_Y8            0x00000800
+@@ -74,6 +74,8 @@
  #define UVC_QUIRK_FORCE_BPP           0x00001000
  #define UVC_QUIRK_WAKE_AUTOSUSPEND    0x00002000
-+#define UVC_QUIRK_MOTION              0x00004000
-+#define UVC_QUIRK_SINGLE_ISO          0x00008000
+ #define UVC_QUIRK_NO_RESET_RESUME     0x00004000
++#define UVC_QUIRK_MOTION              0x00008000
++#define UVC_QUIRK_SINGLE_ISO          0x00010000
  
  /* Format flags */
  #define UVC_FMT_FLAG_COMPRESSED               0x00000001
-@@ -582,6 +584,7 @@ struct uvc_device {
+@@ -583,6 +585,7 @@ struct uvc_device {
  
        struct input_dev *input;
        char input_phys[64];
index c86a51a572f31b612efa27752f58ef69d96dfb2c..9cecf9f6932a457e08510c0bf37c0c5cf8d1a980 100644 (file)
@@ -197,6 +197,7 @@ CONFIG_FB=y
 CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DMAMEM_HELPERS=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_SYSMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
 CONFIG_FB_SYS_COPYAREA=y
index 8533d57532df03a54132aec18339051552b8fb40..d5f86141b0b599984e9a2fac3d24064de2336b3d 100644 (file)
@@ -217,6 +217,7 @@ CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DEVICE=y
 CONFIG_FB_EFI=y
 CONFIG_FB_HYPERV=y
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_IOMEM_HELPERS=y
 CONFIG_FB_MODE_HELPERS=y
 CONFIG_FB_SIMPLE=y
index c02ec35100fe775f7c95751b0b2f4535ebe2973d..4c0a052c7b21496d2b6adbed6c7e78cb306ab6cc 100644 (file)
@@ -152,6 +152,7 @@ CONFIG_FB_DEVICE=y
 CONFIG_FB_EFI=y
 CONFIG_FB_HYPERV=y
 # CONFIG_FB_I810 is not set
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_IOMEM_HELPERS=y
 CONFIG_FB_SIMPLE=y
 CONFIG_FB_SYSMEM_HELPERS=y
index f71747e43366c1e5d6ed8c509d5d42b55a78fc79..323f20dba636bb0aa533afcc8aefac2b271d057e 100644 (file)
@@ -111,6 +111,7 @@ CONFIG_FB_CORE=y
 CONFIG_FB_DEFERRED_IO=y
 CONFIG_FB_DEVICE=y
 # CONFIG_FB_I810 is not set
+CONFIG_FB_IOMEM_FOPS=y
 CONFIG_FB_IOMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS=y
 CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y