mirror of
https://github.com/hanwckf/immortalwrt-mt798x.git
synced 2025-01-09 02:43:53 +08:00
Merge Official Source
This commit is contained in:
commit
f57d454082
@ -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)))))))
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
|
||||
--- 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 <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
|
||||
*/
|
||||
@@ -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,
|
||||
|
@ -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);
|
||||
|
@ -33,7 +33,7 @@ Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
|
||||
/*
|
||||
* 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 <juhosg@openwrt.org>
|
||||
/*
|
||||
* 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 <juhosg@openwrt.org>
|
||||
/*
|
||||
* 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);
|
||||
|
||||
|
@ -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;
|
||||
|
@ -15,7 +15,7 @@ Signed-off-by: David Bauer <mail@david-bauer.net>
|
||||
|
||||
--- 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) },
|
||||
|
@ -22,7 +22,7 @@ Signed-off-by: Tim Harvey <tharvey@gateworks.com>
|
||||
#include <linux/platform_data/x86/apple.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/switchtec.h>
|
||||
@@ -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);
|
||||
|
@ -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 <mans0n@gorani.run>
|
||||
X-Patchwork-Id: 11446405
|
||||
From: Sungbo Eo <mans0n@gorani.run>
|
||||
To: Linus Walleij <linus.walleij@linaro.org>,
|
||||
Thomas Gleixner <tglx@linutronix.de>, Jason Cooper <jason@lakedaemon.net>,
|
||||
Marc Zyngier <maz@kernel.org>, 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: <linux-arm-kernel.lists.infradead.org>
|
||||
Cc: Sungbo Eo <mans0n@gorani.run>, Neil Armstrong <narmstrong@baylibre.com>
|
||||
Sender: "linux-arm-kernel" <linux-arm-kernel-bounces@lists.infradead.org>
|
||||
|
||||
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 <mans0n@gorani.run>
|
||||
Cc: Neil Armstrong <narmstrong@baylibre.com>
|
||||
---
|
||||
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 <linux/irq.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/irqchip.h>
|
||||
+#include <linux/irqchip/chained_irq.h>
|
||||
#include <linux/irqchip/versatile-fpga.h>
|
||||
#include <linux/irqdomain.h>
|
||||
#include <linux/module.h>
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
/*
|
@ -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 <mans0n@gorani.run>
|
||||
X-Patchwork-Id: 11451163
|
||||
From: Sungbo Eo <mans0n@gorani.run>
|
||||
To: linux-oxnas@groups.io, Linus Walleij <linus.walleij@linaro.org>,
|
||||
Thomas Gleixner <tglx@linutronix.de>, Jason Cooper <jason@lakedaemon.net>,
|
||||
Marc Zyngier <maz@kernel.org>, 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" <linux-arm-kernel-bounces@lists.infradead.org>
|
||||
|
||||
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 <mans0n@gorani.run>
|
||||
Cc: Neil Armstrong <narmstrong@baylibre.com>
|
||||
Cc: Daniel Golle <daniel@makrotopia.org>
|
||||
---
|
||||
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
|
@ -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,
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user