From: John Audia Date: Thu, 14 May 2026 15:40:33 +0000 (-0400) Subject: kernel: bump 6.12 to 6.12.88 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=82e97a66de1ca5e738f559961e5edcbb95fce86a;p=thirdparty%2Fopenwrt.git kernel: bump 6.12 to 6.12.88 Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.88 Manually rebased: bcm27xx/patches-6.12/950-0057-MMC-added-alternative-MMC-driver.patch bcm27xx/patches-6.12/950-0750-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch All other patches automatically rebased via update_kernel.sh Signed-off-by: John Audia Link: https://github.com/openwrt/openwrt/pull/23370 Signed-off-by: Hauke Mehrtens --- diff --git a/target/linux/bcm27xx/patches-6.12/950-0057-MMC-added-alternative-MMC-driver.patch b/target/linux/bcm27xx/patches-6.12/950-0057-MMC-added-alternative-MMC-driver.patch index 583dbe6de0b..748eb2b7cc1 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0057-MMC-added-alternative-MMC-driver.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0057-MMC-added-alternative-MMC-driver.patch @@ -2011,10 +2011,10 @@ Signed-off-by: Phil Elwell sdhci_dumpregs(host); --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h -@@ -296,6 +296,7 @@ struct mmc_card { - #define MMC_QUIRK_BROKEN_CACHE_FLUSH (1<<16) /* Don't flush cache until the write has occurred */ +@@ -297,6 +297,7 @@ struct mmc_card { #define MMC_QUIRK_BROKEN_SD_POWEROFF_NOTIFY (1<<17) /* Disable broken SD poweroff notify support */ #define MMC_QUIRK_NO_UHS_DDR50_TUNING (1<<18) /* Disable DDR50 tuning */ + #define MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME (1<<20) /* Secure erase/trim time is fixed regardless of size */ +#define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */ bool written_flag; /* Indicates eMMC has been written since power on */ diff --git a/target/linux/bcm27xx/patches-6.12/950-0317-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch b/target/linux/bcm27xx/patches-6.12/950-0317-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch index a69615d3dd7..beb38ecf6d7 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0317-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0317-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch @@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell --- a/drivers/video/fbdev/core/fb_defio.c +++ b/drivers/video/fbdev/core/fb_defio.c -@@ -346,7 +346,8 @@ static void fb_deferred_io_lastclose(str +@@ -444,7 +444,8 @@ static void fb_deferred_io_lastclose(str { unsigned long i; diff --git a/target/linux/bcm27xx/patches-6.12/950-0392-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch b/target/linux/bcm27xx/patches-6.12/950-0392-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch index 7b993d9987e..c5a59405f1f 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0392-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0392-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch @@ -70,7 +70,7 @@ Signed-off-by: Dave Stevenson * @fb_info: frame buffer info structure --- a/include/linux/fb.h +++ b/include/linux/fb.h -@@ -511,6 +511,7 @@ struct fb_info { +@@ -513,6 +513,7 @@ struct fb_info { bool skip_vt_switch; /* no VT switch on suspend/resume required */ bool skip_panic; /* Do not write to the fb after a panic */ @@ -78,7 +78,7 @@ Signed-off-by: Dave Stevenson }; /* This will go away -@@ -600,6 +601,7 @@ extern ssize_t fb_sys_write(struct fb_in +@@ -602,6 +603,7 @@ extern ssize_t fb_sys_write(struct fb_in .fb_imageblit = sys_imageblit /* fbmem.c */ diff --git a/target/linux/bcm27xx/patches-6.12/950-0428-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch b/target/linux/bcm27xx/patches-6.12/950-0428-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch index 0cf6030c76d..2fb71a8a0c5 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0428-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0428-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch @@ -145,7 +145,7 @@ Signed-off-by: Jonathan Bell --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h -@@ -321,6 +321,7 @@ struct mmc_card { +@@ -322,6 +322,7 @@ struct mmc_card { struct sd_switch_caps sw_caps; /* switch (CMD6) caps */ struct sd_ext_reg ext_power; /* SD extension reg for PM */ struct sd_ext_reg ext_perf; /* SD extension reg for PERF */ diff --git a/target/linux/bcm27xx/patches-6.12/950-0440-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch b/target/linux/bcm27xx/patches-6.12/950-0440-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch index fd017a03a4b..df94ea0ca52 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0440-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0440-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch @@ -103,7 +103,7 @@ Signed-off-by: Jonathan Bell --- a/drivers/mmc/core/queue.c +++ b/drivers/mmc/core/queue.c -@@ -266,6 +266,11 @@ static blk_status_t mmc_mq_queue_rq(stru +@@ -271,6 +271,11 @@ static blk_status_t mmc_mq_queue_rq(stru spin_unlock_irq(&mq->lock); return BLK_STS_RESOURCE; } @@ -115,7 +115,7 @@ Signed-off-by: Jonathan Bell break; default: /* -@@ -282,6 +287,8 @@ static blk_status_t mmc_mq_queue_rq(stru +@@ -287,6 +292,8 @@ static blk_status_t mmc_mq_queue_rq(stru /* Parallel dispatch of requests is not supported at the moment */ mq->busy = true; @@ -124,7 +124,7 @@ Signed-off-by: Jonathan Bell mq->in_flight[issue_type] += 1; get_card = (mmc_tot_in_flight(mq) == 1); cqe_retune_ok = (mmc_cqe_qcnt(mq) == 1); -@@ -321,6 +328,8 @@ static blk_status_t mmc_mq_queue_rq(stru +@@ -326,6 +333,8 @@ static blk_status_t mmc_mq_queue_rq(stru bool put_card = false; spin_lock_irq(&mq->lock); @@ -171,7 +171,7 @@ Signed-off-by: Jonathan Bell --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h -@@ -344,6 +344,8 @@ struct mmc_card { +@@ -345,6 +345,8 @@ struct mmc_card { unsigned int nr_parts; struct workqueue_struct *complete_wq; /* Private workqueue */ diff --git a/target/linux/bcm27xx/patches-6.12/950-0445-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch b/target/linux/bcm27xx/patches-6.12/950-0445-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch index c116baa163f..52c597ea11c 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0445-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0445-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch @@ -15,9 +15,9 @@ Signed-off-by: Jonathan Bell --- a/drivers/mmc/core/quirks.h +++ b/drivers/mmc/core/quirks.h -@@ -181,6 +181,15 @@ static const struct mmc_fixup __maybe_un - MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc, - MMC_QUIRK_TRIM_BROKEN), +@@ -190,6 +190,15 @@ static const struct mmc_fixup __maybe_un + MMC_FIXUP("IB2932", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc, + MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME), + /* + * Larger Integral SD cards using rebranded Phison controllers trash diff --git a/target/linux/bcm27xx/patches-6.12/950-0750-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch b/target/linux/bcm27xx/patches-6.12/950-0750-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch index d32cde65484..ae2e1e25809 100644 --- a/target/linux/bcm27xx/patches-6.12/950-0750-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch +++ b/target/linux/bcm27xx/patches-6.12/950-0750-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch @@ -22,8 +22,8 @@ Signed-off-by: Jonathan Bell --- a/drivers/mmc/core/card.h +++ b/drivers/mmc/core/card.h -@@ -301,4 +301,9 @@ static inline int mmc_card_no_uhs_ddr50_ - return c->quirks & MMC_QUIRK_NO_UHS_DDR50_TUNING; +@@ -306,4 +306,9 @@ static inline int mmc_card_fixed_secure_ + return c->quirks & MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME; } +static inline int mmc_card_working_sd_cq(const struct mmc_card *c) @@ -47,11 +47,11 @@ Signed-off-by: Jonathan Bell /* --- a/include/linux/mmc/card.h +++ b/include/linux/mmc/card.h -@@ -296,6 +296,7 @@ struct mmc_card { - #define MMC_QUIRK_BROKEN_CACHE_FLUSH (1<<16) /* Don't flush cache until the write has occurred */ - #define MMC_QUIRK_BROKEN_SD_POWEROFF_NOTIFY (1<<17) /* Disable broken SD poweroff notify support */ +@@ -298,6 +298,7 @@ struct mmc_card { #define MMC_QUIRK_NO_UHS_DDR50_TUNING (1<<18) /* Disable DDR50 tuning */ -+#define MMC_QUIRK_WORKING_SD_CQ (1<<30) /* SD card has known-good CQ implementation */ + #define MMC_QUIRK_FIXED_SECURE_ERASE_TRIM_TIME (1<<20) /* Secure erase/trim time is fixed regardless of size */ #define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */ ++#define MMC_QUIRK_WORKING_SD_CQ (1<<30) /* SD card has known-good CQ implementation */ bool written_flag; /* Indicates eMMC has been written since power on */ + bool reenable_cmdq; /* Re-enable Command Queue */ diff --git a/target/linux/generic/backport-6.12/500-01-v6.13-block-add-support-for-defining-read-only-partitions.patch b/target/linux/generic/backport-6.12/500-01-v6.13-block-add-support-for-defining-read-only-partitions.patch index 78e2488e01e..f6b5c14cb9c 100644 --- a/target/linux/generic/backport-6.12/500-01-v6.13-block-add-support-for-defining-read-only-partitions.patch +++ b/target/linux/generic/backport-6.12/500-01-v6.13-block-add-support-for-defining-read-only-partitions.patch @@ -19,7 +19,7 @@ Signed-off-by: Jens Axboe --- a/block/blk.h +++ b/block/blk.h -@@ -593,6 +593,7 @@ void blk_free_ext_minor(unsigned int min +@@ -595,6 +595,7 @@ void blk_free_ext_minor(unsigned int min #define ADDPART_FLAG_NONE 0 #define ADDPART_FLAG_RAID 1 #define ADDPART_FLAG_WHOLEDISK 2 diff --git a/target/linux/generic/hack-6.12/800-GPIO-add-named-gpio-exports.patch b/target/linux/generic/hack-6.12/800-GPIO-add-named-gpio-exports.patch index f9b540f0d60..fe2b19c5632 100644 --- a/target/linux/generic/hack-6.12/800-GPIO-add-named-gpio-exports.patch +++ b/target/linux/generic/hack-6.12/800-GPIO-add-named-gpio-exports.patch @@ -15,9 +15,9 @@ Signed-off-by: John Crispin #include "gpiolib.h" #include "gpiolib-of.h" -@@ -1198,3 +1200,73 @@ void of_gpiochip_remove(struct gpio_chip - { - of_node_put(dev_of_node(&chip->gpiodev->dev)); +@@ -1205,3 +1207,73 @@ void of_gpiochip_remove(struct gpio_chip + + of_node_put(np); } + +#ifdef CONFIG_GPIO_SYSFS diff --git a/target/linux/generic/kernel-6.12 b/target/linux/generic/kernel-6.12 index b5629642196..aec3677b374 100644 --- a/target/linux/generic/kernel-6.12 +++ b/target/linux/generic/kernel-6.12 @@ -1,2 +1,2 @@ -LINUX_VERSION-6.12 = .87 -LINUX_KERNEL_HASH-6.12.87 = cc12a7644b4cef9e06627b29de8753e22b3d076703a9b52be84263e05c8b9830 +LINUX_VERSION-6.12 = .88 +LINUX_KERNEL_HASH-6.12.88 = 4b32f508911ad9c5df46b68e0b6fdd51014081e6b14088e409bc3f43a4315de8 diff --git a/target/linux/generic/pending-6.12/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch b/target/linux/generic/pending-6.12/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch index 48123c32ce4..730517bba14 100644 --- a/target/linux/generic/pending-6.12/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch +++ b/target/linux/generic/pending-6.12/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch @@ -161,7 +161,7 @@ Signed-off-by: Felix Fietkau struct rtnl_link { rtnl_doit_func doit; -@@ -5012,7 +5012,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu +@@ -5013,7 +5013,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu brport_nla_put_flag(skb, flags, mask, IFLA_BRPORT_MCAST_FLOOD, BR_MCAST_FLOOD) || brport_nla_put_flag(skb, flags, mask, diff --git a/target/linux/qualcommbe/patches-6.12/0315-net-pcs-Add-PCS-driver-for-Qualcomm-IPQ9574-SoC.patch b/target/linux/qualcommbe/patches-6.12/0315-net-pcs-Add-PCS-driver-for-Qualcomm-IPQ9574-SoC.patch index bae262a01c1..eb0750cf4e9 100644 --- a/target/linux/qualcommbe/patches-6.12/0315-net-pcs-Add-PCS-driver-for-Qualcomm-IPQ9574-SoC.patch +++ b/target/linux/qualcommbe/patches-6.12/0315-net-pcs-Add-PCS-driver-for-Qualcomm-IPQ9574-SoC.patch @@ -26,7 +26,7 @@ Signed-off-by: Lei Wei --- a/drivers/net/pcs/Kconfig +++ b/drivers/net/pcs/Kconfig -@@ -36,6 +36,15 @@ config PCS_MTK_USXGMII +@@ -43,6 +43,15 @@ config PCS_MTK_USXGMII 1000Base-X, 2500Base-X and Cisco SGMII are supported on the same differential pairs via an embedded LynxI PHY. @@ -44,7 +44,7 @@ Signed-off-by: Lei Wei depends on OF && (ARCH_RZN1 || COMPILE_TEST) --- a/drivers/net/pcs/Makefile +++ b/drivers/net/pcs/Makefile -@@ -7,5 +7,6 @@ pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs. +@@ -8,5 +8,6 @@ pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs. obj-$(CONFIG_PCS_XPCS) += pcs_xpcs.o obj-$(CONFIG_PCS_LYNX) += pcs-lynx.o obj-$(CONFIG_PCS_MTK_LYNXI) += pcs-mtk-lynxi.o