diff --git a/include/kernel-version.mk b/include/kernel-version.mk index 3560165e35..494d76d4b8 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -7,10 +7,10 @@ ifdef CONFIG_TESTING_KERNEL endif LINUX_VERSION-5.4 = .117 -LINUX_VERSION-5.10 = .35 +LINUX_VERSION-5.10 = .37 LINUX_KERNEL_HASH-5.4.117 = 4e989b5775830092e5c76b5cca65ebff862ad0c87d0b58c3a20d415c3d4ec770 -LINUX_KERNEL_HASH-5.10.35 = ac37a19d45b77a87e58e3aae8b127a6e7eb85ed7467fc8e58474b387bfd498fd +LINUX_KERNEL_HASH-5.10.37 = a8d5e3309dafc484eb70f94747a6efffa29a79bae651ae126333e913c00be077 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/package/utils/busybox/Config-defaults.in b/package/utils/busybox/Config-defaults.in index eb28bf6991..16638eb3e1 100644 --- a/package/utils/busybox/Config-defaults.in +++ b/package/utils/busybox/Config-defaults.in @@ -2192,7 +2192,7 @@ config BUSYBOX_DEFAULT_FEATURE_UNIX_LOCAL default n config BUSYBOX_DEFAULT_FEATURE_PREFER_IPV4_ADDRESS bool - default y + default n config BUSYBOX_DEFAULT_VERBOSE_RESOLUTION_ERRORS bool default y diff --git a/target/linux/apm821xx/patches-5.10/802-usb-xhci-force-msi-renesas-xhci.patch b/target/linux/apm821xx/patches-5.10/802-usb-xhci-force-msi-renesas-xhci.patch index ed557fd0dc..6d217e160f 100644 --- a/target/linux/apm821xx/patches-5.10/802-usb-xhci-force-msi-renesas-xhci.patch +++ b/target/linux/apm821xx/patches-5.10/802-usb-xhci-force-msi-renesas-xhci.patch @@ -23,7 +23,7 @@ produce a noisy warning. xhci->quirks |= XHCI_RESET_ON_RESUME; --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -423,10 +423,14 @@ static int xhci_try_enable_msi(struct us +@@ -427,10 +427,14 @@ static int xhci_try_enable_msi(struct us free_irq(hcd->irq, hcd); hcd->irq = 0; diff --git a/target/linux/ath79/generic/base-files/etc/board.d/02_network b/target/linux/ath79/generic/base-files/etc/board.d/02_network index c66cfe1010..cf21919e2d 100644 --- a/target/linux/ath79/generic/base-files/etc/board.d/02_network +++ b/target/linux/ath79/generic/base-files/etc/board.d/02_network @@ -438,8 +438,8 @@ ath79_setup_interfaces() ucidef_add_switch "switch0" \ "0@eth0" "1:lan" "2:lan" ;; - zbtlink,zbt-wd323|\ - xiaomi,mi-router-4q) + xiaomi,mi-router-4q|\ + zbtlink,zbt-wd323) ucidef_set_interface_wan "eth1" ucidef_add_switch "switch0" \ "0@eth0" "3:lan:1" "4:lan:2" diff --git a/target/linux/ath79/patches-5.10/0032-MIPS-ath79-sanitize-symbols.patch b/target/linux/ath79/patches-5.10/0032-MIPS-ath79-sanitize-symbols.patch index 5a923298cd..01cd31ba3a 100644 --- a/target/linux/ath79/patches-5.10/0032-MIPS-ath79-sanitize-symbols.patch +++ b/target/linux/ath79/patches-5.10/0032-MIPS-ath79-sanitize-symbols.patch @@ -15,7 +15,7 @@ Signed-off-by: John Crispin --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -242,6 +242,8 @@ config ATH79 +@@ -243,6 +243,8 @@ config ATH79 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_MIPS16 select SYS_SUPPORTS_ZBOOT_UART_PROM diff --git a/target/linux/ath79/patches-5.10/0033-spi-ath79-drop-pdata-support.patch b/target/linux/ath79/patches-5.10/0033-spi-ath79-drop-pdata-support.patch index 8fd99bd333..162a82bda3 100644 --- a/target/linux/ath79/patches-5.10/0033-spi-ath79-drop-pdata-support.patch +++ b/target/linux/ath79/patches-5.10/0033-spi-ath79-drop-pdata-support.patch @@ -52,7 +52,7 @@ Signed-off-by: John Crispin unsigned long rate; int ret; -@@ -152,16 +150,10 @@ static int ath79_spi_probe(struct platfo +@@ -152,15 +150,9 @@ static int ath79_spi_probe(struct platfo master->dev.of_node = pdev->dev.of_node; platform_set_drvdata(pdev, sp); @@ -60,8 +60,7 @@ Signed-off-by: John Crispin - master->use_gpio_descriptors = true; master->bits_per_word_mask = SPI_BPW_RANGE_MASK(1, 32); - master->setup = spi_bitbang_setup; - master->cleanup = spi_bitbang_cleanup; + master->flags = SPI_MASTER_GPIO_SS; - if (pdata) { - master->bus_num = pdata->bus_num; - master->num_chipselect = pdata->num_chipselect; diff --git a/target/linux/ath79/patches-5.10/0050-spi-ath79-remove-spi-master-setup-and-cleanup-assign.patch b/target/linux/ath79/patches-5.10/0050-spi-ath79-remove-spi-master-setup-and-cleanup-assign.patch deleted file mode 100644 index a57ac24f29..0000000000 --- a/target/linux/ath79/patches-5.10/0050-spi-ath79-remove-spi-master-setup-and-cleanup-assign.patch +++ /dev/null @@ -1,28 +0,0 @@ -From b142b1beb199f62d47370c98a3dd8e13f792e9c0 Mon Sep 17 00:00:00 2001 -From: David Bauer -Date: Thu, 27 Feb 2020 23:03:20 +0100 -Subject: [PATCH] spi: ath79: remove spi-master setup and cleanup assignment - -This removes the assignment of setup and cleanup functions for the ath79 -target. Assigning the setup-method will lead to 'setup_transfer' not -being assigned in spi_bitbang_init. - -Also drop the redundant cleanup assignment, as this also happens in -spi_bitbang_init. - -Signed-off-by: David Bauer ---- - drivers/spi/spi-ath79.c | 2 -- - 1 file changed, 2 deletions(-) - ---- a/drivers/spi/spi-ath79.c -+++ b/drivers/spi/spi-ath79.c -@@ -152,8 +152,6 @@ static int ath79_spi_probe(struct platfo - - master->use_gpio_descriptors = true; - master->bits_per_word_mask = SPI_BPW_RANGE_MASK(1, 32); -- master->setup = spi_bitbang_setup; -- master->cleanup = spi_bitbang_cleanup; - - sp->bitbang.master = master; - sp->bitbang.chipselect = ath79_spi_chipselect; diff --git a/target/linux/ath79/patches-5.10/0054-spi-sync-up-initial-chipselect-state.patch b/target/linux/ath79/patches-5.10/0054-spi-sync-up-initial-chipselect-state.patch deleted file mode 100644 index 7329ae5827..0000000000 --- a/target/linux/ath79/patches-5.10/0054-spi-sync-up-initial-chipselect-state.patch +++ /dev/null @@ -1,89 +0,0 @@ -From 4b7d7f85abac1e7ad9e8b745694e470f0729f527 Mon Sep 17 00:00:00 2001 -From: David Bauer -Date: Wed, 3 Mar 2021 17:11:34 +0100 -Subject: [PATCH] spi: sync up initial chipselect state - -When initially probing the SPI slave device, the call for disabling an -SPI device without the SPI_CS_HIGH flag is not applied, as the -condition for checking whether or not the state to be applied equals the -one currently set evaluates to true. - -This however might not necessarily be the case, as the chipselect might -be active. - -Add a force flag to spi_set_cs which allows to override this -early access condition. Set it to false everywhere except when called -from spi_setup to sync up the initial CS state. - -Fixes commit d40f0b6f2e21 ("spi: Avoid setting the chip select if we don't -need to") - -Signed-off-by: David Bauer ---- - drivers/spi/spi.c | 16 ++++++++-------- - 1 file changed, 8 insertions(+), 8 deletions(-) - ---- a/drivers/spi/spi.c -+++ b/drivers/spi/spi.c -@@ -787,7 +787,7 @@ int spi_register_board_info(struct spi_b - - /*-------------------------------------------------------------------------*/ - --static void spi_set_cs(struct spi_device *spi, bool enable) -+static void spi_set_cs(struct spi_device *spi, bool enable, bool force) - { - bool enable1 = enable; - -@@ -795,7 +795,7 @@ static void spi_set_cs(struct spi_device - * Avoid calling into the driver (or doing delays) if the chip select - * isn't actually changing from the last time this was called. - */ -- if ((spi->controller->last_cs_enable == enable) && -+ if (!force && (spi->controller->last_cs_enable == enable) && - (spi->controller->last_cs_mode_high == (spi->mode & SPI_CS_HIGH))) - return; - -@@ -1243,7 +1243,7 @@ static int spi_transfer_one_message(stru - struct spi_statistics *statm = &ctlr->statistics; - struct spi_statistics *stats = &msg->spi->statistics; - -- spi_set_cs(msg->spi, true); -+ spi_set_cs(msg->spi, true, false); - - SPI_STATISTICS_INCREMENT_FIELD(statm, messages); - SPI_STATISTICS_INCREMENT_FIELD(stats, messages); -@@ -1311,9 +1311,9 @@ fallback_pio: - &msg->transfers)) { - keep_cs = true; - } else { -- spi_set_cs(msg->spi, false); -+ spi_set_cs(msg->spi, false, false); - _spi_transfer_cs_change_delay(msg, xfer); -- spi_set_cs(msg->spi, true); -+ spi_set_cs(msg->spi, true, false); - } - } - -@@ -1322,7 +1322,7 @@ fallback_pio: - - out: - if (ret != 0 || !keep_cs) -- spi_set_cs(msg->spi, false); -+ spi_set_cs(msg->spi, false, false); - - if (msg->status == -EINPROGRESS) - msg->status = ret; -@@ -3400,11 +3400,11 @@ int spi_setup(struct spi_device *spi) - */ - status = 0; - -- spi_set_cs(spi, false); -+ spi_set_cs(spi, false, true); - pm_runtime_mark_last_busy(spi->controller->dev.parent); - pm_runtime_put_autosuspend(spi->controller->dev.parent); - } else { -- spi_set_cs(spi, false); -+ spi_set_cs(spi, false, true); - } - - mutex_unlock(&spi->controller->io_mutex); diff --git a/target/linux/ath79/patches-5.10/410-spi-ath79-Implement-the-spi_mem-interface.patch b/target/linux/ath79/patches-5.10/410-spi-ath79-Implement-the-spi_mem-interface.patch index 2a6b9857fb..51a71c6ef2 100644 --- a/target/linux/ath79/patches-5.10/410-spi-ath79-Implement-the-spi_mem-interface.patch +++ b/target/linux/ath79/patches-5.10/410-spi-ath79-Implement-the-spi_mem-interface.patch @@ -58,7 +58,7 @@ Signed-off-by: Luiz Angelo Daros de Luca static int ath79_spi_probe(struct platform_device *pdev) { struct spi_master *master; -@@ -163,6 +197,7 @@ static int ath79_spi_probe(struct platfo +@@ -164,6 +198,7 @@ static int ath79_spi_probe(struct platfo ret = PTR_ERR(sp->base); goto err_put_master; } diff --git a/target/linux/ath79/patches-5.10/411-spi-ath79-add-SPI_MASTER_GPIO_SS-flag.patch b/target/linux/ath79/patches-5.10/411-spi-ath79-add-SPI_MASTER_GPIO_SS-flag.patch deleted file mode 100644 index 0a81ecd6f7..0000000000 --- a/target/linux/ath79/patches-5.10/411-spi-ath79-add-SPI_MASTER_GPIO_SS-flag.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 55e2fff639d4297ffeb478113aef6d3e26c2c4c2 Mon Sep 17 00:00:00 2001 -From: David Bauer -Date: Wed, 17 Feb 2021 02:44:55 +0100 -Subject: [PATCH 1/2] spi: ath79: add SPI_MASTER_GPIO_SS flag - -Add the SPI_MASTER_GPIO_SS flag for the spi-ath79 driver. Otherwise, -the custom chipselect function is never called. This breaks hardware, -where the three dedicated chipselect lines are used instead of generic -GPIO pins. - -Fixes commit 4a07b8bcd503 ("spi: bitbang: Make chipselect callback optional") - -Signed-off-by: David Bauer ---- - drivers/spi/spi-ath79.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/drivers/spi/spi-ath79.c -+++ b/drivers/spi/spi-ath79.c -@@ -186,6 +186,7 @@ static int ath79_spi_probe(struct platfo - - master->use_gpio_descriptors = true; - master->bits_per_word_mask = SPI_BPW_RANGE_MASK(1, 32); -+ master->flags = SPI_MASTER_GPIO_SS; - - sp->bitbang.master = master; - sp->bitbang.chipselect = ath79_spi_chipselect; diff --git a/target/linux/bcm63xx/patches-5.10/143-gpio-fix-device-tree-gpio-hogs-on-dual-role-gpio-pin.patch b/target/linux/bcm63xx/patches-5.10/143-gpio-fix-device-tree-gpio-hogs-on-dual-role-gpio-pin.patch index 6ef8f77931..17cb9e0f00 100644 --- a/target/linux/bcm63xx/patches-5.10/143-gpio-fix-device-tree-gpio-hogs-on-dual-role-gpio-pin.patch +++ b/target/linux/bcm63xx/patches-5.10/143-gpio-fix-device-tree-gpio-hogs-on-dual-role-gpio-pin.patch @@ -29,7 +29,7 @@ Signed-off-by: Jonas Gorski --- a/drivers/gpio/gpiolib-of.c +++ b/drivers/gpio/gpiolib-of.c -@@ -644,23 +644,30 @@ static struct gpio_desc *of_parse_own_gp +@@ -646,23 +646,30 @@ static struct gpio_desc *of_parse_own_gp * of_gpiochip_add_hog - Add all hogs in a hog device node * @chip: gpio chip to act on * @hog: device node describing the hogs @@ -62,7 +62,7 @@ Signed-off-by: Jonas Gorski ret = gpiod_hog(desc, name, lflags, dflags); if (ret < 0) return ret; -@@ -676,12 +683,15 @@ static int of_gpiochip_add_hog(struct gp +@@ -678,12 +685,15 @@ static int of_gpiochip_add_hog(struct gp /** * of_gpiochip_scan_gpios - Scan gpio-controller for gpio definitions * @chip: gpio chip to act on @@ -81,7 +81,7 @@ Signed-off-by: Jonas Gorski { struct device_node *np; int ret; -@@ -690,7 +700,7 @@ static int of_gpiochip_scan_gpios(struct +@@ -692,7 +702,7 @@ static int of_gpiochip_scan_gpios(struct if (!of_property_read_bool(np, "gpio-hog")) continue; @@ -90,7 +90,7 @@ Signed-off-by: Jonas Gorski if (ret < 0) { of_node_put(np); return ret; -@@ -756,7 +766,7 @@ static int of_gpio_notify(struct notifie +@@ -758,7 +768,7 @@ static int of_gpio_notify(struct notifie if (chip == NULL) return NOTIFY_OK; /* not for us */ @@ -99,7 +99,7 @@ Signed-off-by: Jonas Gorski if (ret < 0) { pr_err("%s: failed to add hogs for %pOF\n", __func__, rd->dn); -@@ -1028,9 +1038,11 @@ int of_gpiochip_add(struct gpio_chip *ch +@@ -1030,9 +1040,11 @@ int of_gpiochip_add(struct gpio_chip *ch of_node_get(chip->of_node); diff --git a/target/linux/bcm63xx/patches-5.10/322-MIPS-BCM63XX-switch-to-IRQ_DOMAIN.patch b/target/linux/bcm63xx/patches-5.10/322-MIPS-BCM63XX-switch-to-IRQ_DOMAIN.patch index 31e21a70c7..b76f06d92d 100644 --- a/target/linux/bcm63xx/patches-5.10/322-MIPS-BCM63XX-switch-to-IRQ_DOMAIN.patch +++ b/target/linux/bcm63xx/patches-5.10/322-MIPS-BCM63XX-switch-to-IRQ_DOMAIN.patch @@ -14,7 +14,7 @@ Signed-off-by: Jonas Gorski --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -316,6 +316,9 @@ config BCM63XX +@@ -317,6 +317,9 @@ config BCM63XX select SYNC_R4K select DMA_NONCOHERENT select IRQ_MIPS_CPU diff --git a/target/linux/bcm63xx/patches-5.10/434-nand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch b/target/linux/bcm63xx/patches-5.10/434-nand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch index 130985ec42..33e27d2153 100644 --- a/target/linux/bcm63xx/patches-5.10/434-nand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch +++ b/target/linux/bcm63xx/patches-5.10/434-nand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch @@ -19,9 +19,9 @@ Signed-off-by: Álvaro Fernández Rojas --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c -@@ -2688,6 +2688,12 @@ static int brcmnand_attach_chip(struct n - - ret = brcmstb_choose_ecc_layout(host); +@@ -2694,6 +2694,12 @@ static int brcmnand_attach_chip(struct n + chip->ecc.read_oob = brcmnand_read_oob_raw; + } + /* If OOB is written with ECC enabled it will cause ECC errors */ + if (is_hamming_ecc(host->ctrl, &host->hwcfg)) { diff --git a/target/linux/bmips/patches-5.10/001-v5.11-mips-bmips-select-ARCH_HAS_RESET_CONTROLLER.patch b/target/linux/bmips/patches-5.10/001-v5.11-mips-bmips-select-ARCH_HAS_RESET_CONTROLLER.patch index b8601ec1bf..a2e92bcafd 100644 --- a/target/linux/bmips/patches-5.10/001-v5.11-mips-bmips-select-ARCH_HAS_RESET_CONTROLLER.patch +++ b/target/linux/bmips/patches-5.10/001-v5.11-mips-bmips-select-ARCH_HAS_RESET_CONTROLLER.patch @@ -17,7 +17,7 @@ Signed-off-by: Thomas Bogendoerfer --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -249,6 +249,7 @@ config ATH79 +@@ -250,6 +250,7 @@ config ATH79 config BMIPS_GENERIC bool "Broadcom Generic BMIPS kernel" diff --git a/target/linux/bmips/patches-5.10/041-v5.13-mtd-rawnand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch b/target/linux/bmips/patches-5.10/041-v5.13-mtd-rawnand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch index a4c61c8715..00669843d8 100644 --- a/target/linux/bmips/patches-5.10/041-v5.13-mtd-rawnand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch +++ b/target/linux/bmips/patches-5.10/041-v5.13-mtd-rawnand-brcmnand-fix-OOB-R-W-with-Hamming-ECC.patch @@ -23,9 +23,9 @@ Link: https://lore.kernel.org/linux-mtd/20210224080210.23686-1-noltari@gmail.com --- a/drivers/mtd/nand/raw/brcmnand/brcmnand.c +++ b/drivers/mtd/nand/raw/brcmnand/brcmnand.c -@@ -2688,6 +2688,12 @@ static int brcmnand_attach_chip(struct n - - ret = brcmstb_choose_ecc_layout(host); +@@ -2694,6 +2694,12 @@ static int brcmnand_attach_chip(struct n + chip->ecc.read_oob = brcmnand_read_oob_raw; + } + /* If OOB is written with ECC enabled it will cause ECC errors */ + if (is_hamming_ecc(host->ctrl, &host->hwcfg)) { diff --git a/target/linux/bmips/patches-5.10/052-v5.13-gpio-guard-gpiochip_irqchip_add_domain-with-GPIOLIB_.patch b/target/linux/bmips/patches-5.10/052-v5.13-gpio-guard-gpiochip_irqchip_add_domain-with-GPIOLIB_.patch deleted file mode 100644 index b0093e9216..0000000000 --- a/target/linux/bmips/patches-5.10/052-v5.13-gpio-guard-gpiochip_irqchip_add_domain-with-GPIOLIB_.patch +++ /dev/null @@ -1,45 +0,0 @@ -From 9c7d24693d864f90b27aad5d15fbfe226c02898b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= -Date: Wed, 24 Mar 2021 09:19:02 +0100 -Subject: [PATCH 01/22] gpio: guard gpiochip_irqchip_add_domain() with - GPIOLIB_IRQCHIP -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The current code doesn't check if GPIOLIB_IRQCHIP is enabled, which results in -a compilation error when trying to build gpio-regmap if CONFIG_GPIOLIB_IRQCHIP -isn't enabled. - -Fixes: 6a45b0e2589f ("gpiolib: Introduce gpiochip_irqchip_add_domain()") -Suggested-by: Michael Walle -Signed-off-by: Álvaro Fernández Rojas -Reviewed-by: Linus Walleij -Reviewed-by: Michael Walle -Acked-by: Bartosz Golaszewski -Link: https://lore.kernel.org/r/20210324081923.20379-2-noltari@gmail.com -Signed-off-by: Linus Walleij ---- - include/linux/gpio/driver.h | 9 +++++++++ - 1 file changed, 9 insertions(+) - ---- a/include/linux/gpio/driver.h -+++ b/include/linux/gpio/driver.h -@@ -637,8 +637,17 @@ int gpiochip_irqchip_add_key(struct gpio - bool gpiochip_irqchip_irq_valid(const struct gpio_chip *gc, - unsigned int offset); - -+#ifdef CONFIG_GPIOLIB_IRQCHIP - int gpiochip_irqchip_add_domain(struct gpio_chip *gc, - struct irq_domain *domain); -+#else -+static inline int gpiochip_irqchip_add_domain(struct gpio_chip *gc, -+ struct irq_domain *domain) -+{ -+ WARN_ON(1); -+ return -EINVAL; -+} -+#endif - - #ifdef CONFIG_LOCKDEP - diff --git a/target/linux/bmips/patches-5.10/202-mips-bmips-disable-ARCH_HAS_SYNC_DMA_FOR_CPU_ALL.patch b/target/linux/bmips/patches-5.10/202-mips-bmips-disable-ARCH_HAS_SYNC_DMA_FOR_CPU_ALL.patch index 09b494197b..9b4674dbed 100644 --- a/target/linux/bmips/patches-5.10/202-mips-bmips-disable-ARCH_HAS_SYNC_DMA_FOR_CPU_ALL.patch +++ b/target/linux/bmips/patches-5.10/202-mips-bmips-disable-ARCH_HAS_SYNC_DMA_FOR_CPU_ALL.patch @@ -52,7 +52,7 @@ Signed-off-by: Álvaro Fernández Rojas --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -250,7 +250,6 @@ config ATH79 +@@ -251,7 +251,6 @@ config ATH79 config BMIPS_GENERIC bool "Broadcom Generic BMIPS kernel" select ARCH_HAS_RESET_CONTROLLER diff --git a/target/linux/bmips/patches-5.10/600-mips-bmips-add-pci-support.patch b/target/linux/bmips/patches-5.10/600-mips-bmips-add-pci-support.patch index b4e7b7cfca..961e95e52a 100644 --- a/target/linux/bmips/patches-5.10/600-mips-bmips-add-pci-support.patch +++ b/target/linux/bmips/patches-5.10/600-mips-bmips-add-pci-support.patch @@ -1,6 +1,6 @@ --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -262,6 +262,7 @@ config BMIPS_GENERIC +@@ -263,6 +263,7 @@ config BMIPS_GENERIC select BCM7038_L1_IRQ select BCM7120_L2_IRQ select BRCMSTB_L2_IRQ diff --git a/target/linux/generic/backport-5.10/103-v5.13-MIPS-select-CPU_MIPS64-for-remaining-MIPS64-CPUs.patch b/target/linux/generic/backport-5.10/103-v5.13-MIPS-select-CPU_MIPS64-for-remaining-MIPS64-CPUs.patch index cf79e9a449..9fc236ec41 100644 --- a/target/linux/generic/backport-5.10/103-v5.13-MIPS-select-CPU_MIPS64-for-remaining-MIPS64-CPUs.patch +++ b/target/linux/generic/backport-5.10/103-v5.13-MIPS-select-CPU_MIPS64-for-remaining-MIPS64-CPUs.patch @@ -25,7 +25,7 @@ Signed-off-by: Jason A. Donenfeld --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -2075,7 +2075,7 @@ config CPU_MIPS32 +@@ -2076,7 +2076,7 @@ config CPU_MIPS32 config CPU_MIPS64 bool default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R5 || \ diff --git a/target/linux/generic/backport-5.10/499-v5.13-mtd-don-t-lock-when-recursively-deleting-partitions.patch b/target/linux/generic/backport-5.10/499-v5.13-mtd-don-t-lock-when-recursively-deleting-partitions.patch deleted file mode 100644 index d34248fbc7..0000000000 --- a/target/linux/generic/backport-5.10/499-v5.13-mtd-don-t-lock-when-recursively-deleting-partitions.patch +++ /dev/null @@ -1,24 +0,0 @@ -From: David Bauer -Date: Wed, 17 Feb 2021 03:21:39 +0100 -Subject: [PATCH] mtd: don't lock when recursively deleting partitions - -When recursively deleting partitions, don't acquire the masters -partition lock twice. Otherwise the process endy up in a deadlocked -state. - -Signed-off-by: David Bauer ---- - drivers/mtd/mtdpart.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/drivers/mtd/mtdpart.c -+++ b/drivers/mtd/mtdpart.c -@@ -331,7 +331,7 @@ static int __del_mtd_partitions(struct m - - list_for_each_entry_safe(child, next, &mtd->partitions, part.node) { - if (mtd_has_partitions(child)) -- del_mtd_partitions(child); -+ __del_mtd_partitions(child); - - pr_info("Deleting %s MTD partition\n", child->name); - ret = del_mtd_device(child); diff --git a/target/linux/generic/hack-5.10/301-mips_image_cmdline_hack.patch b/target/linux/generic/hack-5.10/301-mips_image_cmdline_hack.patch index 6c0828fa8a..027620deeb 100644 --- a/target/linux/generic/hack-5.10/301-mips_image_cmdline_hack.patch +++ b/target/linux/generic/hack-5.10/301-mips_image_cmdline_hack.patch @@ -10,7 +10,7 @@ Signed-off-by: Gabor Juhos --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -1162,6 +1162,10 @@ config MIPS_MSC +@@ -1163,6 +1163,10 @@ config MIPS_MSC config SYNC_R4K bool diff --git a/target/linux/generic/hack-5.10/402-mtd-blktrans-call-add-disks-after-mtd-device.patch b/target/linux/generic/hack-5.10/402-mtd-blktrans-call-add-disks-after-mtd-device.patch index c8c86ad255..988d900b31 100644 --- a/target/linux/generic/hack-5.10/402-mtd-blktrans-call-add-disks-after-mtd-device.patch +++ b/target/linux/generic/hack-5.10/402-mtd-blktrans-call-add-disks-after-mtd-device.patch @@ -77,7 +77,7 @@ Signed-off-by: Daniel Golle #include "mtdcore.h" -@@ -848,6 +849,8 @@ int mtd_device_parse_register(struct mtd +@@ -851,6 +852,8 @@ int mtd_device_parse_register(struct mtd register_reboot_notifier(&mtd->reboot_notifier); } diff --git a/target/linux/generic/hack-5.10/902-debloat_proc.patch b/target/linux/generic/hack-5.10/902-debloat_proc.patch index 0241b6e7eb..b426851bcc 100644 --- a/target/linux/generic/hack-5.10/902-debloat_proc.patch +++ b/target/linux/generic/hack-5.10/902-debloat_proc.patch @@ -396,7 +396,7 @@ Signed-off-by: Felix Fietkau } --- a/net/ipv4/route.c +++ b/net/ipv4/route.c -@@ -409,6 +409,9 @@ static struct pernet_operations ip_rt_pr +@@ -410,6 +410,9 @@ static struct pernet_operations ip_rt_pr static int __init ip_rt_proc_init(void) { diff --git a/target/linux/generic/pending-5.10/300-mips_expose_boot_raw.patch b/target/linux/generic/pending-5.10/300-mips_expose_boot_raw.patch index a454733e66..8ecfb6d3ca 100644 --- a/target/linux/generic/pending-5.10/300-mips_expose_boot_raw.patch +++ b/target/linux/generic/pending-5.10/300-mips_expose_boot_raw.patch @@ -9,7 +9,7 @@ Acked-by: Rob Landley --- --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -1077,9 +1077,6 @@ config FW_ARC +@@ -1078,9 +1078,6 @@ config FW_ARC config ARCH_MAY_HAVE_PC_FDC bool @@ -19,7 +19,7 @@ Acked-by: Rob Landley config CEVT_BCM1480 bool -@@ -3169,6 +3166,18 @@ choice +@@ -3170,6 +3167,18 @@ choice bool "Extend builtin kernel arguments with bootloader arguments" endchoice diff --git a/target/linux/generic/pending-5.10/465-m25p80-mx-disable-software-protection.patch b/target/linux/generic/pending-5.10/465-m25p80-mx-disable-software-protection.patch index e9a9cad869..f58d5452ab 100644 --- a/target/linux/generic/pending-5.10/465-m25p80-mx-disable-software-protection.patch +++ b/target/linux/generic/pending-5.10/465-m25p80-mx-disable-software-protection.patch @@ -8,7 +8,7 @@ Signed-off-by: Felix Fietkau --- a/drivers/mtd/spi-nor/macronix.c +++ b/drivers/mtd/spi-nor/macronix.c -@@ -96,6 +96,7 @@ static void macronix_default_init(struct +@@ -93,6 +93,7 @@ static void macronix_default_init(struct { nor->params->quad_enable = spi_nor_sr1_bit6_quad_enable; nor->params->set_4byte_addr_mode = spi_nor_set_4byte_addr_mode; diff --git a/target/linux/generic/pending-5.10/495-mtd-core-add-get_mtd_device_by_node.patch b/target/linux/generic/pending-5.10/495-mtd-core-add-get_mtd_device_by_node.patch index ef8b54a450..22c3ba56d4 100644 --- a/target/linux/generic/pending-5.10/495-mtd-core-add-get_mtd_device_by_node.patch +++ b/target/linux/generic/pending-5.10/495-mtd-core-add-get_mtd_device_by_node.patch @@ -17,7 +17,7 @@ Reviewed-by: Miquel Raynal --- a/drivers/mtd/mtdcore.c +++ b/drivers/mtd/mtdcore.c -@@ -1043,6 +1043,44 @@ out_unlock: +@@ -1046,6 +1046,44 @@ out_unlock: } EXPORT_SYMBOL_GPL(get_mtd_device_nm); diff --git a/target/linux/generic/pending-5.10/630-packet_socket_type.patch b/target/linux/generic/pending-5.10/630-packet_socket_type.patch index 104bcbe5a5..7ea1765f11 100644 --- a/target/linux/generic/pending-5.10/630-packet_socket_type.patch +++ b/target/linux/generic/pending-5.10/630-packet_socket_type.patch @@ -11,7 +11,7 @@ Signed-off-by: Felix Fietkau --- a/include/uapi/linux/if_packet.h +++ b/include/uapi/linux/if_packet.h -@@ -32,6 +32,8 @@ struct sockaddr_ll { +@@ -33,6 +33,8 @@ struct sockaddr_ll { #define PACKET_KERNEL 7 /* To kernel space */ /* Unused, PACKET_FASTROUTE and PACKET_LOOPBACK are invisible to user space */ #define PACKET_FASTROUTE 6 /* Fastrouted frame */ @@ -20,7 +20,7 @@ Signed-off-by: Felix Fietkau /* Packet socket options */ -@@ -58,6 +60,7 @@ struct sockaddr_ll { +@@ -59,6 +61,7 @@ struct sockaddr_ll { #define PACKET_ROLLOVER_STATS 21 #define PACKET_FANOUT_DATA 22 #define PACKET_IGNORE_OUTGOING 23 @@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau #define PACKET_FANOUT_LB 1 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c -@@ -1801,6 +1801,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1817,6 +1817,7 @@ static int packet_rcv_spkt(struct sk_buf { struct sock *sk; struct sockaddr_pkt *spkt; @@ -38,7 +38,7 @@ Signed-off-by: Felix Fietkau /* * When we registered the protocol we saved the socket in the data -@@ -1808,6 +1809,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1824,6 +1825,7 @@ static int packet_rcv_spkt(struct sk_buf */ sk = pt->af_packet_priv; @@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau /* * Yank back the headers [hope the device set this -@@ -1820,7 +1822,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1836,7 +1838,7 @@ static int packet_rcv_spkt(struct sk_buf * so that this procedure is noop. */ @@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau goto out; if (!net_eq(dev_net(dev), sock_net(sk))) -@@ -2058,12 +2060,12 @@ static int packet_rcv(struct sk_buff *sk +@@ -2074,12 +2076,12 @@ static int packet_rcv(struct sk_buff *sk unsigned int snaplen, res; bool is_drop_n_account = false; @@ -71,7 +71,7 @@ Signed-off-by: Felix Fietkau if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -2189,12 +2191,12 @@ static int tpacket_rcv(struct sk_buff *s +@@ -2205,12 +2207,12 @@ static int tpacket_rcv(struct sk_buff *s BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h2)) != 32); BUILD_BUG_ON(TPACKET_ALIGN(sizeof(*h.h3)) != 48); @@ -87,7 +87,7 @@ Signed-off-by: Felix Fietkau if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -3293,6 +3295,7 @@ static int packet_create(struct net *net +@@ -3309,6 +3311,7 @@ static int packet_create(struct net *net mutex_init(&po->pg_vec_lock); po->rollover = NULL; po->prot_hook.func = packet_rcv; @@ -95,7 +95,7 @@ Signed-off-by: Felix Fietkau if (sock->type == SOCK_PACKET) po->prot_hook.func = packet_rcv_spkt; -@@ -3927,6 +3930,16 @@ packet_setsockopt(struct socket *sock, i +@@ -3943,6 +3946,16 @@ packet_setsockopt(struct socket *sock, i po->xmit = val ? packet_direct_xmit : dev_queue_xmit; return 0; } @@ -112,7 +112,7 @@ Signed-off-by: Felix Fietkau default: return -ENOPROTOOPT; } -@@ -3983,6 +3996,13 @@ static int packet_getsockopt(struct sock +@@ -3999,6 +4012,13 @@ static int packet_getsockopt(struct sock case PACKET_VNET_HDR: val = po->has_vnet_hdr; break; @@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau break; --- a/net/packet/internal.h +++ b/net/packet/internal.h -@@ -136,6 +136,7 @@ struct packet_sock { +@@ -137,6 +137,7 @@ struct packet_sock { int (*xmit)(struct sk_buff *skb); struct packet_type prot_hook ____cacheline_aligned_in_smp; atomic_t tp_drops ____cacheline_aligned_in_smp; diff --git a/target/linux/ipq806x/patches-5.10/0069-arm-boot-add-dts-files.patch b/target/linux/ipq806x/patches-5.10/0069-arm-boot-add-dts-files.patch index 2b069b8cfb..a8e17afd42 100644 --- a/target/linux/ipq806x/patches-5.10/0069-arm-boot-add-dts-files.patch +++ b/target/linux/ipq806x/patches-5.10/0069-arm-boot-add-dts-files.patch @@ -10,7 +10,7 @@ Signed-off-by: John Crispin --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile -@@ -907,8 +907,25 @@ +@@ -907,8 +907,25 @@ dtb-$(CONFIG_ARCH_QCOM) += \ qcom-ipq4019-ap.dk04.1-c3.dtb \ qcom-ipq4019-ap.dk07.1-c1.dtb \ qcom-ipq4019-ap.dk07.1-c2.dtb \ diff --git a/target/linux/ipq806x/patches-5.10/0072-add-ipq806x-with-no-clocks.patch b/target/linux/ipq806x/patches-5.10/0072-add-ipq806x-with-no-clocks.patch index 627c32724f..62bba1d72a 100644 --- a/target/linux/ipq806x/patches-5.10/0072-add-ipq806x-with-no-clocks.patch +++ b/target/linux/ipq806x/patches-5.10/0072-add-ipq806x-with-no-clocks.patch @@ -1,6 +1,6 @@ --- a/drivers/firmware/qcom_scm.c +++ b/drivers/firmware/qcom_scm.c -@@ -1265,6 +1265,7 @@ static const struct of_device_id qcom_sc +@@ -1275,6 +1275,7 @@ static const struct of_device_id qcom_sc SCM_HAS_BUS_CLK) }, { .compatible = "qcom,scm-ipq4019" }, diff --git a/target/linux/ipq806x/patches-5.10/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch b/target/linux/ipq806x/patches-5.10/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch index 26c64d68c4..6106dfb8dc 100644 --- a/target/linux/ipq806x/patches-5.10/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch +++ b/target/linux/ipq806x/patches-5.10/099-1-mtd-nand-raw-qcom_nandc-add-boot_layout_mode-support.patch @@ -229,7 +229,7 @@ Signed-off-by: Ansuel Smith return ret; } -@@ -3035,6 +3106,7 @@ static int qcom_nandc_remove(struct plat +@@ -3032,6 +3103,7 @@ static int qcom_nandc_remove(struct plat static const struct qcom_nandc_props ipq806x_nandc_props = { .ecc_modes = (ECC_RS_4BIT | ECC_BCH_8BIT), .is_bam = false, diff --git a/target/linux/ipq806x/patches-5.10/101-dwmac-ipq806x-qsgmii-pcs-all-ch-ctl.patch b/target/linux/ipq806x/patches-5.10/101-dwmac-ipq806x-qsgmii-pcs-all-ch-ctl.patch index 3c497ead6a..8e9939a416 100644 --- a/target/linux/ipq806x/patches-5.10/101-dwmac-ipq806x-qsgmii-pcs-all-ch-ctl.patch +++ b/target/linux/ipq806x/patches-5.10/101-dwmac-ipq806x-qsgmii-pcs-all-ch-ctl.patch @@ -18,7 +18,7 @@ #define QSGMII_PCS_CAL_LCKDT_CTL 0x120 #define QSGMII_PCS_CAL_LCKDT_CTL_RST BIT(19) -@@ -241,6 +252,36 @@ static void ipq806x_gmac_fix_mac_speed(v +@@ -242,6 +253,36 @@ static void ipq806x_gmac_fix_mac_speed(v ipq806x_gmac_set_speed(gmac, speed); } @@ -55,7 +55,7 @@ static int ipq806x_gmac_probe(struct platform_device *pdev) { struct plat_stmmacenet_data *plat_dat; -@@ -249,6 +290,7 @@ static int ipq806x_gmac_probe(struct pla +@@ -250,6 +291,7 @@ static int ipq806x_gmac_probe(struct pla struct ipq806x_gmac *gmac; int val; int err; @@ -63,7 +63,7 @@ val = stmmac_get_platform_resources(pdev, &stmmac_res); if (val) -@@ -345,6 +387,17 @@ static int ipq806x_gmac_probe(struct pla +@@ -346,6 +388,17 @@ static int ipq806x_gmac_probe(struct pla 0x1ul << QSGMII_PHY_RX_INPUT_EQU_OFFSET | 0x2ul << QSGMII_PHY_CDR_PI_SLEW_OFFSET | 0xCul << QSGMII_PHY_TX_DRV_AMP_OFFSET); diff --git a/target/linux/ipq806x/patches-5.10/106-5.13-net-stmmac-Set-FIFO-sizes-for-ipq806x.patch b/target/linux/ipq806x/patches-5.10/106-5.13-net-stmmac-Set-FIFO-sizes-for-ipq806x.patch index de28edbb9f..894edaccf9 100644 --- a/target/linux/ipq806x/patches-5.10/106-5.13-net-stmmac-Set-FIFO-sizes-for-ipq806x.patch +++ b/target/linux/ipq806x/patches-5.10/106-5.13-net-stmmac-Set-FIFO-sizes-for-ipq806x.patch @@ -88,7 +88,7 @@ Signed-off-by: Jonathan McDowell --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-ipq806x.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-ipq806x.c -@@ -352,6 +352,8 @@ static int ipq806x_gmac_probe(struct pla +@@ -405,6 +405,8 @@ static int ipq806x_gmac_probe(struct pla plat_dat->bsp_priv = gmac; plat_dat->fix_mac_speed = ipq806x_gmac_fix_mac_speed; plat_dat->multicast_filter_bins = 0; diff --git a/target/linux/lantiq/patches-5.10/0001-MIPS-lantiq-add-pcie-driver.patch b/target/linux/lantiq/patches-5.10/0001-MIPS-lantiq-add-pcie-driver.patch index 2408978a27..200c5629e7 100644 --- a/target/linux/lantiq/patches-5.10/0001-MIPS-lantiq-add-pcie-driver.patch +++ b/target/linux/lantiq/patches-5.10/0001-MIPS-lantiq-add-pcie-driver.patch @@ -4134,7 +4134,7 @@ Signed-off-by: John Crispin + --- a/arch/mips/pci/pci-legacy.c +++ b/arch/mips/pci/pci-legacy.c -@@ -308,3 +308,30 @@ char *__init pcibios_setup(char *str) +@@ -313,3 +313,30 @@ char *__init pcibios_setup(char *str) return pcibios_plat_setup(str); return str; } diff --git a/target/linux/lantiq/patches-5.10/0023-NET-PHY-add-led-support-for-intel-xway.patch b/target/linux/lantiq/patches-5.10/0023-NET-PHY-add-led-support-for-intel-xway.patch index 5a668b6f56..fb8d975110 100644 --- a/target/linux/lantiq/patches-5.10/0023-NET-PHY-add-led-support-for-intel-xway.patch +++ b/target/linux/lantiq/patches-5.10/0023-NET-PHY-add-led-support-for-intel-xway.patch @@ -13,7 +13,7 @@ Signed-off-by: John Crispin --- a/drivers/net/phy/intel-xway.c +++ b/drivers/net/phy/intel-xway.c -@@ -145,6 +145,51 @@ +@@ -157,6 +157,51 @@ #define PHY_ID_PHY11G_VR9_1_2 0xD565A409 #define PHY_ID_PHY22F_VR9_1_2 0xD565A419 @@ -65,7 +65,7 @@ Signed-off-by: John Crispin static int xway_gphy_config_init(struct phy_device *phydev) { int err; -@@ -183,6 +228,7 @@ static int xway_gphy_config_init(struct +@@ -204,6 +249,7 @@ static int xway_gphy_config_init(struct phy_write_mmd(phydev, MDIO_MMD_VEND2, XWAY_MMD_LED2H, ledxh); phy_write_mmd(phydev, MDIO_MMD_VEND2, XWAY_MMD_LED2L, ledxl); diff --git a/target/linux/lantiq/patches-5.10/0152-lantiq-VPE.patch b/target/linux/lantiq/patches-5.10/0152-lantiq-VPE.patch index 6b41f017aa..aa9745d6ff 100644 --- a/target/linux/lantiq/patches-5.10/0152-lantiq-VPE.patch +++ b/target/linux/lantiq/patches-5.10/0152-lantiq-VPE.patch @@ -1,6 +1,6 @@ --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -2425,6 +2425,12 @@ config MIPS_VPE_LOADER +@@ -2426,6 +2426,12 @@ config MIPS_VPE_LOADER Includes a loader for loading an elf relocatable object onto another VPE and running it. diff --git a/target/linux/ramips/patches-5.10/330-fix-pci-init-mt7620.patch b/target/linux/ramips/patches-5.10/330-fix-pci-init-mt7620.patch deleted file mode 100644 index 7c00d4c9ae..0000000000 --- a/target/linux/ramips/patches-5.10/330-fix-pci-init-mt7620.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- a/arch/mips/pci/pci-mt7620.c -+++ b/arch/mips/pci/pci-mt7620.c -@@ -32,6 +32,7 @@ - #define PPLL_CFG1 0x9c - - #define PPLL_DRV 0xa0 -+#define PPLL_LD BIT(23) - #define PDRV_SW_SET BIT(31) - #define LC_CKDRVPD BIT(19) - #define LC_CKDRVOHZ BIT(18) -@@ -239,8 +240,8 @@ static int mt7620_pci_hw_init(struct pla - rt_sysc_m32(0, RALINK_PCIE0_CLK_EN, RALINK_CLKCFG1); - mdelay(100); - -- if (!(rt_sysc_r32(PPLL_CFG1) & PDRV_SW_SET)) { -- dev_err(&pdev->dev, "MT7620 PPLL unlock\n"); -+ if (!(rt_sysc_r32(PPLL_CFG1) & PPLL_LD)) { -+ dev_err(&pdev->dev, "MT7620 PPLL is unlocked, aborting init\n"); - reset_control_assert(rstpcie0); - rt_sysc_m32(RALINK_PCIE0_CLK_EN, 0, RALINK_CLKCFG1); - return -1;