From 23916bca61435ee80236f6aef70a3f0acacd4a93 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Petr=20=C5=A0tetiar?= Date: Fri, 17 Apr 2020 14:29:33 +0200 Subject: [PATCH] kernel: bump 5.4 to 5.4.33 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Refreshed patches, removed upstreamed patches: oxnas: 001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch oxnas: 002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch Run tested: qemu-x86-64, apalis Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Å tetiar --- include/kernel-version.mk | 4 +- ...hci_fixup_endpoint-for-interval-adju.patch | 4 +- .../bcm47xx/patches-5.4/159-cpu_fixes.patch | 4 +- .../810-pci_disable_common_quirks.patch | 6 +- ...ta-Assign-OF-node-to-the-SCSI-device.patch | 4 +- ...d-spi-nor-Add-support-for-mx25r3235f.patch | 2 +- ...r-Gateworks-PLX-PEX860x-switch-with-.patch | 2 +- ...le-fpga-Handle-chained-IRQs-properly.patch | 77 ------------------- ...satile-fpga-Apply-clear-mask-earlier.patch | 56 -------------- .../302-spi-nor-add-gd25q512.patch | 2 +- 10 files changed, 14 insertions(+), 147 deletions(-) delete mode 100644 target/linux/oxnas/patches-5.4/001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch delete mode 100644 target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch diff --git a/include/kernel-version.mk b/include/kernel-version.mk index ea83da09dc..9428345966 100644 --- a/include/kernel-version.mk +++ b/include/kernel-version.mk @@ -8,11 +8,11 @@ endif LINUX_VERSION-4.14 = .176 LINUX_VERSION-4.19 = .115 -LINUX_VERSION-5.4 = .32 +LINUX_VERSION-5.4 = .33 LINUX_KERNEL_HASH-4.14.176 = bcae0956baaeb55dab5bad0401873fbc5baaa7fbe957ea6d27a5ab241cec5ca2 LINUX_KERNEL_HASH-4.19.115 = 11b2d97c8ea5ceb40c5e1d0bb87ad5b2b8c84560181bc60c0d28ec3a3e3801c2 -LINUX_KERNEL_HASH-5.4.32 = 192d99fab7a47a537493b6d7eddb52892b98f8ada655c0bbb419b360a995f2b3 +LINUX_KERNEL_HASH-5.4.33 = b5579621302a6169b389b64dd9ef084df3bb2f11d91dd73273f76e2323223861 remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1)))) sanitize_uri=$(call qstrip,$(subst @,_,$(subst :,_,$(subst .,_,$(subst -,_,$(subst /,_,$(1))))))) diff --git a/target/linux/bcm27xx/patches-5.4/950-0223-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch b/target/linux/bcm27xx/patches-5.4/950-0223-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch index cabf592121..70c5c09a2b 100644 --- a/target/linux/bcm27xx/patches-5.4/950-0223-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch +++ b/target/linux/bcm27xx/patches-5.4/950-0223-xhci-implement-xhci_fixup_endpoint-for-interval-adju.patch @@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell --- a/drivers/usb/host/xhci.c +++ b/drivers/usb/host/xhci.c -@@ -1450,6 +1450,103 @@ command_cleanup: +@@ -1452,6 +1452,103 @@ command_cleanup: } /* @@ -119,7 +119,7 @@ Signed-off-by: Jonathan Bell * non-error returns are a promise to giveback() the urb later * we drop ownership so next owner (or urb unlink) can get it */ -@@ -5325,6 +5422,7 @@ static const struct hc_driver xhci_hc_dr +@@ -5327,6 +5424,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/bcm47xx/patches-5.4/159-cpu_fixes.patch b/target/linux/bcm47xx/patches-5.4/159-cpu_fixes.patch index 2c048071a3..1c98d6b4e4 100644 --- a/target/linux/bcm47xx/patches-5.4/159-cpu_fixes.patch +++ b/target/linux/bcm47xx/patches-5.4/159-cpu_fixes.patch @@ -470,7 +470,7 @@ uasm_i_eret(&p); /* return from trap */ } #ifdef CONFIG_MIPS_HUGE_TLB_SUPPORT -@@ -2049,6 +2058,9 @@ build_r4000_tlbchange_handler_head(u32 * +@@ -2052,6 +2061,9 @@ build_r4000_tlbchange_handler_head(u32 * #ifdef CONFIG_64BIT build_get_pmde64(p, l, r, wr.r1, wr.r2); /* get pmd in ptr */ #else @@ -480,7 +480,7 @@ build_get_pgde32(p, wr.r1, wr.r2); /* get pgd in ptr */ #endif -@@ -2095,6 +2107,9 @@ build_r4000_tlbchange_handler_tail(u32 * +@@ -2098,6 +2110,9 @@ build_r4000_tlbchange_handler_tail(u32 * build_tlb_write_entry(p, l, r, tlb_indexed); uasm_l_leave(l, *p); build_restore_work_registers(p); diff --git a/target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch b/target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch index f4b887d475..ac659c2f9f 100644 --- a/target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch +++ b/target/linux/generic/pending-5.4/810-pci_disable_common_quirks.patch @@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos /* * The Mellanox Tavor device gives false positive parity errors. Mark this * device with a broken_parity_status to allow PCI scanning code to "skip" -@@ -3241,6 +3242,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I +@@ -3307,6 +3308,8 @@ DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_I DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65f9, quirk_intel_mc_errata); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x65fa, quirk_intel_mc_errata); @@ -42,7 +42,7 @@ Signed-off-by: Gabor Juhos /* * Ivytown NTB BAR sizes are misreported by the hardware due to an erratum. * To work around this, query the size it should be configured to by the -@@ -3266,6 +3269,8 @@ static void quirk_intel_ntb(struct pci_d +@@ -3332,6 +3335,8 @@ static void quirk_intel_ntb(struct pci_d DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e08, quirk_intel_ntb); DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, 0x0e0d, quirk_intel_ntb); @@ -51,7 +51,7 @@ Signed-off-by: Gabor Juhos /* * Some BIOS implementations leave the Intel GPU interrupts enabled, even * though no one is handling them (e.g., if the i915 driver is never -@@ -3304,6 +3309,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN +@@ -3370,6 +3375,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x010a, disable_igfx_irq); DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x0152, disable_igfx_irq); diff --git a/target/linux/generic/pending-5.4/820-libata-Assign-OF-node-to-the-SCSI-device.patch b/target/linux/generic/pending-5.4/820-libata-Assign-OF-node-to-the-SCSI-device.patch index 9e72313ec9..e993b61eae 100644 --- a/target/linux/generic/pending-5.4/820-libata-Assign-OF-node-to-the-SCSI-device.patch +++ b/target/linux/generic/pending-5.4/820-libata-Assign-OF-node-to-the-SCSI-device.patch @@ -41,7 +41,7 @@ ChangeLog v1->v2: #include "libata.h" #include "libata-transport.h" -@@ -4573,6 +4574,34 @@ int ata_scsi_add_hosts(struct ata_host * +@@ -4570,6 +4571,34 @@ int ata_scsi_add_hosts(struct ata_host * return rc; } @@ -76,7 +76,7 @@ ChangeLog v1->v2: void ata_scsi_scan_host(struct ata_port *ap, int sync) { int tries = 5; -@@ -4598,6 +4627,7 @@ void ata_scsi_scan_host(struct ata_port +@@ -4595,6 +4624,7 @@ void ata_scsi_scan_host(struct ata_port NULL); if (!IS_ERR(sdev)) { dev->sdev = sdev; diff --git a/target/linux/ipq40xx/patches-5.4/304-mtd-spi-nor-Add-support-for-mx25r3235f.patch b/target/linux/ipq40xx/patches-5.4/304-mtd-spi-nor-Add-support-for-mx25r3235f.patch index ba0447b20e..d97f94c4a0 100644 --- a/target/linux/ipq40xx/patches-5.4/304-mtd-spi-nor-Add-support-for-mx25r3235f.patch +++ b/target/linux/ipq40xx/patches-5.4/304-mtd-spi-nor-Add-support-for-mx25r3235f.patch @@ -15,7 +15,7 @@ Signed-off-by: David Bauer --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -2313,6 +2313,8 @@ static const struct flash_info spi_nor_i +@@ -2318,6 +2318,8 @@ static const struct flash_info spi_nor_i { "mx25u6435f", INFO(0xc22537, 0, 64 * 1024, 128, SECT_4K) }, { "mx25l12805d", INFO(0xc22018, 0, 64 * 1024, 256, 0) }, { "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256, 0) }, diff --git a/target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch b/target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch index 70990a102a..58fb20aabb 100644 --- a/target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch +++ b/target/linux/octeontx/patches-5.4/0004-PCI-add-quirk-for-Gateworks-PLX-PEX860x-switch-with-.patch @@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey #include #include #include -@@ -5431,3 +5432,34 @@ out_disable: +@@ -5497,3 +5498,34 @@ out_disable: DECLARE_PCI_FIXUP_CLASS_FINAL(PCI_VENDOR_ID_NVIDIA, 0x13b1, PCI_CLASS_DISPLAY_VGA, 8, quirk_reset_lenovo_thinkpad_p50_nvgpu); diff --git a/target/linux/oxnas/patches-5.4/001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch b/target/linux/oxnas/patches-5.4/001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch deleted file mode 100644 index f4285aadd0..0000000000 --- a/target/linux/oxnas/patches-5.4/001-irqchip-versatile-fpga-Handle-chained-IRQs-properly.patch +++ /dev/null @@ -1,77 +0,0 @@ -From patchwork Thu Mar 19 02:34:48 2020 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -X-Patchwork-Submitter: Sungbo Eo -X-Patchwork-Id: 11446405 -From: Sungbo Eo -To: Linus Walleij , - Thomas Gleixner , Jason Cooper , - Marc Zyngier , linux-arm-kernel@lists.infradead.org, - linux-kernel@vger.kernel.org, linux-oxnas@groups.io -Subject: [PATCH v2] irqchip/versatile-fpga: Handle chained IRQs properly -Date: Thu, 19 Mar 2020 11:34:48 +0900 -Message-Id: <20200319023448.1479701-1-mans0n@gorani.run> -In-Reply-To: <002b72cab9896fa5ac76a52e0cb503ff@kernel.org> -References: <002b72cab9896fa5ac76a52e0cb503ff@kernel.org> -MIME-Version: 1.0 -List-Id: -Cc: Sungbo Eo , Neil Armstrong -Sender: "linux-arm-kernel" - -Enclose the chained handler with chained_irq_{enter,exit}(), so that the -muxed interrupts get properly acked. - -This patch also fixes a reboot bug on OX820 SoC, where the jiffies timer -interrupt is never acked. The kernel waits a clock tick forever in -calibrate_delay_converge(), which leads to a boot hang. - -Fixes: c41b16f8c9d9 ("ARM: integrator/versatile: consolidate FPGA IRQ handling code") -Signed-off-by: Sungbo Eo -Cc: Neil Armstrong ---- -v2: moved readl below chained_irq_enter() - added Fixes tag - - drivers/irqchip/irq-versatile-fpga.c | 12 ++++++++++-- - 1 file changed, 10 insertions(+), 2 deletions(-) - ---- a/drivers/irqchip/irq-versatile-fpga.c -+++ b/drivers/irqchip/irq-versatile-fpga.c -@@ -6,6 +6,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -68,12 +69,16 @@ static void fpga_irq_unmask(struct irq_d - - static void fpga_irq_handle(struct irq_desc *desc) - { -+ struct irq_chip *chip = irq_desc_get_chip(desc); - struct fpga_irq_data *f = irq_desc_get_handler_data(desc); -- u32 status = readl(f->base + IRQ_STATUS); -+ u32 status; - -+ chained_irq_enter(chip, desc); -+ -+ status = readl(f->base + IRQ_STATUS); - if (status == 0) { - do_bad_IRQ(desc); -- return; -+ goto out; - } - - do { -@@ -82,6 +87,9 @@ static void fpga_irq_handle(struct irq_d - status &= ~(1 << irq); - generic_handle_irq(irq_find_mapping(f->domain, irq)); - } while (status); -+ -+out: -+ chained_irq_exit(chip, desc); - } - - /* diff --git a/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch b/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch deleted file mode 100644 index 7a82b5a7cc..0000000000 --- a/target/linux/oxnas/patches-5.4/002-irqchip-versatile-fpga-Apply-clear-mask-earlier.patch +++ /dev/null @@ -1,56 +0,0 @@ -From patchwork Sat Mar 21 13:38:42 2020 -Content-Type: text/plain; charset="utf-8" -MIME-Version: 1.0 -Content-Transfer-Encoding: 7bit -X-Patchwork-Submitter: Sungbo Eo -X-Patchwork-Id: 11451163 -From: Sungbo Eo -To: linux-oxnas@groups.io, Linus Walleij , - Thomas Gleixner , Jason Cooper , - Marc Zyngier , linux-arm-kernel@lists.infradead.org, - linux-kernel@vger.kernel.org -Subject: [PATCH] irqchip/versatile-fpga: Apply clear-mask earlier -Date: Sat, 21 Mar 2020 22:38:42 +0900 -Message-Id: <20200321133842.2408823-1-mans0n@gorani.run> -MIME-Version: 1.0 -Sender: "linux-arm-kernel" - -Clear its own IRQs before the parent IRQ get enabled, so that the -remaining IRQs do not accidentally interrupt the parent IRQ controller. - -This patch also fixes a reboot bug on OX820 SoC, where the remaining -rps-timer IRQ raises a GIC interrupt that is left pending. After that, -the rps-timer IRQ is cleared during driver initialization, and there's -no IRQ left in rps-irq when local_irq_enable() is called, which evokes -an error message "unexpected IRQ trap". - -Fixes: bdd272cbb97a ("irqchip: versatile FPGA: support cascaded interrupts from DT") -Signed-off-by: Sungbo Eo -Cc: Neil Armstrong -Cc: Daniel Golle ---- - drivers/irqchip/irq-versatile-fpga.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - ---- a/drivers/irqchip/irq-versatile-fpga.c -+++ b/drivers/irqchip/irq-versatile-fpga.c -@@ -212,6 +212,9 @@ int __init fpga_irq_of_init(struct devic - if (of_property_read_u32(node, "valid-mask", &valid_mask)) - valid_mask = 0; - -+ writel(clear_mask, base + IRQ_ENABLE_CLEAR); -+ writel(clear_mask, base + FIQ_ENABLE_CLEAR); -+ - /* Some chips are cascaded from a parent IRQ */ - parent_irq = irq_of_parse_and_map(node, 0); - if (!parent_irq) { -@@ -221,9 +224,6 @@ int __init fpga_irq_of_init(struct devic - - fpga_irq_init(base, node->name, 0, parent_irq, valid_mask, node); - -- writel(clear_mask, base + IRQ_ENABLE_CLEAR); -- writel(clear_mask, base + FIQ_ENABLE_CLEAR); -- - /* - * On Versatile AB/PB, some secondary interrupts have a direct - * pass-thru to the primary controller for IRQs 20 and 22-31 which need diff --git a/target/linux/ramips/patches-5.4/302-spi-nor-add-gd25q512.patch b/target/linux/ramips/patches-5.4/302-spi-nor-add-gd25q512.patch index 52eeb3545b..c92ab5164d 100644 --- a/target/linux/ramips/patches-5.4/302-spi-nor-add-gd25q512.patch +++ b/target/linux/ramips/patches-5.4/302-spi-nor-add-gd25q512.patch @@ -1,6 +1,6 @@ --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c -@@ -2265,6 +2265,11 @@ static const struct flash_info spi_nor_i +@@ -2270,6 +2270,11 @@ static const struct flash_info spi_nor_i SPI_NOR_4B_OPCODES | SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB) .fixups = &gd25q256_fixups, }, -- 2.25.1