diff options
22 files changed, 59 insertions, 105 deletions
diff --git a/include/kernel-5.10 b/include/kernel-5.10 index bc3926bb3d..908b70d41a 100644 --- a/include/kernel-5.10 +++ b/include/kernel-5.10 @@ -1,2 +1,2 @@ -LINUX_VERSION-5.10 = .179 -LINUX_KERNEL_HASH-5.10.179 = 1bbd445c154b053eea46acc883be548a98179988a9ed3a0b81bddfbf30a37e29 +LINUX_VERSION-5.10 = .180 +LINUX_KERNEL_HASH-5.10.180 = da839a4bf1f6c964b9bde593bd58928f106f53690ff677e226bc50cf368b0c29 diff --git a/target/linux/at91/patches-5.10/127-regulator-core-validate-selector-against-linear_min_.patch b/target/linux/at91/patches-5.10/127-regulator-core-validate-selector-against-linear_min_.patch index 78cfcfca3e..7539f4b89f 100644 --- a/target/linux/at91/patches-5.10/127-regulator-core-validate-selector-against-linear_min_.patch +++ b/target/linux/at91/patches-5.10/127-regulator-core-validate-selector-against-linear_min_.patch @@ -20,7 +20,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c -@@ -3000,7 +3000,8 @@ static int _regulator_list_voltage(struc +@@ -3076,7 +3076,8 @@ static int _regulator_list_voltage(struc return rdev->desc->fixed_uV; if (ops->list_voltage) { @@ -30,7 +30,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> return -EINVAL; if (lock) regulator_lock(rdev); -@@ -3151,7 +3152,8 @@ int regulator_list_hardware_vsel(struct +@@ -3227,7 +3228,8 @@ int regulator_list_hardware_vsel(struct struct regulator_dev *rdev = regulator->rdev; const struct regulator_ops *ops = rdev->desc->ops; @@ -40,7 +40,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> return -EINVAL; if (ops->set_voltage_sel != regulator_set_voltage_sel_regmap) return -EOPNOTSUPP; -@@ -4074,6 +4076,9 @@ int regulator_set_voltage_time(struct re +@@ -4150,6 +4152,9 @@ int regulator_set_voltage_time(struct re for (i = 0; i < rdev->desc->n_voltages; i++) { /* We only look for exact voltage matches here */ diff --git a/target/linux/at91/patches-5.10/128-regulator-core-do-not-continue-if-selector-match.patch b/target/linux/at91/patches-5.10/128-regulator-core-do-not-continue-if-selector-match.patch index 9c99302980..db9fe4a2cc 100644 --- a/target/linux/at91/patches-5.10/128-regulator-core-do-not-continue-if-selector-match.patch +++ b/target/linux/at91/patches-5.10/128-regulator-core-do-not-continue-if-selector-match.patch @@ -14,7 +14,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c -@@ -4079,6 +4079,9 @@ int regulator_set_voltage_time(struct re +@@ -4155,6 +4155,9 @@ int regulator_set_voltage_time(struct re if (i < rdev->desc->linear_min_sel) continue; diff --git a/target/linux/at91/patches-5.10/129-regulator-core-return-zero-for-selectors-lower-than-.patch b/target/linux/at91/patches-5.10/129-regulator-core-return-zero-for-selectors-lower-than-.patch index 5c6267c033..dd0d9c2287 100644 --- a/target/linux/at91/patches-5.10/129-regulator-core-return-zero-for-selectors-lower-than-.patch +++ b/target/linux/at91/patches-5.10/129-regulator-core-return-zero-for-selectors-lower-than-.patch @@ -21,7 +21,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c -@@ -3000,9 +3000,10 @@ static int _regulator_list_voltage(struc +@@ -3076,9 +3076,10 @@ static int _regulator_list_voltage(struc return rdev->desc->fixed_uV; if (ops->list_voltage) { @@ -34,7 +34,7 @@ Signed-off-by: Mark Brown <broonie@kernel.org> if (lock) regulator_lock(rdev); ret = ops->list_voltage(rdev, selector); -@@ -3152,9 +3153,10 @@ int regulator_list_hardware_vsel(struct +@@ -3228,9 +3229,10 @@ int regulator_list_hardware_vsel(struct struct regulator_dev *rdev = regulator->rdev; const struct regulator_ops *ops = rdev->desc->ops; diff --git a/target/linux/at91/patches-5.10/132-dmaengine-at_xdmac-adapt-perid-for-mem2mem-operation.patch b/target/linux/at91/patches-5.10/132-dmaengine-at_xdmac-adapt-perid-for-mem2mem-operation.patch index ca1fa8cee5..163f8d6ce9 100644 --- a/target/linux/at91/patches-5.10/132-dmaengine-at_xdmac-adapt-perid-for-mem2mem-operation.patch +++ b/target/linux/at91/patches-5.10/132-dmaengine-at_xdmac-adapt-perid-for-mem2mem-operation.patch @@ -21,7 +21,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> --- a/drivers/dma/at_xdmac.c +++ b/drivers/dma/at_xdmac.c -@@ -865,7 +865,7 @@ at_xdmac_interleaved_queue_desc(struct d +@@ -866,7 +866,7 @@ at_xdmac_interleaved_queue_desc(struct d * match the one of another channel. If not, it could lead to spurious * flag status. */ @@ -30,7 +30,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> | AT_XDMAC_CC_DIF(0) | AT_XDMAC_CC_SIF(0) | AT_XDMAC_CC_MBSIZE_SIXTEEN -@@ -1047,7 +1047,7 @@ at_xdmac_prep_dma_memcpy(struct dma_chan +@@ -1048,7 +1048,7 @@ at_xdmac_prep_dma_memcpy(struct dma_chan * match the one of another channel. If not, it could lead to spurious * flag status. */ @@ -39,7 +39,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> | AT_XDMAC_CC_DAM_INCREMENTED_AM | AT_XDMAC_CC_SAM_INCREMENTED_AM | AT_XDMAC_CC_DIF(0) -@@ -1153,7 +1153,7 @@ static struct at_xdmac_desc *at_xdmac_me +@@ -1154,7 +1154,7 @@ static struct at_xdmac_desc *at_xdmac_me * match the one of another channel. If not, it could lead to spurious * flag status. */ diff --git a/target/linux/at91/patches-5.10/133-dmaengine-at_xdmac-add-support-for-sama7g5-based-at_.patch b/target/linux/at91/patches-5.10/133-dmaengine-at_xdmac-add-support-for-sama7g5-based-at_.patch index 6d338490fb..5b6ecbcfa3 100644 --- a/target/linux/at91/patches-5.10/133-dmaengine-at_xdmac-add-support-for-sama7g5-based-at_.patch +++ b/target/linux/at91/patches-5.10/133-dmaengine-at_xdmac-add-support-for-sama7g5-based-at_.patch @@ -73,15 +73,15 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> /* ----- Channels ----- */ struct at_xdmac_chan { struct dma_chan chan; -@@ -213,6 +225,7 @@ struct at_xdmac { - struct clk *clk; +@@ -214,6 +226,7 @@ struct at_xdmac { u32 save_gim; + u32 save_gs; struct dma_pool *at_xdmac_desc_pool; + const struct at_xdmac_layout *layout; struct at_xdmac_chan chan[]; }; -@@ -245,9 +258,33 @@ struct at_xdmac_desc { +@@ -246,9 +259,33 @@ struct at_xdmac_desc { struct list_head xfer_node; } __aligned(sizeof(u64)); @@ -116,7 +116,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> } #define at_xdmac_read(atxdmac, reg) readl_relaxed((atxdmac)->regs + (reg)) -@@ -343,8 +380,10 @@ static void at_xdmac_start_xfer(struct a +@@ -344,8 +381,10 @@ static void at_xdmac_start_xfer(struct a first->active_xfer = true; /* Tell xdmac where to get the first descriptor. */ @@ -129,7 +129,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> at_xdmac_chan_write(atchan, AT_XDMAC_CNDA, reg); /* -@@ -539,6 +578,7 @@ static int at_xdmac_compute_chan_conf(st +@@ -540,6 +579,7 @@ static int at_xdmac_compute_chan_conf(st enum dma_transfer_direction direction) { struct at_xdmac_chan *atchan = to_at_xdmac_chan(chan); @@ -137,7 +137,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> int csize, dwidth; if (direction == DMA_DEV_TO_MEM) { -@@ -546,12 +586,14 @@ static int at_xdmac_compute_chan_conf(st +@@ -547,12 +587,14 @@ static int at_xdmac_compute_chan_conf(st AT91_XDMAC_DT_PERID(atchan->perid) | AT_XDMAC_CC_DAM_INCREMENTED_AM | AT_XDMAC_CC_SAM_FIXED_AM @@ -154,7 +154,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> csize = ffs(atchan->sconfig.src_maxburst) - 1; if (csize < 0) { dev_err(chan2dev(chan), "invalid src maxburst value\n"); -@@ -569,12 +611,14 @@ static int at_xdmac_compute_chan_conf(st +@@ -570,12 +612,14 @@ static int at_xdmac_compute_chan_conf(st AT91_XDMAC_DT_PERID(atchan->perid) | AT_XDMAC_CC_DAM_FIXED_AM | AT_XDMAC_CC_SAM_INCREMENTED_AM @@ -171,7 +171,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> csize = ffs(atchan->sconfig.dst_maxburst) - 1; if (csize < 0) { dev_err(chan2dev(chan), "invalid src maxburst value\n"); -@@ -864,10 +908,12 @@ at_xdmac_interleaved_queue_desc(struct d +@@ -865,10 +909,12 @@ at_xdmac_interleaved_queue_desc(struct d * ERRATA: Even if useless for memory transfers, the PERID has to not * match the one of another channel. If not, it could lead to spurious * flag status. @@ -186,7 +186,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> | AT_XDMAC_CC_MBSIZE_SIXTEEN | AT_XDMAC_CC_TYPE_MEM_TRAN; -@@ -1046,12 +1092,14 @@ at_xdmac_prep_dma_memcpy(struct dma_chan +@@ -1047,12 +1093,14 @@ at_xdmac_prep_dma_memcpy(struct dma_chan * ERRATA: Even if useless for memory transfers, the PERID has to not * match the one of another channel. If not, it could lead to spurious * flag status. @@ -203,7 +203,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> | AT_XDMAC_CC_MBSIZE_SIXTEEN | AT_XDMAC_CC_TYPE_MEM_TRAN; unsigned long irqflags; -@@ -1152,12 +1200,14 @@ static struct at_xdmac_desc *at_xdmac_me +@@ -1153,12 +1201,14 @@ static struct at_xdmac_desc *at_xdmac_me * ERRATA: Even if useless for memory transfers, the PERID has to not * match the one of another channel. If not, it could lead to spurious * flag status. @@ -220,7 +220,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> | AT_XDMAC_CC_MBSIZE_SIXTEEN | AT_XDMAC_CC_MEMSET_HW_MODE | AT_XDMAC_CC_TYPE_MEM_TRAN; -@@ -1436,7 +1486,7 @@ at_xdmac_tx_status(struct dma_chan *chan +@@ -1437,7 +1487,7 @@ at_xdmac_tx_status(struct dma_chan *chan mask = AT_XDMAC_CC_TYPE | AT_XDMAC_CC_DSYNC; value = AT_XDMAC_CC_TYPE_PER_TRAN | AT_XDMAC_CC_DSYNC_PER2MEM; if ((desc->lld.mbr_cfg & mask) == value) { @@ -229,7 +229,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> while (!(at_xdmac_chan_read(atchan, AT_XDMAC_CIS) & AT_XDMAC_CIS_FIS)) cpu_relax(); } -@@ -1494,7 +1544,7 @@ at_xdmac_tx_status(struct dma_chan *chan +@@ -1495,7 +1545,7 @@ at_xdmac_tx_status(struct dma_chan *chan * FIFO flush ensures that data are really written. */ if ((desc->lld.mbr_cfg & mask) == value) { @@ -238,7 +238,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> while (!(at_xdmac_chan_read(atchan, AT_XDMAC_CIS) & AT_XDMAC_CIS_FIS)) cpu_relax(); } -@@ -1762,7 +1812,7 @@ static int at_xdmac_device_pause(struct +@@ -1763,7 +1813,7 @@ static int at_xdmac_device_pause(struct return 0; spin_lock_irqsave(&atchan->lock, flags); @@ -247,7 +247,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> while (at_xdmac_chan_read(atchan, AT_XDMAC_CC) & (AT_XDMAC_CC_WRIP | AT_XDMAC_CC_RDIP)) cpu_relax(); -@@ -1785,7 +1835,7 @@ static int at_xdmac_device_resume(struct +@@ -1786,7 +1836,7 @@ static int at_xdmac_device_resume(struct return 0; } @@ -256,7 +256,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> clear_bit(AT_XDMAC_CHAN_IS_PAUSED, &atchan->status); spin_unlock_irqrestore(&atchan->lock, flags); -@@ -1992,6 +2042,10 @@ static int at_xdmac_probe(struct platfor +@@ -1995,6 +2045,10 @@ static int at_xdmac_probe(struct platfor atxdmac->regs = base; atxdmac->irq = irq; @@ -267,7 +267,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> atxdmac->clk = devm_clk_get(&pdev->dev, "dma_clk"); if (IS_ERR(atxdmac->clk)) { dev_err(&pdev->dev, "can't get dma_clk\n"); -@@ -2134,6 +2188,10 @@ static const struct dev_pm_ops atmel_xdm +@@ -2137,6 +2191,10 @@ static const struct dev_pm_ops atmel_xdm static const struct of_device_id atmel_xdmac_dt_ids[] = { { .compatible = "atmel,sama5d4-dma", diff --git a/target/linux/at91/patches-5.10/134-dmaengine-at_xdmac-add-AXI-priority-support-and-reco.patch b/target/linux/at91/patches-5.10/134-dmaengine-at_xdmac-add-AXI-priority-support-and-reco.patch index 463d03a35e..af0ea2af0d 100644 --- a/target/linux/at91/patches-5.10/134-dmaengine-at_xdmac-add-AXI-priority-support-and-reco.patch +++ b/target/linux/at91/patches-5.10/134-dmaengine-at_xdmac-add-AXI-priority-support-and-reco.patch @@ -55,7 +55,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> }; /* ----- Channels ----- */ -@@ -268,6 +287,7 @@ static const struct at_xdmac_layout at_x +@@ -269,6 +288,7 @@ static const struct at_xdmac_layout at_x .gswf = 0x40, .chan_cc_reg_base = 0x50, .sdif = true, @@ -63,7 +63,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> }; static const struct at_xdmac_layout at_xdmac_sama7g5_layout = { -@@ -280,6 +300,7 @@ static const struct at_xdmac_layout at_x +@@ -281,6 +301,7 @@ static const struct at_xdmac_layout at_x .gswf = 0x50, .chan_cc_reg_base = 0x60, .sdif = false, @@ -71,7 +71,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> }; static inline void __iomem *at_xdmac_chan_reg_base(struct at_xdmac *atxdmac, unsigned int chan_nb) -@@ -2003,6 +2024,30 @@ static int atmel_xdmac_resume(struct dev +@@ -2006,6 +2027,30 @@ static int atmel_xdmac_resume(struct dev } #endif /* CONFIG_PM_SLEEP */ @@ -102,7 +102,7 @@ Signed-off-by: Vinod Koul <vkoul@kernel.org> static int at_xdmac_probe(struct platform_device *pdev) { struct at_xdmac *atxdmac; -@@ -2147,6 +2192,8 @@ static int at_xdmac_probe(struct platfor +@@ -2150,6 +2195,8 @@ static int at_xdmac_probe(struct platfor dev_info(&pdev->dev, "%d channels, mapped at 0x%p\n", nr_channels, atxdmac->regs); diff --git a/target/linux/bcm27xx/patches-5.10/950-0015-firmware-Updated-mailbox-header.patch b/target/linux/bcm27xx/patches-5.10/950-0015-firmware-Updated-mailbox-header.patch index d909c9d150..e1a0757284 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0015-firmware-Updated-mailbox-header.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0015-firmware-Updated-mailbox-header.patch @@ -18,7 +18,7 @@ Subject: [PATCH] firmware: Updated mailbox header struct rpi_firmware; enum rpi_firmware_property_status { -@@ -161,5 +163,6 @@ static inline struct rpi_firmware *rpi_f +@@ -169,5 +171,6 @@ static inline struct rpi_firmware *devm_ return NULL; } #endif diff --git a/target/linux/bcm27xx/patches-5.10/950-0028-mm-Remove-the-PFN-busy-warning.patch b/target/linux/bcm27xx/patches-5.10/950-0028-mm-Remove-the-PFN-busy-warning.patch index e4015d3a85..cd7b0767d3 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0028-mm-Remove-the-PFN-busy-warning.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0028-mm-Remove-the-PFN-busy-warning.patch @@ -14,7 +14,7 @@ Signed-off-by: Eric Anholt <eric@anholt.net> --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -8655,8 +8655,6 @@ int alloc_contig_range(unsigned long sta +@@ -8671,8 +8671,6 @@ int alloc_contig_range(unsigned long sta /* Make sure the range is really isolated. */ if (test_pages_isolated(outer_start, end, 0)) { diff --git a/target/linux/bcm27xx/patches-5.10/950-0053-firmware-bcm2835-Support-ARCH_BCM270x.patch b/target/linux/bcm27xx/patches-5.10/950-0053-firmware-bcm2835-Support-ARCH_BCM270x.patch index 858c508450..ca0d7fe033 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0053-firmware-bcm2835-Support-ARCH_BCM270x.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0053-firmware-bcm2835-Support-ARCH_BCM270x.patch @@ -36,7 +36,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org> static DEFINE_MUTEX(transaction_lock); static void response_callback(struct mbox_client *cl, void *msg) -@@ -273,6 +275,7 @@ static int rpi_firmware_probe(struct pla +@@ -280,6 +282,7 @@ static int rpi_firmware_probe(struct pla kref_init(&fw->consumers); platform_set_drvdata(pdev, fw); @@ -44,7 +44,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org> rpi_firmware_print_firmware_revision(fw); rpi_register_hwmon_driver(dev, fw); -@@ -302,6 +305,8 @@ static int rpi_firmware_remove(struct pl +@@ -309,6 +312,8 @@ static int rpi_firmware_remove(struct pl rpi_firmware_put(fw); @@ -53,7 +53,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org> return 0; } -@@ -315,7 +320,7 @@ static int rpi_firmware_remove(struct pl +@@ -322,7 +327,7 @@ static int rpi_firmware_remove(struct pl */ struct rpi_firmware *rpi_firmware_get(struct device_node *firmware_node) { @@ -62,7 +62,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org> struct rpi_firmware *fw; if (!pdev) -@@ -328,12 +333,9 @@ struct rpi_firmware *rpi_firmware_get(st +@@ -335,12 +340,9 @@ struct rpi_firmware *rpi_firmware_get(st if (!kref_get_unless_zero(&fw->consumers)) goto err_put_device; @@ -75,7 +75,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org> return NULL; } EXPORT_SYMBOL_GPL(rpi_firmware_get); -@@ -353,7 +355,18 @@ static struct platform_driver rpi_firmwa +@@ -382,7 +384,18 @@ static struct platform_driver rpi_firmwa .shutdown = rpi_firmware_shutdown, .remove = rpi_firmware_remove, }; diff --git a/target/linux/bcm27xx/patches-5.10/950-0079-firmware-raspberrypi-Notify-firmware-of-a-reboot.patch b/target/linux/bcm27xx/patches-5.10/950-0079-firmware-raspberrypi-Notify-firmware-of-a-reboot.patch index e45b275c36..77de729a3a 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0079-firmware-raspberrypi-Notify-firmware-of-a-reboot.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0079-firmware-raspberrypi-Notify-firmware-of-a-reboot.patch @@ -48,7 +48,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org> static void rpi_firmware_print_firmware_revision(struct rpi_firmware *fw) { -@@ -357,15 +378,32 @@ static struct platform_driver rpi_firmwa +@@ -386,15 +407,32 @@ static struct platform_driver rpi_firmwa .remove = rpi_firmware_remove, }; diff --git a/target/linux/bcm27xx/patches-5.10/950-0093-firmware-raspberrypi-Report-the-fw-variant-during-pr.patch b/target/linux/bcm27xx/patches-5.10/950-0093-firmware-raspberrypi-Report-the-fw-variant-during-pr.patch index d462a1c814..aab6fa3c9f 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0093-firmware-raspberrypi-Report-the-fw-variant-during-pr.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0093-firmware-raspberrypi-Report-the-fw-variant-during-pr.patch @@ -80,7 +80,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org> } static void -@@ -333,6 +370,7 @@ static int rpi_firmware_probe(struct pla +@@ -340,6 +377,7 @@ static int rpi_firmware_probe(struct pla g_pdev = pdev; rpi_firmware_print_firmware_revision(fw); diff --git a/target/linux/bcm27xx/patches-5.10/950-0183-Initialise-rpi-firmware-before-clk-bcm2835.patch b/target/linux/bcm27xx/patches-5.10/950-0183-Initialise-rpi-firmware-before-clk-bcm2835.patch index cb0719f3bf..c8498158af 100644 --- a/target/linux/bcm27xx/patches-5.10/950-0183-Initialise-rpi-firmware-before-clk-bcm2835.patch +++ b/target/linux/bcm27xx/patches-5.10/950-0183-Initialise-rpi-firmware-before-clk-bcm2835.patch @@ -36,7 +36,7 @@ Co-authored-by: Phil Elwell <phil@raspberrypi.org> MODULE_DESCRIPTION("BCM2835 clock driver"); --- a/drivers/firmware/raspberrypi.c +++ b/drivers/firmware/raspberrypi.c -@@ -469,7 +469,7 @@ out2: +@@ -498,7 +498,7 @@ out2: out1: return ret; } diff --git a/target/linux/generic/backport-5.10/610-v5.13-10-netfilter-nftables-update-table-flags-from-the-commi.patch b/target/linux/generic/backport-5.10/610-v5.13-10-netfilter-nftables-update-table-flags-from-the-commi.patch index 964a94a58a..43d60db186 100644 --- a/target/linux/generic/backport-5.10/610-v5.13-10-netfilter-nftables-update-table-flags-from-the-commi.patch +++ b/target/linux/generic/backport-5.10/610-v5.13-10-netfilter-nftables-update-table-flags-from-the-commi.patch @@ -12,7 +12,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> --- a/include/net/netfilter/nf_tables.h +++ b/include/net/netfilter/nf_tables.h -@@ -1474,13 +1474,16 @@ struct nft_trans_chain { +@@ -1475,13 +1475,16 @@ struct nft_trans_chain { struct nft_trans_table { bool update; @@ -70,7 +70,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> nft_trans_table_update(trans) = true; list_add_tail(&trans->list, &ctx->net->nft.commit_list); return 0; -@@ -7918,11 +7922,10 @@ static int nf_tables_commit(struct net * +@@ -7932,11 +7936,10 @@ static int nf_tables_commit(struct net * switch (trans->msg_type) { case NFT_MSG_NEWTABLE: if (nft_trans_table_update(trans)) { @@ -86,7 +86,7 @@ Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> } else { nft_clear(net, trans->ctx.table); } -@@ -8139,11 +8142,9 @@ static int __nf_tables_abort(struct net +@@ -8153,11 +8156,9 @@ static int __nf_tables_abort(struct net switch (trans->msg_type) { case NFT_MSG_NEWTABLE: if (nft_trans_table_update(trans)) { diff --git a/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch b/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch index 0b5fb19913..e351dba79d 100644 --- a/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch +++ b/target/linux/generic/backport-5.10/732-net-next-1-of-net-pass-the-dst-buffer-to-of_get_mac_address.patch @@ -1283,7 +1283,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net> return PTR_ERR(plat_dat); --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c -@@ -1392,7 +1392,7 @@ static int rk_gmac_probe(struct platform +@@ -1386,7 +1386,7 @@ static int rk_gmac_probe(struct platform if (ret) return ret; diff --git a/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch b/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch index 68350a98d4..21ddfc7a11 100644 --- a/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch +++ b/target/linux/generic/hack-5.10/780-usb-net-MeigLink_modem_support.patch @@ -19,7 +19,7 @@ #define QUECTEL_VENDOR_ID 0x2c7c /* These Quectel products use Quectel's vendor ID */ -@@ -1164,6 +1166,11 @@ static const struct usb_device_id option +@@ -1169,6 +1171,11 @@ static const struct usb_device_id option .driver_info = ZLP }, { USB_DEVICE(QUECTEL_VENDOR_ID, QUECTEL_PRODUCT_BG96), .driver_info = RSVD(4) }, diff --git a/target/linux/generic/pending-5.10/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch b/target/linux/generic/pending-5.10/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch index 1adfd22e87..94b7d7f75b 100644 --- a/target/linux/generic/pending-5.10/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch +++ b/target/linux/generic/pending-5.10/120-Fix-alloc_node_mem_map-with-ARCH_PFN_OFFSET-calcu.patch @@ -71,7 +71,7 @@ Signed-off-by: Tobias Wolf <dev-NTEO@vplace.de> --- a/mm/page_alloc.c +++ b/mm/page_alloc.c -@@ -7107,7 +7107,7 @@ static void __ref alloc_node_mem_map(str +@@ -7123,7 +7123,7 @@ static void __ref alloc_node_mem_map(str if (pgdat == NODE_DATA(0)) { mem_map = NODE_DATA(0)->node_mem_map; if (page_to_pfn(mem_map) != pgdat->node_start_pfn) 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 e9ecd8a8b2..f85fea1cea 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 @@ -30,7 +30,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> #define PACKET_FANOUT_LB 1 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c -@@ -1822,6 +1822,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1823,6 +1823,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 <nbd@nbd.name> /* * When we registered the protocol we saved the socket in the data -@@ -1829,6 +1830,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1830,6 +1831,7 @@ static int packet_rcv_spkt(struct sk_buf */ sk = pt->af_packet_priv; @@ -46,7 +46,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> /* * Yank back the headers [hope the device set this -@@ -1841,7 +1843,7 @@ static int packet_rcv_spkt(struct sk_buf +@@ -1842,7 +1844,7 @@ static int packet_rcv_spkt(struct sk_buf * so that this procedure is noop. */ @@ -55,7 +55,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> goto out; if (!net_eq(dev_net(dev), sock_net(sk))) -@@ -2089,12 +2091,12 @@ static int packet_rcv(struct sk_buff *sk +@@ -2090,12 +2092,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 <nbd@nbd.name> if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -2220,12 +2222,12 @@ static int tpacket_rcv(struct sk_buff *s +@@ -2221,12 +2223,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 <nbd@nbd.name> if (!net_eq(dev_net(dev), sock_net(sk))) goto drop; -@@ -3339,6 +3341,7 @@ static int packet_create(struct net *net +@@ -3342,6 +3344,7 @@ static int packet_create(struct net *net mutex_init(&po->pg_vec_lock); po->rollover = NULL; po->prot_hook.func = packet_rcv; @@ -96,7 +96,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> if (sock->type == SOCK_PACKET) po->prot_hook.func = packet_rcv_spkt; @@ -3982,6 +3985,16 @@ packet_setsockopt(struct socket *sock, i - po->xmit = val ? packet_direct_xmit : dev_queue_xmit; + WRITE_ONCE(po->xmit, val ? packet_direct_xmit : dev_queue_xmit); return 0; } + case PACKET_RECV_TYPE: @@ -128,7 +128,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> break; --- a/net/packet/internal.h +++ b/net/packet/internal.h -@@ -137,6 +137,7 @@ struct packet_sock { +@@ -136,6 +136,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/generic/pending-5.10/768-net-dsa-mv88e6xxx-Request-assisted-learning-on-CPU-port.patch b/target/linux/generic/pending-5.10/768-net-dsa-mv88e6xxx-Request-assisted-learning-on-CPU-port.patch index 7ba86c70b2..f15c59210e 100644 --- a/target/linux/generic/pending-5.10/768-net-dsa-mv88e6xxx-Request-assisted-learning-on-CPU-port.patch +++ b/target/linux/generic/pending-5.10/768-net-dsa-mv88e6xxx-Request-assisted-learning-on-CPU-port.patch @@ -17,7 +17,7 @@ Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c -@@ -5455,6 +5455,7 @@ static int mv88e6xxx_register_switch(str +@@ -5456,6 +5456,7 @@ static int mv88e6xxx_register_switch(str ds->ops = &mv88e6xxx_switch_ops; ds->ageing_time_min = chip->info->age_time_coeff; ds->ageing_time_max = chip->info->age_time_coeff * U8_MAX; 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 b3c8a514e5..f9cb173ff2 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 -@@ -1269,6 +1269,7 @@ static const struct of_device_id qcom_sc +@@ -1268,6 +1268,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/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch b/target/linux/ipq806x/patches-5.10/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch deleted file mode 100644 index 75b53234ab..0000000000 --- a/target/linux/ipq806x/patches-5.10/103-ARM-dts-qcom-reduce-pci-IO-size-to-64K.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 84909e85881d67244240c9f40974ce12a51e3886 Mon Sep 17 00:00:00 2001 -From: Ansuel Smith <ansuelsmth@gmail.com> -Date: Tue, 11 May 2021 23:09:45 +0200 -Subject: [PATCH] ARM: dts: qcom: reduce pci IO size to 64K - -The current value is probably a typo and is actually uncommon to find -1MB IO space even on a x86 arch. Also with recent changes to the pci -driver, pci1 and pci2 now fails to function as any connected device -fails any reg read/write. Reduce this to 64K as it should be more than -enough and 3 * 64K of total IO space doesn't exceed the IO_SPACE_LIMIT -hardcoded for the ARM arch. - -Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com> ---- - arch/arm/boot/dts/qcom-ipq8064.dtsi | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/arch/arm/boot/dts/qcom-ipq8064.dtsi -+++ b/arch/arm/boot/dts/qcom-ipq8064.dtsi -@@ -1163,7 +1163,7 @@ - #address-cells = <3>; - #size-cells = <2>; - -- ranges = <0x81000000 0 0x0fe00000 0x0fe00000 0 0x00100000 /* downstream I/O */ -+ ranges = <0x81000000 0 0x0fe00000 0x0fe00000 0 0x00010000 /* downstream I/O */ - 0x82000000 0 0x08000000 0x08000000 0 0x07e00000>; /* non-prefetchable memory */ - - interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; -@@ -1214,7 +1214,7 @@ - #address-cells = <3>; - #size-cells = <2>; - -- ranges = <0x81000000 0 0x31e00000 0x31e00000 0 0x00100000 /* downstream I/O */ -+ ranges = <0x81000000 0 0x31e00000 0x31e00000 0 0x00010000 /* downstream I/O */ - 0x82000000 0 0x2e000000 0x2e000000 0 0x03e00000>; /* non-prefetchable memory */ - - interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; -@@ -1265,7 +1265,7 @@ - #address-cells = <3>; - #size-cells = <2>; - -- ranges = <0x81000000 0 0x35e00000 0x35e00000 0 0x00100000 /* downstream I/O */ -+ ranges = <0x81000000 0 0x35e00000 0x35e00000 0 0x00010000 /* downstream I/O */ - 0x82000000 0 0x32000000 0x32000000 0 0x03e00000>; /* non-prefetchable memory */ - - interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; diff --git a/target/linux/mediatek/patches-5.10/410-bt-mtk-serial-fix.patch b/target/linux/mediatek/patches-5.10/410-bt-mtk-serial-fix.patch index 7740963b8d..d7bf73d477 100644 --- a/target/linux/mediatek/patches-5.10/410-bt-mtk-serial-fix.patch +++ b/target/linux/mediatek/patches-5.10/410-bt-mtk-serial-fix.patch @@ -10,7 +10,7 @@ #define UART_BUG_TXEN (1 << 1) /* UART has buggy TX IIR status */ --- a/drivers/tty/serial/8250/8250_port.c +++ b/drivers/tty/serial/8250/8250_port.c -@@ -288,7 +288,7 @@ static const struct serial8250_config ua +@@ -289,7 +289,7 @@ static const struct serial8250_config ua .tx_loadsz = 16, .fcr = UART_FCR_ENABLE_FIFO | UART_FCR_CLEAR_RCVR | UART_FCR_CLEAR_XMIT, @@ -19,7 +19,7 @@ }, [PORT_NPCM] = { .name = "Nuvoton 16550", -@@ -2713,6 +2713,11 @@ serial8250_do_set_termios(struct uart_po +@@ -2723,6 +2723,11 @@ serial8250_do_set_termios(struct uart_po unsigned long flags; unsigned int baud, quot, frac = 0; |