From: John Audia Date: Sat, 23 May 2026 15:46:33 +0000 (-0400) Subject: kernel: bump 6.18 to 6.18.33 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=17f55384419ae5e4c399ff405cd4d39870218b0d;p=thirdparty%2Fopenwrt.git kernel: bump 6.18 to 6.18.33 Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.18.33 Removed upstreamed: generic/backport-6.18/742-v7.1-r8152-fix-incorrect-register-write-to-USB_UPHY_XTAL.patch[1] generic/backport-6.18/827-v7.0-crypto-inside-secure-eip93-fix-register-definition.patch[2] generic/backport-6.18/828-v7.0-crypto-inside-secure-eip93-register-hash-before-auth.patch[3] generic/backport-6.18/940-v7.1-net-dsa-realtek-rtl8365mb-fix-mode-mask-calculation.patch[4] generic/pending-6.18/928-crypto-eip93-fix-hmac-setkey-algo-selection.patch[5] All other patches automatically rebased via update_kernel.sh 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=50c601805fe3 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=7ed07c9ce525 3. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=b6263eb2b188 4. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=b707f3109f1a 5. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.18.33&id=fc9310d79fdb Build system: x86/64 Build-tested: x86/64-glibc Run-tested: x86/64-glibc Signed-off-by: John Audia Link: https://github.com/openwrt/openwrt/pull/23419 Signed-off-by: Hauke Mehrtens --- diff --git a/target/linux/ath79/patches-6.18/900-unaligned_access_hacks.patch b/target/linux/ath79/patches-6.18/900-unaligned_access_hacks.patch index 3673f4ff0bb..dac36419a73 100644 --- a/target/linux/ath79/patches-6.18/900-unaligned_access_hacks.patch +++ b/target/linux/ath79/patches-6.18/900-unaligned_access_hacks.patch @@ -760,7 +760,7 @@ SVN-Revision: 35130 EXPORT_SYMBOL(xfrm_parse_spi); --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -4413,14 +4413,16 @@ static bool tcp_parse_aligned_timestamp( +@@ -4419,14 +4419,16 @@ static bool tcp_parse_aligned_timestamp( { const __be32 *ptr = (const __be32 *)(th + 1); diff --git a/target/linux/generic/backport-6.18/434-v6.19-mtd-spinand-esmt-add-support-for-F50L1G41LC.patch b/target/linux/generic/backport-6.18/434-v6.19-mtd-spinand-esmt-add-support-for-F50L1G41LC.patch index 8615fb0f825..792ec9942dc 100644 --- a/target/linux/generic/backport-6.18/434-v6.19-mtd-spinand-esmt-add-support-for-F50L1G41LC.patch +++ b/target/linux/generic/backport-6.18/434-v6.19-mtd-spinand-esmt-add-support-for-F50L1G41LC.patch @@ -19,7 +19,7 @@ Signed-off-by: Miquel Raynal --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1235,6 +1235,7 @@ static const struct nand_ops spinand_ops +@@ -1226,6 +1226,7 @@ static const struct nand_ops spinand_ops static const struct spinand_manufacturer *spinand_manufacturers[] = { &alliancememory_spinand_manufacturer, &ato_spinand_manufacturer, @@ -74,7 +74,7 @@ Signed-off-by: Miquel Raynal .name = "ESMT", --- a/include/linux/mtd/spinand.h +++ b/include/linux/mtd/spinand.h -@@ -354,6 +354,7 @@ struct spinand_manufacturer { +@@ -360,6 +360,7 @@ struct spinand_manufacturer { /* SPI NAND manufacturers */ extern const struct spinand_manufacturer alliancememory_spinand_manufacturer; extern const struct spinand_manufacturer ato_spinand_manufacturer; diff --git a/target/linux/generic/backport-6.18/625-v7.0-ppp-enable-TX-scatter-gather.patch b/target/linux/generic/backport-6.18/625-v7.0-ppp-enable-TX-scatter-gather.patch index de03f3fe17a..081937ddcc5 100644 --- a/target/linux/generic/backport-6.18/625-v7.0-ppp-enable-TX-scatter-gather.patch +++ b/target/linux/generic/backport-6.18/625-v7.0-ppp-enable-TX-scatter-gather.patch @@ -22,7 +22,7 @@ Signed-off-by: Paolo Abeni --- a/drivers/net/ppp/ppp_generic.c +++ b/drivers/net/ppp/ppp_generic.c -@@ -1641,6 +1641,8 @@ static void ppp_setup(struct net_device +@@ -1644,6 +1644,8 @@ static void ppp_setup(struct net_device dev->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST; dev->priv_destructor = ppp_dev_priv_destructor; dev->pcpu_stat_type = NETDEV_PCPU_STAT_TSTATS; @@ -31,7 +31,7 @@ Signed-off-by: Paolo Abeni netif_keep_dst(dev); } -@@ -1710,6 +1712,10 @@ pad_compress_skb(struct ppp *ppp, struct +@@ -1713,6 +1715,10 @@ pad_compress_skb(struct ppp *ppp, struct ppp->xcomp->comp_extra + ppp->dev->hard_header_len; int compressor_skb_size = ppp->dev->mtu + ppp->xcomp->comp_extra + PPP_HDRLEN; @@ -42,7 +42,7 @@ Signed-off-by: Paolo Abeni new_skb = alloc_skb(new_skb_size, GFP_ATOMIC); if (!new_skb) { if (net_ratelimit()) -@@ -1797,6 +1803,10 @@ ppp_send_frame(struct ppp *ppp, struct s +@@ -1800,6 +1806,10 @@ ppp_send_frame(struct ppp *ppp, struct s case PPP_IP: if (!ppp->vj || (ppp->flags & SC_COMP_TCP) == 0) break; @@ -53,7 +53,7 @@ Signed-off-by: Paolo Abeni /* try to do VJ TCP header compression */ new_skb = alloc_skb(skb->len + ppp->dev->hard_header_len - 2, GFP_ATOMIC); -@@ -1894,19 +1904,26 @@ ppp_push(struct ppp *ppp) +@@ -1897,19 +1907,26 @@ ppp_push(struct ppp *ppp) } if ((ppp->flags & SC_MULTILINK) == 0) { @@ -85,7 +85,7 @@ Signed-off-by: Paolo Abeni spin_unlock(&pch->downl); return; } -@@ -1991,6 +2008,8 @@ static int ppp_mp_explode(struct ppp *pp +@@ -1994,6 +2011,8 @@ static int ppp_mp_explode(struct ppp *pp return 0; /* can't take now, leave it in xmit_pending */ /* Do protocol field compression */ @@ -94,7 +94,7 @@ Signed-off-by: Paolo Abeni p = skb->data; len = skb->len; if (*p == 0 && mp_protocol_compress) { -@@ -2149,6 +2168,7 @@ static int ppp_mp_explode(struct ppp *pp +@@ -2152,6 +2171,7 @@ static int ppp_mp_explode(struct ppp *pp noskb: spin_unlock(&pch->downl); diff --git a/target/linux/generic/backport-6.18/650-v7.2-net-pppoe-implement-GRO-GSO-support.patch b/target/linux/generic/backport-6.18/650-v7.2-net-pppoe-implement-GRO-GSO-support.patch index 01ccd4a9b53..d9c3821c35c 100644 --- a/target/linux/generic/backport-6.18/650-v7.2-net-pppoe-implement-GRO-GSO-support.patch +++ b/target/linux/generic/backport-6.18/650-v7.2-net-pppoe-implement-GRO-GSO-support.patch @@ -32,8 +32,8 @@ Signed-off-by: Paolo Abeni #include -@@ -434,7 +435,7 @@ static int pppoe_rcv(struct sk_buff *skb - if (skb->len < len) +@@ -440,7 +441,7 @@ static int pppoe_rcv(struct sk_buff *skb + if (ppp_skb_is_compressed_proto(skb)) goto drop; - if (pskb_trim_rcsum(skb, len)) @@ -41,7 +41,7 @@ Signed-off-by: Paolo Abeni goto drop; ph = pppoe_hdr(skb); -@@ -1176,6 +1177,160 @@ static struct pernet_operations pppoe_ne +@@ -1182,6 +1183,160 @@ static struct pernet_operations pppoe_ne .size = sizeof(struct pppoe_net), }; @@ -202,7 +202,7 @@ Signed-off-by: Paolo Abeni static int __init pppoe_init(void) { int err; -@@ -1192,6 +1347,8 @@ static int __init pppoe_init(void) +@@ -1198,6 +1353,8 @@ static int __init pppoe_init(void) if (err) goto out_unregister_pppoe_proto; @@ -211,7 +211,7 @@ Signed-off-by: Paolo Abeni dev_add_pack(&pppoes_ptype); dev_add_pack(&pppoed_ptype); register_netdevice_notifier(&pppoe_notifier); -@@ -1211,6 +1368,8 @@ static void __exit pppoe_exit(void) +@@ -1217,6 +1374,8 @@ static void __exit pppoe_exit(void) unregister_netdevice_notifier(&pppoe_notifier); dev_remove_pack(&pppoed_ptype); dev_remove_pack(&pppoes_ptype); diff --git a/target/linux/generic/backport-6.18/700-02-v7.0-net-sched-sch_cake-Factor-out-config-variables-into-.patch b/target/linux/generic/backport-6.18/700-02-v7.0-net-sched-sch_cake-Factor-out-config-variables-into-.patch index 39673f7a88e..34aa4216ce0 100644 --- a/target/linux/generic/backport-6.18/700-02-v7.0-net-sched-sch_cake-Factor-out-config-variables-into-.patch +++ b/target/linux/generic/backport-6.18/700-02-v7.0-net-sched-sch_cake-Factor-out-config-variables-into-.patch @@ -135,7 +135,7 @@ Signed-off-by: Paolo Abeni } @@ -1592,7 +1596,7 @@ static unsigned int cake_drop(struct Qdi flow->dropped++; - b->tin_dropped++; + WRITE_ONCE(b->tin_dropped, b->tin_dropped + 1); - if (q->rate_flags & CAKE_FLAG_INGRESS) + if (q->config->rate_flags & CAKE_FLAG_INGRESS) @@ -326,7 +326,7 @@ Signed-off-by: Paolo Abeni goto retry; } -@@ -2317,7 +2322,7 @@ static int cake_config_besteffort(struct +@@ -2320,7 +2325,7 @@ static int cake_config_besteffort(struct struct cake_sched_data *q = qdisc_priv(sch); struct cake_tin_data *b = &q->tins[0]; u32 mtu = psched_mtu(qdisc_dev(sch)); @@ -335,7 +335,7 @@ Signed-off-by: Paolo Abeni q->tin_cnt = 1; -@@ -2325,7 +2330,7 @@ static int cake_config_besteffort(struct +@@ -2328,7 +2333,7 @@ static int cake_config_besteffort(struct q->tin_order = normal_order; cake_set_rate(b, rate, mtu, @@ -344,7 +344,7 @@ Signed-off-by: Paolo Abeni b->tin_quantum = 65535; return 0; -@@ -2336,7 +2341,7 @@ static int cake_config_precedence(struct +@@ -2339,7 +2344,7 @@ static int cake_config_precedence(struct /* convert high-level (user visible) parameters into internal format */ struct cake_sched_data *q = qdisc_priv(sch); u32 mtu = psched_mtu(qdisc_dev(sch)); @@ -353,7 +353,7 @@ Signed-off-by: Paolo Abeni u32 quantum = 256; u32 i; -@@ -2347,8 +2352,8 @@ static int cake_config_precedence(struct +@@ -2350,8 +2355,8 @@ static int cake_config_precedence(struct for (i = 0; i < q->tin_cnt; i++) { struct cake_tin_data *b = &q->tins[i]; @@ -364,7 +364,7 @@ Signed-off-by: Paolo Abeni b->tin_quantum = max_t(u16, 1U, quantum); -@@ -2425,7 +2430,7 @@ static int cake_config_diffserv8(struct +@@ -2428,7 +2433,7 @@ static int cake_config_diffserv8(struct struct cake_sched_data *q = qdisc_priv(sch); u32 mtu = psched_mtu(qdisc_dev(sch)); @@ -373,7 +373,7 @@ Signed-off-by: Paolo Abeni u32 quantum = 256; u32 i; -@@ -2439,8 +2444,8 @@ static int cake_config_diffserv8(struct +@@ -2442,8 +2447,8 @@ static int cake_config_diffserv8(struct for (i = 0; i < q->tin_cnt; i++) { struct cake_tin_data *b = &q->tins[i]; @@ -384,7 +384,7 @@ Signed-off-by: Paolo Abeni b->tin_quantum = max_t(u16, 1U, quantum); -@@ -2469,7 +2474,7 @@ static int cake_config_diffserv4(struct +@@ -2472,7 +2477,7 @@ static int cake_config_diffserv4(struct struct cake_sched_data *q = qdisc_priv(sch); u32 mtu = psched_mtu(qdisc_dev(sch)); @@ -393,7 +393,7 @@ Signed-off-by: Paolo Abeni u32 quantum = 1024; q->tin_cnt = 4; -@@ -2480,13 +2485,13 @@ static int cake_config_diffserv4(struct +@@ -2483,13 +2488,13 @@ static int cake_config_diffserv4(struct /* class characteristics */ cake_set_rate(&q->tins[0], rate, mtu, @@ -411,7 +411,7 @@ Signed-off-by: Paolo Abeni /* bandwidth-sharing weights */ q->tins[0].tin_quantum = quantum; -@@ -2506,7 +2511,7 @@ static int cake_config_diffserv3(struct +@@ -2509,7 +2514,7 @@ static int cake_config_diffserv3(struct */ struct cake_sched_data *q = qdisc_priv(sch); u32 mtu = psched_mtu(qdisc_dev(sch)); @@ -420,7 +420,7 @@ Signed-off-by: Paolo Abeni u32 quantum = 1024; q->tin_cnt = 3; -@@ -2517,11 +2522,11 @@ static int cake_config_diffserv3(struct +@@ -2520,11 +2525,11 @@ static int cake_config_diffserv3(struct /* class characteristics */ cake_set_rate(&q->tins[0], rate, mtu, @@ -435,7 +435,7 @@ Signed-off-by: Paolo Abeni /* bandwidth-sharing weights */ q->tins[0].tin_quantum = quantum; -@@ -2533,7 +2538,8 @@ static int cake_config_diffserv3(struct +@@ -2536,7 +2541,8 @@ static int cake_config_diffserv3(struct static void cake_reconfigure(struct Qdisc *sch) { @@ -445,7 +445,7 @@ Signed-off-by: Paolo Abeni int c, ft; switch (q->tin_mode) { -@@ -2559,36 +2565,37 @@ static void cake_reconfigure(struct Qdis +@@ -2562,36 +2568,37 @@ static void cake_reconfigure(struct Qdis break; } @@ -494,7 +494,7 @@ Signed-off-by: Paolo Abeni struct nlattr *tb[TCA_CAKE_MAX + 1]; u16 rate_flags; u8 flow_mode; -@@ -2642,19 +2649,19 @@ static int cake_change(struct Qdisc *sch +@@ -2645,19 +2652,19 @@ static int cake_change(struct Qdisc *sch nla_get_s32(tb[TCA_CAKE_OVERHEAD])); rate_flags |= CAKE_FLAG_OVERHEAD; @@ -522,7 +522,7 @@ Signed-off-by: Paolo Abeni } if (tb[TCA_CAKE_MPU]) -@@ -2710,7 +2717,7 @@ static int cake_change(struct Qdisc *sch +@@ -2713,7 +2720,7 @@ static int cake_change(struct Qdisc *sch WRITE_ONCE(q->rate_flags, rate_flags); WRITE_ONCE(q->flow_mode, flow_mode); @@ -531,7 +531,7 @@ Signed-off-by: Paolo Abeni sch_tree_lock(sch); cake_reconfigure(sch); sch_tree_unlock(sch); -@@ -2726,14 +2733,20 @@ static void cake_destroy(struct Qdisc *s +@@ -2729,14 +2736,20 @@ static void cake_destroy(struct Qdisc *s qdisc_watchdog_cancel(&q->watchdog); tcf_block_put(q->block); kvfree(q->tins); @@ -553,7 +553,7 @@ Signed-off-by: Paolo Abeni sch->limit = 10240; q->tin_mode = CAKE_DIFFSERV_DIFFSERV3; q->flow_mode = CAKE_FLOW_TRIPLE; -@@ -2745,33 +2758,36 @@ static int cake_init(struct Qdisc *sch, +@@ -2748,33 +2761,36 @@ static int cake_init(struct Qdisc *sch, * for 5 to 10% of interval */ q->rate_flags |= CAKE_FLAG_SPLIT_GSO; @@ -601,7 +601,7 @@ Signed-off-by: Paolo Abeni INIT_LIST_HEAD(&b->new_flows); INIT_LIST_HEAD(&b->old_flows); -@@ -2787,22 +2803,27 @@ static int cake_init(struct Qdisc *sch, +@@ -2790,22 +2806,27 @@ static int cake_init(struct Qdisc *sch, INIT_LIST_HEAD(&flow->flowchain); cobalt_vars_init(&flow->cvars); diff --git a/target/linux/generic/backport-6.18/700-03-v7.0-net-sched-sch_cake-Add-cake_mq-qdisc-for-using-cake-.patch b/target/linux/generic/backport-6.18/700-03-v7.0-net-sched-sch_cake-Add-cake_mq-qdisc-for-using-cake-.patch index b9d831311d5..13059b9a1ff 100644 --- a/target/linux/generic/backport-6.18/700-03-v7.0-net-sched-sch_cake-Add-cake_mq-qdisc-for-using-cake-.patch +++ b/target/linux/generic/backport-6.18/700-03-v7.0-net-sched-sch_cake-Add-cake_mq-qdisc-for-using-cake-.patch @@ -32,7 +32,7 @@ Signed-off-by: Paolo Abeni #include #include #include -@@ -3160,14 +3161,89 @@ static struct Qdisc_ops cake_qdisc_ops _ +@@ -3163,14 +3164,89 @@ static struct Qdisc_ops cake_qdisc_ops _ }; MODULE_ALIAS_NET_SCH("cake"); @@ -123,7 +123,7 @@ Signed-off-by: Paolo Abeni } module_init(cake_module_init) -@@ -3175,3 +3251,4 @@ module_exit(cake_module_exit) +@@ -3178,3 +3254,4 @@ module_exit(cake_module_exit) MODULE_AUTHOR("Jonathan Morton"); MODULE_LICENSE("Dual BSD/GPL"); MODULE_DESCRIPTION("The CAKE shaper."); diff --git a/target/linux/generic/backport-6.18/700-04-v7.0-net-sched-sch_cake-Share-config-across-cake_mq-sub-q.patch b/target/linux/generic/backport-6.18/700-04-v7.0-net-sched-sch_cake-Share-config-across-cake_mq-sub-q.patch index d2be26a8c85..8981b0fcb80 100644 --- a/target/linux/generic/backport-6.18/700-04-v7.0-net-sched-sch_cake-Share-config-across-cake_mq-sub-q.patch +++ b/target/linux/generic/backport-6.18/700-04-v7.0-net-sched-sch_cake-Share-config-across-cake_mq-sub-q.patch @@ -27,7 +27,7 @@ Signed-off-by: Paolo Abeni }; struct cake_sched_data { -@@ -2592,14 +2593,12 @@ static void cake_reconfigure(struct Qdis +@@ -2595,14 +2596,12 @@ static void cake_reconfigure(struct Qdis q->buffer_config_limit)); } @@ -46,7 +46,7 @@ Signed-off-by: Paolo Abeni int err; err = nla_parse_nested_deprecated(tb, TCA_CAKE_MAX, opt, cake_policy, -@@ -2607,7 +2606,6 @@ static int cake_change(struct Qdisc *sch +@@ -2610,7 +2609,6 @@ static int cake_change(struct Qdisc *sch if (err < 0) return err; @@ -54,7 +54,7 @@ Signed-off-by: Paolo Abeni if (tb[TCA_CAKE_NAT]) { #if IS_ENABLED(CONFIG_NF_CONNTRACK) flow_mode &= ~CAKE_FLOW_NAT_FLAG; -@@ -2620,6 +2618,19 @@ static int cake_change(struct Qdisc *sch +@@ -2623,6 +2621,19 @@ static int cake_change(struct Qdisc *sch #endif } @@ -74,7 +74,7 @@ Signed-off-by: Paolo Abeni if (tb[TCA_CAKE_BASE_RATE64]) WRITE_ONCE(q->rate_bps, nla_get_u64(tb[TCA_CAKE_BASE_RATE64])); -@@ -2628,7 +2639,6 @@ static int cake_change(struct Qdisc *sch +@@ -2631,7 +2642,6 @@ static int cake_change(struct Qdisc *sch WRITE_ONCE(q->tin_mode, nla_get_u32(tb[TCA_CAKE_DIFFSERV_MODE])); @@ -82,7 +82,7 @@ Signed-off-by: Paolo Abeni if (tb[TCA_CAKE_WASH]) { if (!!nla_get_u32(tb[TCA_CAKE_WASH])) rate_flags |= CAKE_FLAG_WASH; -@@ -2649,20 +2659,12 @@ static int cake_change(struct Qdisc *sch +@@ -2652,20 +2662,12 @@ static int cake_change(struct Qdisc *sch WRITE_ONCE(q->rate_overhead, nla_get_s32(tb[TCA_CAKE_OVERHEAD])); rate_flags |= CAKE_FLAG_OVERHEAD; @@ -105,7 +105,7 @@ Signed-off-by: Paolo Abeni } if (tb[TCA_CAKE_MPU]) -@@ -2681,13 +2683,6 @@ static int cake_change(struct Qdisc *sch +@@ -2684,13 +2686,6 @@ static int cake_change(struct Qdisc *sch WRITE_ONCE(q->target, max(target, 1U)); } @@ -119,7 +119,7 @@ Signed-off-by: Paolo Abeni if (tb[TCA_CAKE_INGRESS]) { if (!!nla_get_u32(tb[TCA_CAKE_INGRESS])) rate_flags |= CAKE_FLAG_INGRESS; -@@ -2718,6 +2713,34 @@ static int cake_change(struct Qdisc *sch +@@ -2721,6 +2716,34 @@ static int cake_change(struct Qdisc *sch WRITE_ONCE(q->rate_flags, rate_flags); WRITE_ONCE(q->flow_mode, flow_mode); @@ -154,7 +154,7 @@ Signed-off-by: Paolo Abeni if (qd->tins) { sch_tree_lock(sch); cake_reconfigure(sch); -@@ -2734,7 +2757,23 @@ static void cake_destroy(struct Qdisc *s +@@ -2737,7 +2760,23 @@ static void cake_destroy(struct Qdisc *s qdisc_watchdog_cancel(&q->watchdog); tcf_block_put(q->block); kvfree(q->tins); @@ -179,7 +179,7 @@ Signed-off-by: Paolo Abeni } static int cake_init(struct Qdisc *sch, struct nlattr *opt, -@@ -2748,17 +2787,9 @@ static int cake_init(struct Qdisc *sch, +@@ -2751,17 +2790,9 @@ static int cake_init(struct Qdisc *sch, if (!q) return -ENOMEM; @@ -199,7 +199,7 @@ Signed-off-by: Paolo Abeni qd->cur_tin = 0; qd->cur_flow = 0; qd->config = q; -@@ -2821,10 +2852,21 @@ err: +@@ -2824,10 +2855,21 @@ err: return err; } @@ -222,7 +222,7 @@ Signed-off-by: Paolo Abeni struct nlattr *opts; u16 rate_flags; u8 flow_mode; -@@ -2900,6 +2942,13 @@ nla_put_failure: +@@ -2903,6 +2945,13 @@ nla_put_failure: return -1; } @@ -236,7 +236,7 @@ Signed-off-by: Paolo Abeni static int cake_dump_stats(struct Qdisc *sch, struct gnet_dump *d) { struct nlattr *stats = nla_nest_start_noflag(d->skb, TCA_STATS_APP); -@@ -3163,6 +3212,7 @@ MODULE_ALIAS_NET_SCH("cake"); +@@ -3166,6 +3215,7 @@ MODULE_ALIAS_NET_SCH("cake"); struct cake_mq_sched { struct mq_sched mq_priv; /* must be first */ @@ -244,7 +244,7 @@ Signed-off-by: Paolo Abeni }; static void cake_mq_destroy(struct Qdisc *sch) -@@ -3173,25 +3223,68 @@ static void cake_mq_destroy(struct Qdisc +@@ -3176,25 +3226,68 @@ static void cake_mq_destroy(struct Qdisc static int cake_mq_init(struct Qdisc *sch, struct nlattr *opt, struct netlink_ext_ack *extack) { diff --git a/target/linux/generic/backport-6.18/700-05-v7.0-net-sched-sch_cake-share-shaper-state-across-sub-ins.patch b/target/linux/generic/backport-6.18/700-05-v7.0-net-sched-sch_cake-share-shaper-state-across-sub-ins.patch index a9059ccb3ad..147789d4905 100644 --- a/target/linux/generic/backport-6.18/700-05-v7.0-net-sched-sch_cake-share-shaper-state-across-sub-ins.patch +++ b/target/linux/generic/backport-6.18/700-05-v7.0-net-sched-sch_cake-share-shaper-state-across-sub-ins.patch @@ -131,13 +131,13 @@ Signed-off-by: Paolo Abeni return NULL; @@ -2208,6 +2250,7 @@ retry: - b->tin_ecn_mark += !!flow->cvars.ecn_marked; + WRITE_ONCE(b->tin_ecn_mark, b->tin_ecn_mark + !!flow->cvars.ecn_marked); qdisc_bstats_update(sch, skb); + WRITE_ONCE(q->last_active, now); /* collect delay stats */ delay = ktime_to_ns(ktime_sub(now, cobalt_get_enqueue_time(skb))); -@@ -2308,6 +2351,9 @@ static void cake_set_rate(struct cake_ti +@@ -2310,6 +2353,9 @@ static void cake_set_rate(struct cake_ti b->tin_rate_ns = rate_ns; b->tin_rate_shft = rate_shft; @@ -146,8 +146,8 @@ Signed-off-by: Paolo Abeni + byte_target_ns = (byte_target * rate_ns) >> rate_shft; - b->cparams.target = max((byte_target_ns * 3) / 2, target_ns); -@@ -2774,6 +2820,7 @@ static void cake_config_init(struct cake + WRITE_ONCE(b->cparams.target, +@@ -2777,6 +2823,7 @@ static void cake_config_init(struct cake */ q->rate_flags |= CAKE_FLAG_SPLIT_GSO; q->is_shared = is_shared; @@ -155,7 +155,7 @@ Signed-off-by: Paolo Abeni } static int cake_init(struct Qdisc *sch, struct nlattr *opt, -@@ -2845,6 +2892,9 @@ static int cake_init(struct Qdisc *sch, +@@ -2848,6 +2895,9 @@ static int cake_init(struct Qdisc *sch, qd->avg_peak_bandwidth = q->rate_bps; qd->min_netlen = ~0; qd->min_adjlen = ~0; @@ -165,7 +165,7 @@ Signed-off-by: Paolo Abeni return 0; err: kvfree(qd->config); -@@ -2977,6 +3027,7 @@ static int cake_dump_stats(struct Qdisc +@@ -2980,6 +3030,7 @@ static int cake_dump_stats(struct Qdisc PUT_STAT_U32(MAX_ADJLEN, q->max_adjlen); PUT_STAT_U32(MIN_NETLEN, q->min_netlen); PUT_STAT_U32(MIN_ADJLEN, q->min_adjlen); diff --git a/target/linux/generic/backport-6.18/700-07-v7.0-net-sched-cake-avoid-separate-allocation-of-struct-c.patch b/target/linux/generic/backport-6.18/700-07-v7.0-net-sched-cake-avoid-separate-allocation-of-struct-c.patch index c6d7a3bbe06..bb1f7423ab0 100644 --- a/target/linux/generic/backport-6.18/700-07-v7.0-net-sched-cake-avoid-separate-allocation-of-struct-c.patch +++ b/target/linux/generic/backport-6.18/700-07-v7.0-net-sched-cake-avoid-separate-allocation-of-struct-c.patch @@ -33,7 +33,7 @@ Signed-off-by: Jakub Kicinski struct cake_heap_entry overflow_heap[CAKE_QUEUES * CAKE_MAX_TINS]; -@@ -2803,8 +2804,6 @@ static void cake_destroy(struct Qdisc *s +@@ -2806,8 +2807,6 @@ static void cake_destroy(struct Qdisc *s qdisc_watchdog_cancel(&q->watchdog); tcf_block_put(q->block); kvfree(q->tins); @@ -42,7 +42,7 @@ Signed-off-by: Jakub Kicinski } static void cake_config_init(struct cake_sched_config *q, bool is_shared) -@@ -2827,13 +2826,9 @@ static int cake_init(struct Qdisc *sch, +@@ -2830,13 +2829,9 @@ static int cake_init(struct Qdisc *sch, struct netlink_ext_ack *extack) { struct cake_sched_data *qd = qdisc_priv(sch); @@ -57,7 +57,7 @@ Signed-off-by: Jakub Kicinski cake_config_init(q, false); sch->limit = 10240; -@@ -2845,14 +2840,13 @@ static int cake_init(struct Qdisc *sch, +@@ -2848,14 +2843,13 @@ static int cake_init(struct Qdisc *sch, if (opt) { err = cake_change(sch, opt, extack); @@ -74,7 +74,7 @@ Signed-off-by: Jakub Kicinski quantum_div[0] = ~0; for (i = 1; i <= CAKE_QUEUES; i++) -@@ -2860,10 +2854,8 @@ static int cake_init(struct Qdisc *sch, +@@ -2863,10 +2857,8 @@ static int cake_init(struct Qdisc *sch, qd->tins = kvcalloc(CAKE_MAX_TINS, sizeof(struct cake_tin_data), GFP_KERNEL); @@ -87,7 +87,7 @@ Signed-off-by: Jakub Kicinski for (i = 0; i < CAKE_MAX_TINS; i++) { struct cake_tin_data *b = qd->tins + i; -@@ -2896,22 +2888,13 @@ static int cake_init(struct Qdisc *sch, +@@ -2899,22 +2891,13 @@ static int cake_init(struct Qdisc *sch, qd->last_checked_active = 0; return 0; diff --git a/target/linux/generic/backport-6.18/701-02-v7.0-net-sched-sch_cake-fixup-cake_mq-rate-adjustment-for.patch b/target/linux/generic/backport-6.18/701-02-v7.0-net-sched-sch_cake-fixup-cake_mq-rate-adjustment-for.patch index e26fa22209d..fdecc8644ca 100644 --- a/target/linux/generic/backport-6.18/701-02-v7.0-net-sched-sch_cake-fixup-cake_mq-rate-adjustment-for.patch +++ b/target/linux/generic/backport-6.18/701-02-v7.0-net-sched-sch_cake-fixup-cake_mq-rate-adjustment-for.patch @@ -48,7 +48,7 @@ Signed-off-by: Jakub Kicinski } begin: -@@ -2367,12 +2364,10 @@ static void cake_set_rate(struct cake_ti +@@ -2370,12 +2367,10 @@ static void cake_set_rate(struct cake_ti b->cparams.p_dec = 1 << 20; /* 1/4096 */ } @@ -62,7 +62,7 @@ Signed-off-by: Jakub Kicinski q->tin_cnt = 1; -@@ -2386,12 +2381,10 @@ static int cake_config_besteffort(struct +@@ -2389,12 +2384,10 @@ static int cake_config_besteffort(struct return 0; } @@ -76,7 +76,7 @@ Signed-off-by: Jakub Kicinski u32 quantum = 256; u32 i; -@@ -2462,7 +2455,7 @@ static int cake_config_precedence(struct +@@ -2465,7 +2458,7 @@ static int cake_config_precedence(struct * Total 12 traffic classes. */ @@ -85,7 +85,7 @@ Signed-off-by: Jakub Kicinski { /* Pruned list of traffic classes for typical applications: * -@@ -2479,8 +2472,6 @@ static int cake_config_diffserv8(struct +@@ -2482,8 +2475,6 @@ static int cake_config_diffserv8(struct */ struct cake_sched_data *q = qdisc_priv(sch); @@ -94,7 +94,7 @@ Signed-off-by: Jakub Kicinski u32 quantum = 256; u32 i; -@@ -2510,7 +2501,7 @@ static int cake_config_diffserv8(struct +@@ -2513,7 +2504,7 @@ static int cake_config_diffserv8(struct return 0; } @@ -103,7 +103,7 @@ Signed-off-by: Jakub Kicinski { /* Further pruned list of traffic classes for four-class system: * -@@ -2523,8 +2514,6 @@ static int cake_config_diffserv4(struct +@@ -2526,8 +2517,6 @@ static int cake_config_diffserv4(struct */ struct cake_sched_data *q = qdisc_priv(sch); @@ -112,7 +112,7 @@ Signed-off-by: Jakub Kicinski u32 quantum = 1024; q->tin_cnt = 4; -@@ -2552,7 +2541,7 @@ static int cake_config_diffserv4(struct +@@ -2555,7 +2544,7 @@ static int cake_config_diffserv4(struct return 0; } @@ -121,7 +121,7 @@ Signed-off-by: Jakub Kicinski { /* Simplified Diffserv structure with 3 tins. * Latency Sensitive (CS7, CS6, EF, VA, TOS4) -@@ -2560,8 +2549,6 @@ static int cake_config_diffserv3(struct +@@ -2563,8 +2552,6 @@ static int cake_config_diffserv3(struct * Low Priority (LE, CS1) */ struct cake_sched_data *q = qdisc_priv(sch); @@ -130,7 +130,7 @@ Signed-off-by: Jakub Kicinski u32 quantum = 1024; q->tin_cnt = 3; -@@ -2586,32 +2573,33 @@ static int cake_config_diffserv3(struct +@@ -2589,32 +2576,33 @@ static int cake_config_diffserv3(struct return 0; } @@ -170,7 +170,7 @@ Signed-off-by: Jakub Kicinski break; } -@@ -2622,6 +2610,14 @@ static void cake_reconfigure(struct Qdis +@@ -2625,6 +2613,14 @@ static void cake_reconfigure(struct Qdis qd->rate_ns = qd->tins[ft].tin_rate_ns; qd->rate_shft = qd->tins[ft].tin_rate_shft; diff --git a/target/linux/generic/backport-6.18/742-v7.1-r8152-fix-incorrect-register-write-to-USB_UPHY_XTAL.patch b/target/linux/generic/backport-6.18/742-v7.1-r8152-fix-incorrect-register-write-to-USB_UPHY_XTAL.patch deleted file mode 100644 index 1dee906123b..00000000000 --- a/target/linux/generic/backport-6.18/742-v7.1-r8152-fix-incorrect-register-write-to-USB_UPHY_XTAL.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 48afd5124fd6129c46fd12cb06155384b1c4a0c4 Mon Sep 17 00:00:00 2001 -From: Chih Kai Hsu -Date: Thu, 26 Mar 2026 15:39:23 +0800 -Subject: [PATCH] r8152: fix incorrect register write to USB_UPHY_XTAL - -The old code used ocp_write_byte() to clear the OOBS_POLLING bit -(BIT(8)) in the USB_UPHY_XTAL register, but this doesn't correctly -clear a bit in the upper byte of the 16-bit register. - -Fix this by using ocp_write_word() instead. - -Fixes: 195aae321c82 ("r8152: support new chips") -Signed-off-by: Chih Kai Hsu -Reviewed-by: Hayes Wang -Link: https://patch.msgid.link/20260326073925.32976-454-nic_swsd@realtek.com -Signed-off-by: Paolo Abeni ---- - drivers/net/usb/r8152.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/usb/r8152.c -+++ b/drivers/net/usb/r8152.c -@@ -3898,7 +3898,7 @@ static void r8156_ups_en(struct r8152 *t - case RTL_VER_15: - ocp_data = ocp_read_word(tp, MCU_TYPE_USB, USB_UPHY_XTAL); - ocp_data &= ~OOBS_POLLING; -- ocp_write_byte(tp, MCU_TYPE_USB, USB_UPHY_XTAL, ocp_data); -+ ocp_write_word(tp, MCU_TYPE_USB, USB_UPHY_XTAL, ocp_data); - break; - default: - break; diff --git a/target/linux/generic/backport-6.18/827-v7.0-crypto-inside-secure-eip93-fix-register-definition.patch b/target/linux/generic/backport-6.18/827-v7.0-crypto-inside-secure-eip93-fix-register-definition.patch deleted file mode 100644 index 10cb15a030a..00000000000 --- a/target/linux/generic/backport-6.18/827-v7.0-crypto-inside-secure-eip93-fix-register-definition.patch +++ /dev/null @@ -1,29 +0,0 @@ -From b7abbc8c7acaeb60c114b038f1fa91bbedb3d16a Mon Sep 17 00:00:00 2001 -From: Aleksander Jan Bajkowski -Date: Sun, 8 Feb 2026 11:35:53 +0100 -Subject: [PATCH] crypto: inside-secure/eip93 - fix register definition - -Checked the register definitions with the documentation[1]. Turns out -that the PKTE_INBUF_CNT register has a bad offset. It's used in Direct -Host Mode (DHM). The driver uses Autonomous Ring Mode (ARM), so it -causes no harm. - -1. ADSP-SC58x/ADSP-2158x SHARC+ Processor Hardware Reference -Fixes: 9739f5f93b78 ("crypto: eip93 - Add Inside Secure SafeXcel EIP-93 crypto engine support") -Signed-off-by: Aleksander Jan Bajkowski -Signed-off-by: Herbert Xu ---- - drivers/crypto/inside-secure/eip93/eip93-regs.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/crypto/inside-secure/eip93/eip93-regs.h -+++ b/drivers/crypto/inside-secure/eip93/eip93-regs.h -@@ -109,7 +109,7 @@ - #define EIP93_REG_PE_BUF_THRESH 0x10c - #define EIP93_PE_OUTBUF_THRESH GENMASK(23, 16) - #define EIP93_PE_INBUF_THRESH GENMASK(7, 0) --#define EIP93_REG_PE_INBUF_COUNT 0x100 -+#define EIP93_REG_PE_INBUF_COUNT 0x110 - #define EIP93_REG_PE_OUTBUF_COUNT 0x114 - #define EIP93_REG_PE_BUF_RW_PNTR 0x118 /* BUF_PNTR */ - diff --git a/target/linux/generic/backport-6.18/828-v7.0-crypto-inside-secure-eip93-register-hash-before-auth.patch b/target/linux/generic/backport-6.18/828-v7.0-crypto-inside-secure-eip93-register-hash-before-auth.patch deleted file mode 100644 index 57bc7ccc6ee..00000000000 --- a/target/linux/generic/backport-6.18/828-v7.0-crypto-inside-secure-eip93-register-hash-before-auth.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 5377032914b29b4643adece0ff1dfc67e36700f4 Mon Sep 17 00:00:00 2001 -From: Aleksander Jan Bajkowski -Date: Fri, 6 Mar 2026 23:17:40 +0100 -Subject: [PATCH] crypto: inside-secure/eip93 - register hash before - authenc algorithms - -Register hash before hmac and authenc algorithms. This will ensure -selftests pass at startup. Previously, selftests failed on the -crypto_alloc_ahash() function since the associated algorithm was -not yet registered. - -Fixes following error: -... -[ 18.375811] alg: self-tests for authenc(hmac(sha1),cbc(aes)) using authenc(hmac(sha1-eip93),cbc(aes-eip93)) failed (rc=-2) -[ 18.382140] alg: self-tests for authenc(hmac(sha224),rfc3686(ctr(aes))) using authenc(hmac(sha224-eip93),rfc3686(ctr(aes-eip93))) failed (rc=-2) -[ 18.395029] alg: aead: authenc(hmac(sha256-eip93),cbc(des-eip93)) setkey failed on test vector 0; expected_error=0, actual_error=-2, flags=0x1 -[ 18.409734] alg: aead: authenc(hmac(md5-eip93),cbc(des3_ede-eip93)) setkey failed on test vector 0; expected_error=0, actual_error=-2, flags=0x1 -... - -Fixes: 9739f5f93b78 ("crypto: eip93 - Add Inside Secure SafeXcel EIP-93 crypto engine support") -Signed-off-by: Aleksander Jan Bajkowski -Signed-off-by: Herbert Xu ---- - drivers/crypto/inside-secure/eip93/eip93-main.c | 16 ++++++++-------- - 1 file changed, 8 insertions(+), 8 deletions(-) - ---- a/drivers/crypto/inside-secure/eip93/eip93-main.c -+++ b/drivers/crypto/inside-secure/eip93/eip93-main.c -@@ -36,6 +36,14 @@ static struct eip93_alg_template *eip93_ - &eip93_alg_cbc_aes, - &eip93_alg_ctr_aes, - &eip93_alg_rfc3686_aes, -+ &eip93_alg_md5, -+ &eip93_alg_sha1, -+ &eip93_alg_sha224, -+ &eip93_alg_sha256, -+ &eip93_alg_hmac_md5, -+ &eip93_alg_hmac_sha1, -+ &eip93_alg_hmac_sha224, -+ &eip93_alg_hmac_sha256, - &eip93_alg_authenc_hmac_md5_cbc_des, - &eip93_alg_authenc_hmac_sha1_cbc_des, - &eip93_alg_authenc_hmac_sha224_cbc_des, -@@ -52,14 +60,6 @@ static struct eip93_alg_template *eip93_ - &eip93_alg_authenc_hmac_sha1_rfc3686_aes, - &eip93_alg_authenc_hmac_sha224_rfc3686_aes, - &eip93_alg_authenc_hmac_sha256_rfc3686_aes, -- &eip93_alg_md5, -- &eip93_alg_sha1, -- &eip93_alg_sha224, -- &eip93_alg_sha256, -- &eip93_alg_hmac_md5, -- &eip93_alg_hmac_sha1, -- &eip93_alg_hmac_sha224, -- &eip93_alg_hmac_sha256, - }; - - inline void eip93_irq_disable(struct eip93_device *eip93, u32 mask) diff --git a/target/linux/generic/backport-6.18/908-2-v7.0-PCI-dwc-Code-cleanup.patch b/target/linux/generic/backport-6.18/908-2-v7.0-PCI-dwc-Code-cleanup.patch index d8b449e608d..3b6150ffd67 100644 --- a/target/linux/generic/backport-6.18/908-2-v7.0-PCI-dwc-Code-cleanup.patch +++ b/target/linux/generic/backport-6.18/908-2-v7.0-PCI-dwc-Code-cleanup.patch @@ -219,7 +219,7 @@ Link: https://patch.msgid.link/20251128212055.1409093-3-rrendec@redhat.com irq_domain_remove(pp->irq_domain); --- a/drivers/pci/controller/dwc/pcie-designware.h +++ b/drivers/pci/controller/dwc/pcie-designware.h -@@ -810,7 +810,7 @@ static inline enum dw_pcie_ltssm dw_pcie +@@ -812,7 +812,7 @@ static inline enum dw_pcie_ltssm dw_pcie #ifdef CONFIG_PCIE_DW_HOST int dw_pcie_suspend_noirq(struct dw_pcie *pci); int dw_pcie_resume_noirq(struct dw_pcie *pci); @@ -228,7 +228,7 @@ Link: https://patch.msgid.link/20251128212055.1409093-3-rrendec@redhat.com void dw_pcie_msi_init(struct dw_pcie_rp *pp); int dw_pcie_msi_host_init(struct dw_pcie_rp *pp); void dw_pcie_free_msi(struct dw_pcie_rp *pp); -@@ -831,10 +831,7 @@ static inline int dw_pcie_resume_noirq(s +@@ -833,10 +833,7 @@ static inline int dw_pcie_resume_noirq(s return 0; } diff --git a/target/linux/generic/backport-6.18/940-v7.1-net-dsa-realtek-rtl8365mb-fix-mode-mask-calculation.patch b/target/linux/generic/backport-6.18/940-v7.1-net-dsa-realtek-rtl8365mb-fix-mode-mask-calculation.patch deleted file mode 100644 index 567e229d973..00000000000 --- a/target/linux/generic/backport-6.18/940-v7.1-net-dsa-realtek-rtl8365mb-fix-mode-mask-calculation.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 0c078021d3861966614d5e594ee03587f0c9e74d Mon Sep 17 00:00:00 2001 -From: Mieczyslaw Nalewaj -Date: Sun, 19 Apr 2026 21:37:07 +0200 -Subject: net: dsa: realtek: rtl8365mb: fix mode mask calculation - -The RTL8365MB_DIGITAL_INTERFACE_SELECT_MODE_MASK macro was shifting -the 4-bit mask (0xF) by only (_extint % 2) bits instead of -(_extint % 2) * 4. This caused the mask to overlap with the adjacent -nibble when configuring odd-numbered external interfaces, selecting -the wrong bits entirely. - -Align the shift calculation with the existing ...MODE_OFFSET macro. - -Fixes: 4af2950c50c8 ("net: dsa: realtek-smi: add rtl8365mb subdriver for RTL8365MB-VC") -Signed-off-by: Abdulkader Alrezej -Signed-off-by: Mieczyslaw Nalewaj -Reviewed-by: Luiz Angelo Daros de Luca -Link: https://patch.msgid.link/400a6387-a444-4576-af6d-26be5410bce3@yahoo.com -Signed-off-by: Paolo Abeni ---- - drivers/net/dsa/realtek/rtl8365mb.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/net/dsa/realtek/rtl8365mb.c -+++ b/drivers/net/dsa/realtek/rtl8365mb.c -@@ -216,7 +216,7 @@ - (_extint) == 2 ? RTL8365MB_DIGITAL_INTERFACE_SELECT_REG1 : \ - 0x0) - #define RTL8365MB_DIGITAL_INTERFACE_SELECT_MODE_MASK(_extint) \ -- (0xF << (((_extint) % 2))) -+ (0xF << (((_extint) % 2) * 4)) - #define RTL8365MB_DIGITAL_INTERFACE_SELECT_MODE_OFFSET(_extint) \ - (((_extint) % 2) * 4) - diff --git a/target/linux/generic/hack-6.18/710-net-sched-sch_cake-configure-sync_time-via-debugfs.patch b/target/linux/generic/hack-6.18/710-net-sched-sch_cake-configure-sync_time-via-debugfs.patch index c8b046ac667..b94d6f3a696 100644 --- a/target/linux/generic/hack-6.18/710-net-sched-sch_cake-configure-sync_time-via-debugfs.patch +++ b/target/linux/generic/hack-6.18/710-net-sched-sch_cake-configure-sync_time-via-debugfs.patch @@ -43,7 +43,7 @@ Signed-off-by: Jonas Köppeler struct net_device *dev = qdisc_dev(sch); struct cake_sched_data *other_priv; u64 new_rate = q->config->rate_bps; -@@ -3358,8 +3361,13 @@ static int __init cake_module_init(void) +@@ -3361,8 +3364,13 @@ static int __init cake_module_init(void) return ret; ret = register_qdisc(&cake_mq_qdisc_ops); @@ -58,7 +58,7 @@ Signed-off-by: Jonas Köppeler return ret; } -@@ -3368,6 +3376,7 @@ static void __exit cake_module_exit(void +@@ -3371,6 +3379,7 @@ static void __exit cake_module_exit(void { unregister_qdisc(&cake_qdisc_ops); unregister_qdisc(&cake_mq_qdisc_ops); diff --git a/target/linux/generic/hack-6.18/950-silence-unused-variable-warnings.patch b/target/linux/generic/hack-6.18/950-silence-unused-variable-warnings.patch index e544ef5cadd..e75db689dc7 100644 --- a/target/linux/generic/hack-6.18/950-silence-unused-variable-warnings.patch +++ b/target/linux/generic/hack-6.18/950-silence-unused-variable-warnings.patch @@ -32,7 +32,7 @@ Signed-off-by: Mieczyslaw Nalewaj mod##SNMP_UPD_PO_STATS((net)->mib.statname##_statistics, field, _val);\ --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c -@@ -3967,6 +3967,12 @@ static u32 tcp_newly_delivered(struct so +@@ -3969,6 +3969,12 @@ static u32 tcp_newly_delivered(struct so struct tcp_sock *tp = tcp_sk(sk); u32 delivered; diff --git a/target/linux/generic/kernel-6.18 b/target/linux/generic/kernel-6.18 index 65211c6073b..d2dcb5eb41d 100644 --- a/target/linux/generic/kernel-6.18 +++ b/target/linux/generic/kernel-6.18 @@ -1,2 +1,2 @@ -LINUX_VERSION-6.18 = .32 -LINUX_KERNEL_HASH-6.18.32 = 067dadd445578284ea6158f312f7970d8940fed3e094dbe49cff66d188d3bda4 +LINUX_VERSION-6.18 = .33 +LINUX_KERNEL_HASH-6.18.33 = 6f16ff302599f6fe34742890322cf0775703105fbd8767449682fca6af0fb782 diff --git a/target/linux/generic/pending-6.18/479-mtd-spi-nor-add-xtx-xt25f128b.patch b/target/linux/generic/pending-6.18/479-mtd-spi-nor-add-xtx-xt25f128b.patch index 06741bceb69..33316eaf1ef 100644 --- a/target/linux/generic/pending-6.18/479-mtd-spi-nor-add-xtx-xt25f128b.patch +++ b/target/linux/generic/pending-6.18/479-mtd-spi-nor-add-xtx-xt25f128b.patch @@ -74,7 +74,7 @@ Signed-off-by: Felix Fietkau static const struct flash_info spi_nor_generic_flash = { --- a/drivers/mtd/spi-nor/core.h +++ b/drivers/mtd/spi-nor/core.h -@@ -598,6 +598,7 @@ extern const struct spi_nor_manufacturer +@@ -604,6 +604,7 @@ extern const struct spi_nor_manufacturer extern const struct spi_nor_manufacturer spi_nor_sst; extern const struct spi_nor_manufacturer spi_nor_winbond; extern const struct spi_nor_manufacturer spi_nor_xmc; diff --git a/target/linux/generic/pending-6.18/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch b/target/linux/generic/pending-6.18/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch index 486d7a004dc..7a322868443 100644 --- a/target/linux/generic/pending-6.18/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch +++ b/target/linux/generic/pending-6.18/487-mtd-spinand-Add-support-for-Etron-EM73D044VCx.patch @@ -50,7 +50,7 @@ Submitted-by: Daniel Danzberger obj-$(CONFIG_MTD_SPI_NAND) += spinand.o --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1237,6 +1237,7 @@ static const struct spinand_manufacturer +@@ -1228,6 +1228,7 @@ static const struct spinand_manufacturer &ato_spinand_manufacturer, &esmt_8c_spinand_manufacturer, &esmt_c8_spinand_manufacturer, @@ -161,7 +161,7 @@ Submitted-by: Daniel Danzberger +}; --- a/include/linux/mtd/spinand.h +++ b/include/linux/mtd/spinand.h -@@ -356,6 +356,7 @@ extern const struct spinand_manufacturer +@@ -362,6 +362,7 @@ extern const struct spinand_manufacturer extern const struct spinand_manufacturer ato_spinand_manufacturer; extern const struct spinand_manufacturer esmt_8c_spinand_manufacturer; extern const struct spinand_manufacturer esmt_c8_spinand_manufacturer; diff --git a/target/linux/generic/pending-6.18/681-net-remove-NETIF_F_GSO_FRAGLIST-from-NETIF_F_GSO_SOF.patch b/target/linux/generic/pending-6.18/681-net-remove-NETIF_F_GSO_FRAGLIST-from-NETIF_F_GSO_SOF.patch index be7ebdda688..f3d96f6bb22 100644 --- a/target/linux/generic/pending-6.18/681-net-remove-NETIF_F_GSO_FRAGLIST-from-NETIF_F_GSO_SOF.patch +++ b/target/linux/generic/pending-6.18/681-net-remove-NETIF_F_GSO_FRAGLIST-from-NETIF_F_GSO_SOF.patch @@ -35,7 +35,7 @@ Signed-off-by: Felix Fietkau | NETIF_F_HW_CSUM --- a/drivers/net/macvlan.c +++ b/drivers/net/macvlan.c -@@ -904,7 +904,7 @@ static int macvlan_hwtstamp_set(struct n +@@ -905,7 +905,7 @@ static int macvlan_hwtstamp_set(struct n static struct lock_class_key macvlan_netdev_addr_lock_key; #define ALWAYS_ON_OFFLOADS \ diff --git a/target/linux/generic/pending-6.18/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch b/target/linux/generic/pending-6.18/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch index e583cc5dfa4..78856b21c3f 100644 --- a/target/linux/generic/pending-6.18/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch +++ b/target/linux/generic/pending-6.18/701-netfilter-nf_tables-ignore-EOPNOTSUPP-on-flowtable-d.patch @@ -18,7 +18,7 @@ Signed-off-by: Felix Fietkau --- a/net/netfilter/nf_tables_api.c +++ b/net/netfilter/nf_tables_api.c -@@ -9091,7 +9091,7 @@ static int nft_register_flowtable_ops(st +@@ -9092,7 +9092,7 @@ static int nft_register_flowtable_ops(st err = flowtable->data.type->setup(&flowtable->data, ops->dev, FLOW_BLOCK_BIND); diff --git a/target/linux/generic/pending-6.18/812-PCI-sysfs-enforce-single-creation-of-sysfs-entry-for.patch b/target/linux/generic/pending-6.18/812-PCI-sysfs-enforce-single-creation-of-sysfs-entry-for.patch index 311751dd9f6..bac70c5bd81 100644 --- a/target/linux/generic/pending-6.18/812-PCI-sysfs-enforce-single-creation-of-sysfs-entry-for.patch +++ b/target/linux/generic/pending-6.18/812-PCI-sysfs-enforce-single-creation-of-sysfs-entry-for.patch @@ -68,7 +68,7 @@ Signed-off-by: Christian Marangi /* show configuration fields */ #define pci_config_attr(field, format_string) \ -@@ -1701,12 +1703,32 @@ static const struct attribute_group pci_ +@@ -1673,12 +1675,32 @@ static const struct attribute_group pci_ .is_visible = resource_resize_is_visible, }; @@ -102,7 +102,7 @@ Signed-off-by: Christian Marangi } /** -@@ -1727,21 +1749,23 @@ static int __init pci_sysfs_init(void) +@@ -1699,21 +1721,23 @@ static int __init pci_sysfs_init(void) { struct pci_dev *pdev = NULL; struct pci_bus *pbus = NULL; diff --git a/target/linux/generic/pending-6.18/928-crypto-eip93-fix-hmac-setkey-algo-selection.patch b/target/linux/generic/pending-6.18/928-crypto-eip93-fix-hmac-setkey-algo-selection.patch deleted file mode 100644 index 66a9356854d..00000000000 --- a/target/linux/generic/pending-6.18/928-crypto-eip93-fix-hmac-setkey-algo-selection.patch +++ /dev/null @@ -1,82 +0,0 @@ -From: Aleksander Jan Bajkowski -Date: Sat, 11 Apr 2026 23:08:17 +0200 -Subject: [PATCH] crypto: inside-secure/eip93 - eip93: fix hmac setkey algo - selection - -eip93_hmac_setkey() allocates a temporary ahash transform for -computing HMAC ipad/opad key material. The allocation uses the -driver-specific cra_driver_name (e.g. "sha256-eip93") but passes -CRYPTO_ALG_ASYNC as the mask, which excludes async algorithms. - -Since the EIP93 hash algorithms are the only ones registered -under those driver names and they are inherently async, the -lookup is self-contradictory and always fails with -ENOENT. - -When called from the AEAD setkey path, this failure leaves the -SA record partially initialized with zeroed digest fields. A -subsequent crypto operation then dereferences a NULL pointer in -the request context, resulting in a kernel panic: - -``` - pc : eip93_aead_handle_result+0xc8c/0x1240 [crypto_hw_eip93] - lr : eip93_aead_handle_result+0xbec/0x1240 [crypto_hw_eip93] - sp : ffffffc082feb820 - x29: ffffffc082feb820 x28: ffffff8011043980 x27: 0000000000000000 - x26: 0000000000000000 x25: ffffffc078da0bc8 x24: 0000000091043980 - x23: ffffff8004d59e50 x22: ffffff8004d59410 x21: ffffff8004d593c0 - x20: ffffff8004d593c0 x19: ffffff8004d4f300 x18: 0000000000000000 - x17: 0000000000000000 x16: 0000000000000000 x15: 0000007fda7aa498 - x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000 - x11: 0000000000000000 x10: fffffffff8127a80 x9 : 0000000000000000 - x8 : ffffff8004d4f380 x7 : 0000000000000000 x6 : 000000000000003f - x5 : 0000000000000040 x4 : 0000000000000008 x3 : 0000000000000009 - x2 : 0000000000000008 x1 : 0000000028000003 x0 : ffffff8004d388c0 - Code: 910142b6 f94012e0 f9002aa0 f90006d3 (f9400740) -``` - -The reported symbol eip93_aead_handle_result+0xc8c is a -resolution artifact from static functions being merged under -the nearest exported symbol. Decoding the faulting sequence: - -``` - 910142b6 ADD X22, X21, #0x50 - f94012e0 LDR X0, [X23, #0x20] - f9002aa0 STR X0, [X21, #0x50] - f90006d3 STR X19, [X22, #0x8] - f9400740 LDR X0, [X26, #0x8] -``` - -The faulting LDR at [X26, #0x8] is loading ctx->flags -(offset 8 in eip93_hash_ctx), where ctx has been resolved -to NULL from a partially initialized or unreachable -transform context following the failed setkey. - -Fix this by dropping the CRYPTO_ALG_ASYNC mask from the -crypto_alloc_ahash() call. The code already handles async -completion correctly via crypto_wait_req(), so there is no -requirement to restrict the lookup to synchronous algorithms. - -Note that hashing a single 64-byte block through the hardware -is likely slower than doing it in software due to the DMA -round-trip overhead, but offloading it may still spare CPU -cycles on the slower embedded cores where this IP is found. - -Fixes: 9739f5f93b78 ("crypto: eip93 - Add Inside Secure SafeXcel EIP-93 crypto engine support") -Signed-off-by: Aleksander Jan Bajkowski -[Detailed investigation report of this bug] -Signed-off-by: Kenneth Kasilag ---- - drivers/crypto/inside-secure/eip93/eip93-common.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/crypto/inside-secure/eip93/eip93-common.c -+++ b/drivers/crypto/inside-secure/eip93/eip93-common.c -@@ -731,7 +731,7 @@ int eip93_hmac_setkey(u32 ctx_flags, con - return -EINVAL; - } - -- ahash_tfm = crypto_alloc_ahash(alg_name, 0, CRYPTO_ALG_ASYNC); -+ ahash_tfm = crypto_alloc_ahash(alg_name, 0, 0); - if (IS_ERR(ahash_tfm)) - return PTR_ERR(ahash_tfm); - diff --git a/target/linux/ipq40xx/patches-6.18/701-net-dsa-add-out-of-band-tagging-protocol.patch b/target/linux/ipq40xx/patches-6.18/701-net-dsa-add-out-of-band-tagging-protocol.patch index 503e9cafdec..fe5457d8290 100644 --- a/target/linux/ipq40xx/patches-6.18/701-net-dsa-add-out-of-band-tagging-protocol.patch +++ b/target/linux/ipq40xx/patches-6.18/701-net-dsa-add-out-of-band-tagging-protocol.patch @@ -136,7 +136,7 @@ Signed-off-by: Maxime Chevallier #include #include #include -@@ -5082,6 +5086,9 @@ static const u8 skb_ext_type_len[] = { +@@ -5089,6 +5093,9 @@ static const u8 skb_ext_type_len[] = { #if IS_ENABLED(CONFIG_INET_PSP) [SKB_EXT_PSP] = SKB_EXT_CHUNKSIZEOF(struct psp_skb_ext), #endif diff --git a/target/linux/ipq40xx/patches-6.18/900-PCI-qcom-add-hack-compatible-for-ipq4019-Lantiq-DSL.patch b/target/linux/ipq40xx/patches-6.18/900-PCI-qcom-add-hack-compatible-for-ipq4019-Lantiq-DSL.patch index 42a010b8839..bfd9e4459ed 100644 --- a/target/linux/ipq40xx/patches-6.18/900-PCI-qcom-add-hack-compatible-for-ipq4019-Lantiq-DSL.patch +++ b/target/linux/ipq40xx/patches-6.18/900-PCI-qcom-add-hack-compatible-for-ipq4019-Lantiq-DSL.patch @@ -43,7 +43,7 @@ Signed-off-by: Florian Maurer }; #define QCOM_PCIE_2_7_0_MAX_SUPPLIES 2 -@@ -727,12 +740,65 @@ static int qcom_pcie_post_init_2_3_2(str +@@ -732,12 +745,65 @@ static int qcom_pcie_post_init_2_3_2(str return 0; } @@ -110,7 +110,7 @@ Signed-off-by: Florian Maurer int ret; res->num_clks = devm_clk_bulk_get_all(dev, &res->clks); -@@ -771,6 +837,17 @@ static void qcom_pcie_deinit_2_4_0(struc +@@ -776,6 +842,17 @@ static void qcom_pcie_deinit_2_4_0(struc clk_bulk_disable_unprepare(res->num_clks, res->clks); } @@ -128,7 +128,7 @@ Signed-off-by: Florian Maurer static int qcom_pcie_init_2_4_0(struct qcom_pcie *pcie) { struct qcom_pcie_resources_2_4_0 *res = &pcie->res.v2_4_0; -@@ -1379,6 +1456,16 @@ static const struct qcom_pcie_ops ops_2_ +@@ -1384,6 +1461,16 @@ static const struct qcom_pcie_ops ops_2_ .ltssm_enable = qcom_pcie_2_3_2_ltssm_enable, }; @@ -145,7 +145,7 @@ Signed-off-by: Florian Maurer /* Qcom IP rev.: 2.3.3 Synopsys IP rev.: 4.30a */ static const struct qcom_pcie_ops ops_2_3_3 = { .get_resources = qcom_pcie_get_resources_2_3_3, -@@ -1457,6 +1544,10 @@ static const struct qcom_pcie_cfg cfg_2_ +@@ -1462,6 +1549,10 @@ static const struct qcom_pcie_cfg cfg_2_ .ops = &ops_2_4_0, }; @@ -156,7 +156,7 @@ Signed-off-by: Florian Maurer static const struct qcom_pcie_cfg cfg_2_7_0 = { .ops = &ops_2_7_0, }; -@@ -2016,6 +2107,7 @@ static const struct of_device_id qcom_pc +@@ -2021,6 +2112,7 @@ static const struct of_device_id qcom_pc { .compatible = "qcom,pcie-apq8064", .data = &cfg_2_1_0 }, { .compatible = "qcom,pcie-apq8084", .data = &cfg_1_0_0 }, { .compatible = "qcom,pcie-ipq4019", .data = &cfg_2_4_0 }, diff --git a/target/linux/ipq40xx/patches-6.18/999-atm-mpoa-intel-dsl-phy-support.patch b/target/linux/ipq40xx/patches-6.18/999-atm-mpoa-intel-dsl-phy-support.patch index 4e52155c995..ab3512af56e 100644 --- a/target/linux/ipq40xx/patches-6.18/999-atm-mpoa-intel-dsl-phy-support.patch +++ b/target/linux/ipq40xx/patches-6.18/999-atm-mpoa-intel-dsl-phy-support.patch @@ -4,7 +4,7 @@ Subject: [PATCH] UGW_SW-29163: ATM oam support --- a/drivers/net/ppp/ppp_generic.c +++ b/drivers/net/ppp/ppp_generic.c -@@ -3003,6 +3003,24 @@ char *ppp_dev_name(struct ppp_channel *c +@@ -3006,6 +3006,24 @@ char *ppp_dev_name(struct ppp_channel *c return name; } @@ -29,7 +29,7 @@ Subject: [PATCH] UGW_SW-29163: ATM oam support /* * Disconnect a channel from the generic layer. -@@ -3664,6 +3682,7 @@ EXPORT_SYMBOL(ppp_unregister_channel); +@@ -3667,6 +3685,7 @@ EXPORT_SYMBOL(ppp_unregister_channel); EXPORT_SYMBOL(ppp_channel_index); EXPORT_SYMBOL(ppp_unit_number); EXPORT_SYMBOL(ppp_dev_name); diff --git a/target/linux/lantiq/patches-6.18/001-MIPS-lantiq-add-pcie-driver.patch b/target/linux/lantiq/patches-6.18/001-MIPS-lantiq-add-pcie-driver.patch index 6cbc67e29d2..e6ede81eadc 100644 --- a/target/linux/lantiq/patches-6.18/001-MIPS-lantiq-add-pcie-driver.patch +++ b/target/linux/lantiq/patches-6.18/001-MIPS-lantiq-add-pcie-driver.patch @@ -5518,7 +5518,7 @@ Signed-off-by: John Crispin (transaction layer end-to-end CRC checking). --- a/include/linux/pci.h +++ b/include/linux/pci.h -@@ -1660,6 +1660,8 @@ void pci_walk_bus(struct pci_bus *top, i +@@ -1654,6 +1654,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); diff --git a/target/linux/lantiq/patches-6.18/101-find_active_root.patch b/target/linux/lantiq/patches-6.18/101-find_active_root.patch index e07e6532673..4741dfb6128 100644 --- a/target/linux/lantiq/patches-6.18/101-find_active_root.patch +++ b/target/linux/lantiq/patches-6.18/101-find_active_root.patch @@ -98,8 +98,8 @@ Signed-off-by: Mathias Kresin return nr_parts; @@ -197,6 +249,7 @@ ofpart_none: + if (dedicated) of_node_put(ofpart_node); - of_node_put(pp); kfree(parts); + kfree(part_nodes); return ret; diff --git a/target/linux/mediatek/patches-6.18/010-v7.0-mtd-spinand-add-support-for-Dosilicon-DS35Q1GA-DS35M.patch b/target/linux/mediatek/patches-6.18/010-v7.0-mtd-spinand-add-support-for-Dosilicon-DS35Q1GA-DS35M.patch index 9e2498cc586..5dc74180679 100644 --- a/target/linux/mediatek/patches-6.18/010-v7.0-mtd-spinand-add-support-for-Dosilicon-DS35Q1GA-DS35M.patch +++ b/target/linux/mediatek/patches-6.18/010-v7.0-mtd-spinand-add-support-for-Dosilicon-DS35Q1GA-DS35M.patch @@ -44,7 +44,7 @@ Signed-off-by: Miquel Raynal obj-$(CONFIG_MTD_SPI_NAND) += spinand.o --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1235,6 +1235,7 @@ static const struct nand_ops spinand_ops +@@ -1226,6 +1226,7 @@ static const struct nand_ops spinand_ops static const struct spinand_manufacturer *spinand_manufacturers[] = { &alliancememory_spinand_manufacturer, &ato_spinand_manufacturer, @@ -148,7 +148,7 @@ Signed-off-by: Miquel Raynal +}; --- a/include/linux/mtd/spinand.h +++ b/include/linux/mtd/spinand.h -@@ -354,6 +354,7 @@ struct spinand_manufacturer { +@@ -360,6 +360,7 @@ struct spinand_manufacturer { /* SPI NAND manufacturers */ extern const struct spinand_manufacturer alliancememory_spinand_manufacturer; extern const struct spinand_manufacturer ato_spinand_manufacturer; diff --git a/target/linux/mediatek/patches-6.18/121-hack-spi-nand-1b-bbm.patch b/target/linux/mediatek/patches-6.18/121-hack-spi-nand-1b-bbm.patch index 27d0db43417..550d8a97ecd 100644 --- a/target/linux/mediatek/patches-6.18/121-hack-spi-nand-1b-bbm.patch +++ b/target/linux/mediatek/patches-6.18/121-hack-spi-nand-1b-bbm.patch @@ -11,7 +11,7 @@ Signed-off-by: Chuanhong Guo --- --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -979,7 +979,7 @@ static int spinand_mtd_write(struct mtd_ +@@ -970,7 +970,7 @@ static int spinand_mtd_write(struct mtd_ static bool spinand_isbad(struct nand_device *nand, const struct nand_pos *pos) { struct spinand_device *spinand = nand_to_spinand(nand); @@ -20,7 +20,7 @@ Signed-off-by: Chuanhong Guo struct nand_page_io_req req = { .pos = *pos, .ooblen = sizeof(marker), -@@ -998,7 +998,7 @@ static bool spinand_isbad(struct nand_de +@@ -989,7 +989,7 @@ static bool spinand_isbad(struct nand_de spinand_read_page(spinand, &req); } diff --git a/target/linux/mediatek/patches-6.18/330-snand-mtk-bmt-support.patch b/target/linux/mediatek/patches-6.18/330-snand-mtk-bmt-support.patch index df58fa08214..182872bf0c4 100644 --- a/target/linux/mediatek/patches-6.18/330-snand-mtk-bmt-support.patch +++ b/target/linux/mediatek/patches-6.18/330-snand-mtk-bmt-support.patch @@ -20,7 +20,7 @@ Signed-off-by: Chuanhong Guo int spinand_read_reg_op(struct spinand_device *spinand, u8 reg, u8 *val) { -@@ -1685,6 +1686,7 @@ static int spinand_probe(struct spi_mem +@@ -1719,6 +1720,7 @@ static int spinand_probe(struct spi_mem if (ret) return ret; @@ -28,7 +28,7 @@ Signed-off-by: Chuanhong Guo ret = mtd_device_register(mtd, NULL, 0); if (ret) goto err_spinand_cleanup; -@@ -1692,6 +1694,7 @@ static int spinand_probe(struct spi_mem +@@ -1726,6 +1728,7 @@ static int spinand_probe(struct spi_mem return 0; err_spinand_cleanup: @@ -36,7 +36,7 @@ Signed-off-by: Chuanhong Guo spinand_cleanup(spinand); return ret; -@@ -1710,6 +1713,7 @@ static int spinand_remove(struct spi_mem +@@ -1744,6 +1747,7 @@ static int spinand_remove(struct spi_mem if (ret) return ret; diff --git a/target/linux/mediatek/patches-6.18/435-drivers-mtd-spinand-Add-calibration-support-for-spin.patch b/target/linux/mediatek/patches-6.18/435-drivers-mtd-spinand-Add-calibration-support-for-spin.patch index 035986dbbd8..14efbc19d35 100644 --- a/target/linux/mediatek/patches-6.18/435-drivers-mtd-spinand-Add-calibration-support-for-spin.patch +++ b/target/linux/mediatek/patches-6.18/435-drivers-mtd-spinand-Add-calibration-support-for-spin.patch @@ -11,7 +11,7 @@ Signed-off-by: SkyLake.Huang --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1279,6 +1279,56 @@ static int spinand_manufacturer_match(st +@@ -1270,6 +1270,56 @@ static int spinand_manufacturer_match(st return -EOPNOTSUPP; } @@ -68,9 +68,9 @@ Signed-off-by: SkyLake.Huang static int spinand_id_detect(struct spinand_device *spinand) { u8 *id = spinand->id.data; -@@ -1555,6 +1605,10 @@ static int spinand_init(struct spinand_d - if (!spinand->scratchbuf) - return -ENOMEM; +@@ -1589,6 +1639,10 @@ static int spinand_init(struct spinand_d + + spinand_init_ssdr_templates(spinand); + ret = spi_mem_do_calibration(spinand->spimem, spinand_cal_read, spinand); + if (ret) diff --git a/target/linux/mediatek/patches-6.18/436-drivers-mtd-spi-nor-Add-calibration-support-for-spi-.patch b/target/linux/mediatek/patches-6.18/436-drivers-mtd-spi-nor-Add-calibration-support-for-spi-.patch index 0a2ee86a616..29092f4aeb5 100644 --- a/target/linux/mediatek/patches-6.18/436-drivers-mtd-spi-nor-Add-calibration-support-for-spi-.patch +++ b/target/linux/mediatek/patches-6.18/436-drivers-mtd-spi-nor-Add-calibration-support-for-spi-.patch @@ -12,7 +12,7 @@ Signed-off-by: SkyLake.Huang --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1320,7 +1320,10 @@ static int spinand_cal_read(void *priv, +@@ -1311,7 +1311,10 @@ static int spinand_cal_read(void *priv, if (ret) return ret; diff --git a/target/linux/mediatek/patches-6.18/960-asus-hack-u-boot-ignore-mtdparts.patch b/target/linux/mediatek/patches-6.18/960-asus-hack-u-boot-ignore-mtdparts.patch index 797adb90436..1d079331858 100644 --- a/target/linux/mediatek/patches-6.18/960-asus-hack-u-boot-ignore-mtdparts.patch +++ b/target/linux/mediatek/patches-6.18/960-asus-hack-u-boot-ignore-mtdparts.patch @@ -29,7 +29,7 @@ Signed-off-by: Daniel Golle --- a/drivers/mtd/nand/spi/core.c +++ b/drivers/mtd/nand/spi/core.c -@@ -1778,6 +1778,7 @@ static int spinand_remove(struct spi_mem +@@ -1812,6 +1812,7 @@ static int spinand_remove(struct spi_mem static const struct spi_device_id spinand_ids[] = { { .name = "spi-nand" }, @@ -37,7 +37,7 @@ Signed-off-by: Daniel Golle { /* sentinel */ }, }; MODULE_DEVICE_TABLE(spi, spinand_ids); -@@ -1785,6 +1786,7 @@ MODULE_DEVICE_TABLE(spi, spinand_ids); +@@ -1819,6 +1820,7 @@ MODULE_DEVICE_TABLE(spi, spinand_ids); #ifdef CONFIG_OF static const struct of_device_id spinand_of_ids[] = { { .compatible = "spi-nand" }, diff --git a/target/linux/ramips/patches-6.18/405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch b/target/linux/ramips/patches-6.18/405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch index ac6ca3954c2..9c34e01aa41 100644 --- a/target/linux/ramips/patches-6.18/405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch +++ b/target/linux/ramips/patches-6.18/405-mtd-spi-nor-Add-support-for-BoHong-bh25q128as.patch @@ -69,7 +69,7 @@ Signed-off-by: David Bauer &spi_nor_everspin, --- a/drivers/mtd/spi-nor/core.h +++ b/drivers/mtd/spi-nor/core.h -@@ -585,6 +585,7 @@ struct sfdp { +@@ -591,6 +591,7 @@ struct sfdp { /* Manufacturer drivers. */ extern const struct spi_nor_manufacturer spi_nor_atmel; diff --git a/target/linux/starfive/patches-6.18/1013-dmaengine-dw-axi-dmac-Handle-xfer-start-while-non-id.patch b/target/linux/starfive/patches-6.18/1013-dmaengine-dw-axi-dmac-Handle-xfer-start-while-non-id.patch index a4a84ee82cf..becadc7b4df 100644 --- a/target/linux/starfive/patches-6.18/1013-dmaengine-dw-axi-dmac-Handle-xfer-start-while-non-id.patch +++ b/target/linux/starfive/patches-6.18/1013-dmaengine-dw-axi-dmac-Handle-xfer-start-while-non-id.patch @@ -28,7 +28,7 @@ Signed-off-by: Curry Zhang } axi_dma_enable(chan->chip); -@@ -1074,6 +1076,14 @@ static noinline void axi_chan_handle_err +@@ -1072,6 +1074,14 @@ static noinline void axi_chan_handle_err axi_chan_name(chan)); goto out; } diff --git a/target/linux/starfive/patches-6.18/1014-dmaengine-dw-axi-dmac-Add-StarFive-JH7100-support.patch b/target/linux/starfive/patches-6.18/1014-dmaengine-dw-axi-dmac-Add-StarFive-JH7100-support.patch index 426f3c09161..6d1de6da4a9 100644 --- a/target/linux/starfive/patches-6.18/1014-dmaengine-dw-axi-dmac-Add-StarFive-JH7100-support.patch +++ b/target/linux/starfive/patches-6.18/1014-dmaengine-dw-axi-dmac-Add-StarFive-JH7100-support.patch @@ -12,7 +12,7 @@ Signed-off-by: Emil Renner Berthing --- a/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c +++ b/drivers/dma/dw-axi-dmac/dw-axi-dmac-platform.c -@@ -723,8 +723,13 @@ static int dw_axi_dma_set_hw_desc(struct +@@ -721,8 +721,13 @@ static int dw_axi_dma_set_hw_desc(struct hw_desc->lli->block_ts_lo = cpu_to_le32(block_ts - 1); @@ -26,7 +26,7 @@ Signed-off-by: Emil Renner Berthing hw_desc->lli->ctl_lo = cpu_to_le32(ctllo); set_desc_src_master(hw_desc); -@@ -1589,7 +1594,11 @@ static int dw_probe(struct platform_devi +@@ -1587,7 +1592,11 @@ static int dw_probe(struct platform_devi * Therefore, set constraint to 1024 * 4. */ dw->dma.dev->dma_parms = &dw->dma_parms; @@ -38,7 +38,7 @@ Signed-off-by: Emil Renner Berthing platform_set_drvdata(pdev, chip); pm_runtime_enable(chip->dev); -@@ -1674,6 +1683,9 @@ static const struct of_device_id dw_dma_ +@@ -1672,6 +1681,9 @@ static const struct of_device_id dw_dma_ .compatible = "intel,kmb-axi-dma", .data = (void *)AXI_DMA_FLAG_HAS_APB_REGS, }, {