summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGoetz Goerisch2026-05-18 14:53:05 +0000
committerHauke Mehrtens2026-05-25 22:03:34 +0000
commitb3e40122a36e384c6cb4396b6ac2c2316543c193 (patch)
tree364b76c8ac6d39a06b969c64d15d0ea347732235
parentbcff9902c3db5e130ccd5f66fdc5c7cfbe71f8e8 (diff)
downloadopenwrt-b3e40122a36e384c6cb4396b6ac2c2316543c193.tar.gz
kernel: bump 6.6 to 6.6.140
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.140 Manually refreshed patches: generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch [1] bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch [2] All other patches autorefreshed. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.140&id=0b9e4bbfb7c949151e3acd44ed4aa33614d2e110 [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.6.140&id=b58baa1d50aa98fd3f6a8432ff0e36f83224450b Signed-off-by: Goetz Goerisch <ggoerisch@gmail.com> Link: https://github.com/openwrt/openwrt/pull/23435 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
-rw-r--r--include/kernel-6.64
-rw-r--r--target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch10
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0093-mmc-block-Don-t-do-single-sector-reads-during-recove.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0161-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0204-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch8
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0430-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0500-media-imx219-Advertise-embedded-data-node-on-media-p.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0514-sdhci-Add-SD-Express-hook.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0532-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch6
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0533-mmc-sdhci-of-dwcmshc-rp1-sdio-changes.patch8
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0678-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch4
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0718-drivers-mmc-sdhci-of-dwcmshc-add-RP1-dt-ID-and-quirk.patch4
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-0983-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1059-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1167-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch18
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1168-fixup-mmc-restrict-posted-write-counts-for-SD-cards-.patch2
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1331-mmc-don-t-reference-requests-after-finishing-them.patch10
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1336-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch6
-rw-r--r--target/linux/bcm27xx/patches-6.6/950-1506-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch8
-rw-r--r--target/linux/generic/backport-6.6/410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch2
-rw-r--r--target/linux/generic/backport-6.6/410-v6.13-04-mmc-block-attach-partitions-fwnode-if-found-in-mmc-c.patch6
-rw-r--r--target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch12
-rw-r--r--target/linux/generic/backport-6.6/911-v6.7-crypto-talitos-stop-using-crypto_ahash-init.patch4
-rw-r--r--target/linux/generic/hack-6.6/800-GPIO-add-named-gpio-exports.patch6
-rw-r--r--target/linux/generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch8
-rw-r--r--target/linux/generic/pending-6.6/250-kernel-fork-Increase-minimum-number-of-allowed-threa.patch2
-rw-r--r--target/linux/generic/pending-6.6/457-mmc-block-set-fwnode-of-disk-devices.patch2
-rw-r--r--target/linux/generic/pending-6.6/458-mmc-block-set-GENHD_FL_NVMEM.patch2
-rw-r--r--target/linux/generic/pending-6.6/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch2
-rw-r--r--target/linux/generic/pending-6.6/920-mangle_bootargs.patch2
-rw-r--r--target/linux/ipq806x/patches-6.6/902-ARM-decompressor-support-for-ATAGs-rootblock-parsing.patch2
-rw-r--r--target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch6
-rw-r--r--target/linux/mvebu/patches-6.6/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch2
34 files changed, 81 insertions, 81 deletions
diff --git a/include/kernel-6.6 b/include/kernel-6.6
index 30fece5618..3e4a27c806 100644
--- a/include/kernel-6.6
+++ b/include/kernel-6.6
@@ -1,2 +1,2 @@
-LINUX_VERSION-6.6 = .139
-LINUX_KERNEL_HASH-6.6.139 = a7cd71371dae38ac94c6c332fe16391b83fe173158020e2ea1b37277f8f3d740
+LINUX_VERSION-6.6 = .140
+LINUX_KERNEL_HASH-6.6.140 = d67c9674a2d4307f3747183935a5d434391df0fc5f5bf0e00691e059f664b7db
diff --git a/target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch b/target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch
index 775312c67d..83a95ac7a6 100644
--- a/target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch
+++ b/target/linux/ath79/patches-6.6/900-unaligned_access_hacks.patch
@@ -312,7 +312,7 @@ SVN-Revision: 35130
case IPV6_2292HOPOPTS:
--- a/net/ipv6/exthdrs.c
+++ b/net/ipv6/exthdrs.c
-@@ -992,7 +992,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
+@@ -995,7 +995,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
goto drop;
}
diff --git a/target/linux/bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch b/target/linux/bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch
index 6dddd80026..46bba81973 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0092-MMC-added-alternative-MMC-driver.patch
@@ -285,7 +285,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
static inline int mmc_blk_part_switch(struct mmc_card *card,
unsigned int part_type);
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
-@@ -3066,6 +3073,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3074,6 +3081,8 @@ static int mmc_blk_probe(struct mmc_card
{
struct mmc_blk_data *md;
int ret = 0;
@@ -294,7 +294,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
/*
* Check that the card supports the command class(es) we need.
-@@ -3073,7 +3082,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3081,7 +3090,16 @@ static int mmc_blk_probe(struct mmc_card
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
return -ENODEV;
@@ -312,7 +312,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
card->complete_wq = alloc_workqueue("mmc_complete",
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -3088,6 +3106,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3096,6 +3114,17 @@ static int mmc_blk_probe(struct mmc_card
goto out_free;
}
@@ -2013,10 +2013,10 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
sdhci_dumpregs(host);
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
-@@ -298,6 +298,7 @@ struct mmc_card {
- #define MMC_QUIRK_BROKEN_CACHE_FLUSH (1<<16) /* Don't flush cache until the write has occurred */
+@@ -299,6 +299,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.6/950-0093-mmc-block-Don-t-do-single-sector-reads-during-recove.patch b/target/linux/bcm27xx/patches-6.6/950-0093-mmc-block-Don-t-do-single-sector-reads-during-recove.patch
index 3925eedd79..521d339e7e 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0093-mmc-block-Don-t-do-single-sector-reads-during-recove.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0093-mmc-block-Don-t-do-single-sector-reads-during-recove.patch
@@ -23,7 +23,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -1949,7 +1949,7 @@ static void mmc_blk_mq_rw_recovery(struc
+@@ -1955,7 +1955,7 @@ static void mmc_blk_mq_rw_recovery(struc
return;
}
diff --git a/target/linux/bcm27xx/patches-6.6/950-0161-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch b/target/linux/bcm27xx/patches-6.6/950-0161-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
index 2cf32f792b..fc149dbe2f 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0161-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0161-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch
@@ -125,7 +125,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
* non-error returns are a promise to giveback() the urb later
* we drop ownership so next owner (or urb unlink) can get it
*/
-@@ -5395,6 +5498,7 @@ static const struct hc_driver xhci_hc_dr
+@@ -5394,6 +5497,7 @@ static const struct hc_driver xhci_hc_dr
.endpoint_reset = xhci_endpoint_reset,
.check_bandwidth = xhci_check_bandwidth,
.reset_bandwidth = xhci_reset_bandwidth,
diff --git a/target/linux/bcm27xx/patches-6.6/950-0204-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch b/target/linux/bcm27xx/patches-6.6/950-0204-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
index fbee3cc437..7e30f00f30 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0204-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0204-spi-Force-CS_HIGH-if-GPIO-descriptors-are-used.patch
@@ -32,15 +32,15 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -3756,6 +3756,7 @@ static int spi_set_cs_timing(struct spi_
- */
- int spi_setup(struct spi_device *spi)
+@@ -3738,6 +3738,7 @@ static int spi_set_cs_timing(struct spi_
+
+ static int __spi_setup(struct spi_device *spi, bool initial_setup)
{
+ struct spi_controller *ctlr = spi->controller;
unsigned bad_bits, ugly_bits;
int status = 0;
-@@ -3776,6 +3777,14 @@ int spi_setup(struct spi_device *spi)
+@@ -3758,6 +3759,14 @@ static int __spi_setup(struct spi_device
(SPI_TX_DUAL | SPI_TX_QUAD | SPI_TX_OCTAL |
SPI_RX_DUAL | SPI_RX_QUAD | SPI_RX_OCTAL)))
return -EINVAL;
diff --git a/target/linux/bcm27xx/patches-6.6/950-0430-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch b/target/linux/bcm27xx/patches-6.6/950-0430-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch
index 08bff9f78e..4e040cc6b7 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0430-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0430-fbdev-Don-t-cancel-deferred-work-if-pagelist-empty.patch
@@ -24,7 +24,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
--- a/drivers/video/fbdev/core/fb_defio.c
+++ b/drivers/video/fbdev/core/fb_defio.c
-@@ -313,7 +313,8 @@ static void fb_deferred_io_lastclose(str
+@@ -411,7 +411,8 @@ static void fb_deferred_io_lastclose(str
struct page *page;
int i;
diff --git a/target/linux/bcm27xx/patches-6.6/950-0500-media-imx219-Advertise-embedded-data-node-on-media-p.patch b/target/linux/bcm27xx/patches-6.6/950-0500-media-imx219-Advertise-embedded-data-node-on-media-p.patch
index c8adc72475..0a00017a2c 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0500-media-imx219-Advertise-embedded-data-node-on-media-p.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0500-media-imx219-Advertise-embedded-data-node-on-media-p.patch
@@ -232,7 +232,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
}
return 0;
-@@ -1331,9 +1385,10 @@ static int imx219_probe(struct i2c_clien
+@@ -1334,9 +1388,10 @@ static int imx219_probe(struct i2c_clien
imx219->sd.entity.function = MEDIA_ENT_F_CAM_SENSOR;
/* Initialize source pad */
diff --git a/target/linux/bcm27xx/patches-6.6/950-0514-sdhci-Add-SD-Express-hook.patch b/target/linux/bcm27xx/patches-6.6/950-0514-sdhci-Add-SD-Express-hook.patch
index 2ccd1d75cb..954596e06c 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0514-sdhci-Add-SD-Express-hook.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0514-sdhci-Add-SD-Express-hook.patch
@@ -12,7 +12,7 @@ sdhci: remove PYA0_INTR_BUG quirk. Add quirks to disable some of the higher SDR
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
-@@ -383,7 +383,10 @@ static const struct sdhci_pltfm_data sdh
+@@ -396,7 +396,10 @@ static const struct sdhci_pltfm_data sdh
.quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
SDHCI_QUIRK_BROKEN_TIMEOUT_VAL,
.quirks2 = SDHCI_QUIRK2_PRESET_VALUE_BROKEN |
diff --git a/target/linux/bcm27xx/patches-6.6/950-0532-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch b/target/linux/bcm27xx/patches-6.6/950-0532-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch
index 21e75c2ed1..63957b2eb6 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0532-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0532-mmc-sdhci-of-dwcmshc-define-sdio-timeout-clocks.patch
@@ -12,7 +12,7 @@ Signed-off-by: Liam Fraser <liam@raspberrypi.com>
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
-@@ -350,6 +350,7 @@ static const struct sdhci_ops sdhci_dwcm
+@@ -363,6 +363,7 @@ static const struct sdhci_ops sdhci_dwcm
.set_bus_width = sdhci_set_bus_width,
.set_uhs_signaling = dwcmshc_set_uhs_signaling,
.get_max_clock = dwcmshc_get_max_clock,
@@ -20,7 +20,7 @@ Signed-off-by: Liam Fraser <liam@raspberrypi.com>
.reset = sdhci_reset,
.adma_write_desc = dwcmshc_adma_write_desc,
};
-@@ -521,6 +522,16 @@ static int dwcmshc_probe(struct platform
+@@ -534,6 +535,16 @@ static int dwcmshc_probe(struct platform
clk_prepare_enable(priv->bus_clk);
}
@@ -37,7 +37,7 @@ Signed-off-by: Liam Fraser <liam@raspberrypi.com>
err = mmc_of_parse(host->mmc);
if (err)
goto err_clk;
-@@ -585,6 +596,7 @@ err_rpm:
+@@ -598,6 +609,7 @@ err_rpm:
pm_runtime_put_noidle(dev);
err_clk:
clk_disable_unprepare(pltfm_host->clk);
diff --git a/target/linux/bcm27xx/patches-6.6/950-0533-mmc-sdhci-of-dwcmshc-rp1-sdio-changes.patch b/target/linux/bcm27xx/patches-6.6/950-0533-mmc-sdhci-of-dwcmshc-rp1-sdio-changes.patch
index c49e265ba7..39b223d003 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0533-mmc-sdhci-of-dwcmshc-rp1-sdio-changes.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0533-mmc-sdhci-of-dwcmshc-rp1-sdio-changes.patch
@@ -36,7 +36,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
static unsigned int dwcmshc_get_max_clock(struct sdhci_host *host)
{
struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host);
-@@ -346,7 +358,7 @@ static void rk35xx_sdhci_reset(struct sd
+@@ -359,7 +371,7 @@ static void rk35xx_sdhci_reset(struct sd
}
static const struct sdhci_ops sdhci_dwcmshc_ops = {
@@ -45,7 +45,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
.set_bus_width = sdhci_set_bus_width,
.set_uhs_signaling = dwcmshc_set_uhs_signaling,
.get_max_clock = dwcmshc_get_max_clock,
-@@ -366,8 +378,10 @@ static const struct sdhci_ops sdhci_dwcm
+@@ -379,8 +391,10 @@ static const struct sdhci_ops sdhci_dwcm
static const struct sdhci_pltfm_data sdhci_dwcmshc_pdata = {
.ops = &sdhci_dwcmshc_ops,
@@ -58,7 +58,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
};
#ifdef CONFIG_ACPI
-@@ -520,6 +534,14 @@ static int dwcmshc_probe(struct platform
+@@ -533,6 +547,14 @@ static int dwcmshc_probe(struct platform
priv->bus_clk = devm_clk_get(dev, "bus");
if (!IS_ERR(priv->bus_clk))
clk_prepare_enable(priv->bus_clk);
@@ -73,7 +73,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
}
pltfm_host->timeout_clk = devm_clk_get(&pdev->dev, "timeout");
-@@ -537,6 +559,7 @@ static int dwcmshc_probe(struct platform
+@@ -550,6 +572,7 @@ static int dwcmshc_probe(struct platform
goto err_clk;
sdhci_get_of_property(pdev);
diff --git a/target/linux/bcm27xx/patches-6.6/950-0678-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch b/target/linux/bcm27xx/patches-6.6/950-0678-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch
index d194e4cda0..333f4bc74e 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0678-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0678-fbdev-Allow-client-to-request-a-particular-dev-fbN-n.patch
@@ -71,7 +71,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
* @fb_info: frame buffer info structure
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
-@@ -501,6 +501,7 @@ struct fb_info {
+@@ -503,6 +503,7 @@ struct fb_info {
void *par;
bool skip_vt_switch; /* no VT switch on suspend/resume required */
@@ -79,7 +79,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
};
/* This will go away
-@@ -589,6 +590,7 @@ extern ssize_t fb_sys_write(struct fb_in
+@@ -591,6 +592,7 @@ extern ssize_t fb_sys_write(struct fb_in
.fb_imageblit = sys_imageblit
/* fbmem.c */
diff --git a/target/linux/bcm27xx/patches-6.6/950-0718-drivers-mmc-sdhci-of-dwcmshc-add-RP1-dt-ID-and-quirk.patch b/target/linux/bcm27xx/patches-6.6/950-0718-drivers-mmc-sdhci-of-dwcmshc-add-RP1-dt-ID-and-quirk.patch
index 7c492d6c8b..15655da708 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0718-drivers-mmc-sdhci-of-dwcmshc-add-RP1-dt-ID-and-quirk.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0718-drivers-mmc-sdhci-of-dwcmshc-add-RP1-dt-ID-and-quirk.patch
@@ -13,7 +13,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/host/sdhci-of-dwcmshc.c
+++ b/drivers/mmc/host/sdhci-of-dwcmshc.c
-@@ -393,6 +393,15 @@ static const struct sdhci_pltfm_data sdh
+@@ -406,6 +406,15 @@ static const struct sdhci_pltfm_data sdh
};
#endif
@@ -29,7 +29,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
static const struct sdhci_pltfm_data sdhci_dwcmshc_rk35xx_pdata = {
.ops = &sdhci_dwcmshc_rk35xx_ops,
.quirks = SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN |
-@@ -461,6 +470,10 @@ static void dwcmshc_rk35xx_postinit(stru
+@@ -474,6 +483,10 @@ static void dwcmshc_rk35xx_postinit(stru
static const struct of_device_id sdhci_dwcmshc_dt_ids[] = {
{
diff --git a/target/linux/bcm27xx/patches-6.6/950-0983-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch b/target/linux/bcm27xx/patches-6.6/950-0983-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch
index c95bd1fc55..bd7efbc035 100644
--- a/target/linux/bcm27xx/patches-6.6/950-0983-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-0983-drivers-mmc-preallocate-a-block-for-SD-extension-reg.patch
@@ -145,7 +145,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
-@@ -322,6 +322,7 @@ struct mmc_card {
+@@ -323,6 +323,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.6/950-1059-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch b/target/linux/bcm27xx/patches-6.6/950-1059-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch
index c10707c6c0..00637e6a73 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1059-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1059-usb-add-plumbing-for-updating-interrupt-endpoint-int.patch
@@ -70,7 +70,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
* @dev: the device whose endpoint is being disabled
--- a/include/linux/usb.h
+++ b/include/linux/usb.h
-@@ -1892,6 +1892,8 @@ extern int usb_clear_halt(struct usb_dev
+@@ -1893,6 +1893,8 @@ extern int usb_clear_halt(struct usb_dev
extern int usb_reset_configuration(struct usb_device *dev);
extern int usb_set_interface(struct usb_device *dev, int ifnum, int alternate);
extern void usb_reset_endpoint(struct usb_device *dev, unsigned int epaddr);
diff --git a/target/linux/bcm27xx/patches-6.6/950-1167-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch b/target/linux/bcm27xx/patches-6.6/950-1167-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch
index 5408d381e2..4fed03b81c 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1167-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1167-mmc-restrict-posted-write-counts-for-SD-cards-in-CQ-.patch
@@ -30,7 +30,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -1555,6 +1555,8 @@ static void mmc_blk_cqe_complete_rq(stru
+@@ -1561,6 +1561,8 @@ static void mmc_blk_cqe_complete_rq(stru
spin_lock_irqsave(&mq->lock, flags);
@@ -39,7 +39,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
mq->in_flight[issue_type] -= 1;
put_card = (mmc_tot_in_flight(mq) == 0);
-@@ -2071,6 +2073,8 @@ static void mmc_blk_mq_complete_rq(struc
+@@ -2077,6 +2079,8 @@ static void mmc_blk_mq_complete_rq(struc
struct mmc_queue_req *mqrq = req_to_mmc_queue_req(req);
unsigned int nr_bytes = mqrq->brq.data.bytes_xfered;
@@ -48,7 +48,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
if (nr_bytes) {
if (blk_update_request(req, BLK_STS_OK, nr_bytes))
blk_mq_requeue_request(req, true);
-@@ -2165,13 +2169,16 @@ static void mmc_blk_mq_poll_completion(s
+@@ -2173,13 +2177,16 @@ static void mmc_blk_mq_poll_completion(s
mmc_blk_urgent_bkops(mq, mqrq);
}
@@ -66,7 +66,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
mq->in_flight[issue_type] -= 1;
put_card = (mmc_tot_in_flight(mq) == 0);
-@@ -2205,7 +2212,7 @@ static void mmc_blk_mq_post_req(struct m
+@@ -2213,7 +2220,7 @@ static void mmc_blk_mq_post_req(struct m
blk_mq_complete_request(req);
}
@@ -87,7 +87,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/queue.c
+++ b/drivers/mmc/core/queue.c
-@@ -268,6 +268,11 @@ static blk_status_t mmc_mq_queue_rq(stru
+@@ -272,6 +272,11 @@ static blk_status_t mmc_mq_queue_rq(stru
spin_unlock_irq(&mq->lock);
return BLK_STS_RESOURCE;
}
@@ -99,7 +99,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
break;
default:
/*
-@@ -284,6 +289,8 @@ static blk_status_t mmc_mq_queue_rq(stru
+@@ -288,6 +293,8 @@ static blk_status_t mmc_mq_queue_rq(stru
/* Parallel dispatch of requests is not supported at the moment */
mq->busy = true;
@@ -108,7 +108,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
mq->in_flight[issue_type] += 1;
get_card = (mmc_tot_in_flight(mq) == 1);
cqe_retune_ok = (mmc_cqe_qcnt(mq) == 1);
-@@ -323,6 +330,8 @@ static blk_status_t mmc_mq_queue_rq(stru
+@@ -327,6 +334,8 @@ static blk_status_t mmc_mq_queue_rq(stru
bool put_card = false;
spin_lock_irq(&mq->lock);
@@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
put_card = true;
--- a/drivers/mmc/core/queue.h
+++ b/drivers/mmc/core/queue.h
-@@ -79,6 +79,7 @@ struct mmc_queue {
+@@ -82,6 +82,7 @@ struct mmc_queue {
struct request_queue *queue;
spinlock_t lock;
int in_flight[MMC_ISSUE_MAX];
@@ -146,7 +146,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
card->ext_perf.fno = fno;
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
-@@ -345,6 +345,8 @@ struct mmc_card {
+@@ -346,6 +346,8 @@ struct mmc_card {
unsigned int nr_parts;
struct workqueue_struct *complete_wq; /* Private workqueue */
diff --git a/target/linux/bcm27xx/patches-6.6/950-1168-fixup-mmc-restrict-posted-write-counts-for-SD-cards-.patch b/target/linux/bcm27xx/patches-6.6/950-1168-fixup-mmc-restrict-posted-write-counts-for-SD-cards-.patch
index 150f93e762..d4054d08c0 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1168-fixup-mmc-restrict-posted-write-counts-for-SD-cards-.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1168-fixup-mmc-restrict-posted-write-counts-for-SD-cards-.patch
@@ -28,7 +28,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/queue.c
+++ b/drivers/mmc/core/queue.c
-@@ -268,7 +268,7 @@ static blk_status_t mmc_mq_queue_rq(stru
+@@ -272,7 +272,7 @@ static blk_status_t mmc_mq_queue_rq(stru
spin_unlock_irq(&mq->lock);
return BLK_STS_RESOURCE;
}
diff --git a/target/linux/bcm27xx/patches-6.6/950-1331-mmc-don-t-reference-requests-after-finishing-them.patch b/target/linux/bcm27xx/patches-6.6/950-1331-mmc-don-t-reference-requests-after-finishing-them.patch
index c7d411f0e3..408b7908bf 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1331-mmc-don-t-reference-requests-after-finishing-them.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1331-mmc-don-t-reference-requests-after-finishing-them.patch
@@ -16,7 +16,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -1524,6 +1524,7 @@ static void mmc_blk_cqe_complete_rq(stru
+@@ -1527,6 +1527,7 @@ static void mmc_blk_cqe_complete_rq(stru
struct request_queue *q = req->q;
struct mmc_host *host = mq->card->host;
enum mmc_issue_type issue_type = mmc_issue_type(mq, req);
@@ -24,7 +24,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
unsigned long flags;
bool put_card;
int err;
-@@ -1555,7 +1556,7 @@ static void mmc_blk_cqe_complete_rq(stru
+@@ -1561,7 +1562,7 @@ static void mmc_blk_cqe_complete_rq(stru
spin_lock_irqsave(&mq->lock, flags);
@@ -33,7 +33,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
mq->pending_writes--;
mq->in_flight[issue_type] -= 1;
-@@ -2170,15 +2171,16 @@ static void mmc_blk_mq_poll_completion(s
+@@ -2178,15 +2179,16 @@ static void mmc_blk_mq_poll_completion(s
}
static void mmc_blk_mq_dec_in_flight(struct mmc_queue *mq, enum mmc_issue_type issue_type,
@@ -52,7 +52,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
mq->in_flight[issue_type] -= 1;
put_card = (mmc_tot_in_flight(mq) == 0);
-@@ -2193,6 +2195,7 @@ static void mmc_blk_mq_post_req(struct m
+@@ -2201,6 +2203,7 @@ static void mmc_blk_mq_post_req(struct m
bool can_sleep)
{
enum mmc_issue_type issue_type = mmc_issue_type(mq, req);
@@ -60,7 +60,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
struct mmc_queue_req *mqrq = req_to_mmc_queue_req(req);
struct mmc_request *mrq = &mqrq->brq.mrq;
struct mmc_host *host = mq->card->host;
-@@ -2212,7 +2215,7 @@ static void mmc_blk_mq_post_req(struct m
+@@ -2220,7 +2223,7 @@ static void mmc_blk_mq_post_req(struct m
blk_mq_complete_request(req);
}
diff --git a/target/linux/bcm27xx/patches-6.6/950-1336-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch b/target/linux/bcm27xx/patches-6.6/950-1336-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch
index 878c56b579..afbe2be8a9 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1336-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1336-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch
@@ -15,9 +15,9 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- 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.6/950-1506-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch b/target/linux/bcm27xx/patches-6.6/950-1506-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch
index 612f31e239..cbc639f91a 100644
--- a/target/linux/bcm27xx/patches-6.6/950-1506-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch
+++ b/target/linux/bcm27xx/patches-6.6/950-1506-mmc-sd-filter-card-CQ-support-based-on-an-allow-list.patch
@@ -22,8 +22,8 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
--- a/drivers/mmc/core/card.h
+++ b/drivers/mmc/core/card.h
-@@ -298,4 +298,9 @@ static inline int mmc_card_no_uhs_ddr50_
- return c->quirks & MMC_QUIRK_NO_UHS_DDR50_TUNING;
+@@ -303,4 +303,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,10 +47,10 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
/*
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
-@@ -298,6 +298,7 @@ struct mmc_card {
- #define MMC_QUIRK_BROKEN_CACHE_FLUSH (1<<16) /* Don't flush cache until the write has occurred */
+@@ -299,6 +299,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_WORKING_SD_CQ (1<<30) /* SD card has known-good CQ implementation */
#define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */
diff --git a/target/linux/generic/backport-6.6/410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch b/target/linux/generic/backport-6.6/410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch
index fabf16a2e6..bfcd3ff39c 100644
--- a/target/linux/generic/backport-6.6/410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch
+++ b/target/linux/generic/backport-6.6/410-v6.13-01-block-add-support-for-defining-read-only-partitions.patch
@@ -19,7 +19,7 @@ Signed-off-by: Jens Axboe <axboe@kernel.dk>
--- a/block/blk.h
+++ b/block/blk.h
-@@ -424,6 +424,7 @@ void blk_free_ext_minor(unsigned int min
+@@ -445,6 +445,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/backport-6.6/410-v6.13-04-mmc-block-attach-partitions-fwnode-if-found-in-mmc-c.patch b/target/linux/generic/backport-6.6/410-v6.13-04-mmc-block-attach-partitions-fwnode-if-found-in-mmc-c.patch
index cf0d18cf06..673c904815 100644
--- a/target/linux/generic/backport-6.6/410-v6.13-04-mmc-block-attach-partitions-fwnode-if-found-in-mmc-c.patch
+++ b/target/linux/generic/backport-6.6/410-v6.13-04-mmc-block-attach-partitions-fwnode-if-found-in-mmc-c.patch
@@ -26,7 +26,7 @@ Signed-off-by: Jens Axboe <axboe@kernel.dk>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -2455,6 +2455,56 @@ static inline int mmc_blk_readonly(struc
+@@ -2463,6 +2463,56 @@ static inline int mmc_blk_readonly(struc
!(card->csd.cmdclass & CCC_BLOCK_WRITE);
}
@@ -83,7 +83,7 @@ Signed-off-by: Jens Axboe <axboe@kernel.dk>
static struct mmc_blk_data *mmc_blk_alloc_req(struct mmc_card *card,
struct device *parent,
sector_t size,
-@@ -2463,6 +2513,7 @@ static struct mmc_blk_data *mmc_blk_allo
+@@ -2471,6 +2521,7 @@ static struct mmc_blk_data *mmc_blk_allo
int area_type,
unsigned int part_type)
{
@@ -91,7 +91,7 @@ Signed-off-by: Jens Axboe <axboe@kernel.dk>
struct mmc_blk_data *md;
int devidx, ret;
char cap_str[10];
-@@ -2568,7 +2619,9 @@ static struct mmc_blk_data *mmc_blk_allo
+@@ -2576,7 +2627,9 @@ static struct mmc_blk_data *mmc_blk_allo
/* used in ->open, must be set before add_disk: */
if (area_type == MMC_BLK_DATA_AREA_MAIN)
dev_set_drvdata(&card->dev, md);
diff --git a/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch b/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch
index 55e1b09313..16edcdffe9 100644
--- a/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch
+++ b/target/linux/generic/backport-6.6/771-v6.7-02-net-stmmac-move-TX-timer-arm-after-DMA-enable.patch
@@ -42,7 +42,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
u64_stats_update_begin(&txq_stats->napi_syncp);
u64_stats_add(&txq_stats->napi.tx_packets, tx_packets);
-@@ -5587,6 +5591,7 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5592,6 +5596,7 @@ static int stmmac_napi_poll_tx(struct na
container_of(napi, struct stmmac_channel, tx_napi);
struct stmmac_priv *priv = ch->priv_data;
struct stmmac_txq_stats *txq_stats;
@@ -50,7 +50,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
u32 chan = ch->index;
int work_done;
-@@ -5595,7 +5600,7 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5600,7 +5605,7 @@ static int stmmac_napi_poll_tx(struct na
u64_stats_inc(&txq_stats->napi.poll);
u64_stats_update_end(&txq_stats->napi_syncp);
@@ -59,7 +59,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
work_done = min(work_done, budget);
if (work_done < budget && napi_complete_done(napi, work_done)) {
-@@ -5606,6 +5611,10 @@ static int stmmac_napi_poll_tx(struct na
+@@ -5611,6 +5616,10 @@ static int stmmac_napi_poll_tx(struct na
spin_unlock_irqrestore(&ch->lock, flags);
}
@@ -70,7 +70,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
return work_done;
}
-@@ -5614,6 +5623,7 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5619,6 +5628,7 @@ static int stmmac_napi_poll_rxtx(struct
struct stmmac_channel *ch =
container_of(napi, struct stmmac_channel, rxtx_napi);
struct stmmac_priv *priv = ch->priv_data;
@@ -78,7 +78,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
int rx_done, tx_done, rxtx_done;
struct stmmac_rxq_stats *rxq_stats;
struct stmmac_txq_stats *txq_stats;
-@@ -5629,7 +5639,7 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5634,7 +5644,7 @@ static int stmmac_napi_poll_rxtx(struct
u64_stats_inc(&txq_stats->napi.poll);
u64_stats_update_end(&txq_stats->napi_syncp);
@@ -87,7 +87,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
tx_done = min(tx_done, budget);
rx_done = stmmac_rx_zc(priv, budget, chan);
-@@ -5654,6 +5664,10 @@ static int stmmac_napi_poll_rxtx(struct
+@@ -5659,6 +5669,10 @@ static int stmmac_napi_poll_rxtx(struct
spin_unlock_irqrestore(&ch->lock, flags);
}
diff --git a/target/linux/generic/backport-6.6/911-v6.7-crypto-talitos-stop-using-crypto_ahash-init.patch b/target/linux/generic/backport-6.6/911-v6.7-crypto-talitos-stop-using-crypto_ahash-init.patch
index 6653411bba..1483cef78e 100644
--- a/target/linux/generic/backport-6.6/911-v6.7-crypto-talitos-stop-using-crypto_ahash-init.patch
+++ b/target/linux/generic/backport-6.6/911-v6.7-crypto-talitos-stop-using-crypto_ahash-init.patch
@@ -20,7 +20,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
--- a/drivers/crypto/talitos.c
+++ b/drivers/crypto/talitos.c
-@@ -2119,13 +2119,14 @@ static int ahash_finup(struct ahash_requ
+@@ -2197,13 +2197,14 @@ static int ahash_finup(struct ahash_requ
static int ahash_digest(struct ahash_request *areq)
{
@@ -41,7 +41,7 @@ Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
}
static int ahash_export(struct ahash_request *areq, void *out)
-@@ -3242,6 +3243,8 @@ static struct talitos_crypto_alg *talito
+@@ -3320,6 +3321,8 @@ static struct talitos_crypto_alg *talito
(!strcmp(alg->cra_name, "sha224") ||
!strcmp(alg->cra_name, "hmac(sha224)"))) {
t_alg->algt.alg.hash.init = ahash_init_sha224_swinit;
diff --git a/target/linux/generic/hack-6.6/800-GPIO-add-named-gpio-exports.patch b/target/linux/generic/hack-6.6/800-GPIO-add-named-gpio-exports.patch
index 9c3696e76a..9fe2539354 100644
--- a/target/linux/generic/hack-6.6/800-GPIO-add-named-gpio-exports.patch
+++ b/target/linux/generic/hack-6.6/800-GPIO-add-named-gpio-exports.patch
@@ -15,9 +15,9 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
#include "gpiolib.h"
#include "gpiolib-of.h"
-@@ -1138,3 +1140,73 @@ void of_gpiochip_remove(struct gpio_chip
- {
- of_node_put(dev_of_node(&chip->gpiodev->dev));
+@@ -1145,3 +1147,73 @@ void of_gpiochip_remove(struct gpio_chip
+
+ of_node_put(np);
}
+
+#ifdef CONFIG_GPIO_SYSFS
diff --git a/target/linux/generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch b/target/linux/generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch
index 3abeacaffb..e59de502a3 100644
--- a/target/linux/generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch
+++ b/target/linux/generic/pending-6.6/151-net-bridge-do-not-send-arp-replies-if-src-and-target.patch
@@ -15,10 +15,10 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
--- a/net/bridge/br_arp_nd_proxy.c
+++ b/net/bridge/br_arp_nd_proxy.c
-@@ -204,7 +204,10 @@ void br_do_proxy_suppress_arp(struct sk_
+@@ -205,7 +205,10 @@ void br_do_proxy_suppress_arp(struct sk_
if ((p && (p->flags & BR_PROXYARP)) ||
- (f->dst && (f->dst->flags & BR_PROXYARP_WIFI)) ||
- br_is_neigh_suppress_enabled(f->dst, vid)) {
+ (dst && (dst->flags & BR_PROXYARP_WIFI)) ||
+ br_is_neigh_suppress_enabled(dst, vid)) {
- if (!vid)
+ replied = true;
+ if (!memcmp(n->ha, sha, dev->addr_len))
@@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
br_arp_send(br, p, skb->dev, sip, tip,
sha, n->ha, sha, 0, 0);
else
-@@ -212,7 +215,6 @@ void br_do_proxy_suppress_arp(struct sk_
+@@ -213,7 +216,6 @@ void br_do_proxy_suppress_arp(struct sk_
sha, n->ha, sha,
skb->vlan_proto,
skb_vlan_tag_get(skb));
diff --git a/target/linux/generic/pending-6.6/250-kernel-fork-Increase-minimum-number-of-allowed-threa.patch b/target/linux/generic/pending-6.6/250-kernel-fork-Increase-minimum-number-of-allowed-threa.patch
index 17470b7a15..8b967ca7dc 100644
--- a/target/linux/generic/pending-6.6/250-kernel-fork-Increase-minimum-number-of-allowed-threa.patch
+++ b/target/linux/generic/pending-6.6/250-kernel-fork-Increase-minimum-number-of-allowed-threa.patch
@@ -26,7 +26,7 @@ Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
--- a/kernel/fork.c
+++ b/kernel/fork.c
-@@ -115,7 +115,7 @@
+@@ -116,7 +116,7 @@
/*
* Minimum number of threads to boot the kernel
*/
diff --git a/target/linux/generic/pending-6.6/457-mmc-block-set-fwnode-of-disk-devices.patch b/target/linux/generic/pending-6.6/457-mmc-block-set-fwnode-of-disk-devices.patch
index 66f3515621..1ed7098a61 100644
--- a/target/linux/generic/pending-6.6/457-mmc-block-set-fwnode-of-disk-devices.patch
+++ b/target/linux/generic/pending-6.6/457-mmc-block-set-fwnode-of-disk-devices.patch
@@ -14,7 +14,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -2620,6 +2620,10 @@ static struct mmc_blk_data *mmc_blk_allo
+@@ -2628,6 +2628,10 @@ static struct mmc_blk_data *mmc_blk_allo
if (area_type == MMC_BLK_DATA_AREA_MAIN)
dev_set_drvdata(&card->dev, md);
disk_fwnode = mmc_blk_get_partitions_node(parent, subname);
diff --git a/target/linux/generic/pending-6.6/458-mmc-block-set-GENHD_FL_NVMEM.patch b/target/linux/generic/pending-6.6/458-mmc-block-set-GENHD_FL_NVMEM.patch
index 7f9c512e45..8d81d14444 100644
--- a/target/linux/generic/pending-6.6/458-mmc-block-set-GENHD_FL_NVMEM.patch
+++ b/target/linux/generic/pending-6.6/458-mmc-block-set-GENHD_FL_NVMEM.patch
@@ -12,7 +12,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
--- a/drivers/mmc/core/block.c
+++ b/drivers/mmc/core/block.c
-@@ -2566,6 +2566,7 @@ static struct mmc_blk_data *mmc_blk_allo
+@@ -2574,6 +2574,7 @@ static struct mmc_blk_data *mmc_blk_allo
md->disk->major = MMC_BLOCK_MAJOR;
md->disk->minors = perdev_minors;
md->disk->first_minor = devidx * perdev_minors;
diff --git a/target/linux/generic/pending-6.6/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch b/target/linux/generic/pending-6.6/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch
index 90cf9cc335..4941fffb38 100644
--- a/target/linux/generic/pending-6.6/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch
+++ b/target/linux/generic/pending-6.6/710-bridge-add-knob-for-filtering-rx-tx-BPDU-pack.patch
@@ -161,7 +161,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
struct rtnl_link {
rtnl_doit_func doit;
-@@ -4981,7 +4981,9 @@ int ndo_dflt_bridge_getlink(struct sk_bu
+@@ -4982,7 +4982,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/generic/pending-6.6/920-mangle_bootargs.patch b/target/linux/generic/pending-6.6/920-mangle_bootargs.patch
index af3653d676..f30dff9f0f 100644
--- a/target/linux/generic/pending-6.6/920-mangle_bootargs.patch
+++ b/target/linux/generic/pending-6.6/920-mangle_bootargs.patch
@@ -61,7 +61,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
/*
* We need to store the untouched command line for future reference.
* We also need to store the touched command line since the parameter
-@@ -909,6 +932,7 @@ void start_kernel(void)
+@@ -908,6 +931,7 @@ void start_kernel(void)
pr_notice("%s", linux_banner);
early_security_init();
setup_arch(&command_line);
diff --git a/target/linux/ipq806x/patches-6.6/902-ARM-decompressor-support-for-ATAGs-rootblock-parsing.patch b/target/linux/ipq806x/patches-6.6/902-ARM-decompressor-support-for-ATAGs-rootblock-parsing.patch
index dee6f044d0..ddab89220b 100644
--- a/target/linux/ipq806x/patches-6.6/902-ARM-decompressor-support-for-ATAGs-rootblock-parsing.patch
+++ b/target/linux/ipq806x/patches-6.6/902-ARM-decompressor-support-for-ATAGs-rootblock-parsing.patch
@@ -177,7 +177,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
#include <linux/bootconfig.h>
#include <linux/console.h>
#include <linux/nmi.h>
-@@ -943,6 +944,17 @@ void start_kernel(void)
+@@ -942,6 +943,17 @@ void start_kernel(void)
pr_notice("Kernel command line: %s\n", saved_command_line);
/* parameters may set static keys */
jump_label_init();
diff --git a/target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch b/target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch
index 7ff7b05301..bdec77210e 100644
--- a/target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch
+++ b/target/linux/mediatek/patches-6.6/432-drivers-spi-Add-support-for-dynamic-calibration.patch
@@ -11,7 +11,7 @@ Signed-off-by: SkyLake.Huang <skylake.huang@mediatek.com>
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
-@@ -1380,6 +1380,70 @@ static int spi_transfer_wait(struct spi_
+@@ -1382,6 +1382,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)
-@@ -2225,6 +2289,75 @@ void spi_flush_queue(struct spi_controll
+@@ -2227,6 +2291,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)
{
-@@ -2364,6 +2497,10 @@ of_register_spi_device(struct spi_contro
+@@ -2366,6 +2499,10 @@ of_register_spi_device(struct spi_contro
if (rc)
goto err_out;
diff --git a/target/linux/mvebu/patches-6.6/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch b/target/linux/mvebu/patches-6.6/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch
index c44930a3f7..baf1e07c16 100644
--- a/target/linux/mvebu/patches-6.6/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch
+++ b/target/linux/mvebu/patches-6.6/300-mvebu-Mangle-bootloader-s-kernel-arguments.patch
@@ -258,7 +258,7 @@ Signed-off-by: Michael Gray <michael.gray@lantisproject.com>
static int kernel_init(void *);
/*
-@@ -941,6 +945,18 @@ void start_kernel(void)
+@@ -940,6 +944,18 @@ void start_kernel(void)
boot_cpu_hotplug_init();
pr_notice("Kernel command line: %s\n", saved_command_line);