mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-19 05:38:00 +00:00
kernel: bump 5.4 to 5.4.128
Removed upstreamed: mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch All other patches automatically rebased. Build system: x86_64 Build-tested: ipq806x/R7800 Run-tested: ipq806x/R7800 No dmesg regressions, everything functional Signed-off-by: John Audia <graysky@archlinux.us>
This commit is contained in:
parent
7ddee03808
commit
e6bb0b6ad9
@ -6,10 +6,10 @@ ifdef CONFIG_TESTING_KERNEL
|
||||
KERNEL_PATCHVER:=$(KERNEL_TESTING_PATCHVER)
|
||||
endif
|
||||
|
||||
LINUX_VERSION-5.4 = .127
|
||||
LINUX_VERSION-5.4 = .128
|
||||
LINUX_VERSION-5.10 = .46
|
||||
|
||||
LINUX_KERNEL_HASH-5.4.127 = a0bd9b5adee29b5ea77e77fc637c87dba7918e529031ecd2a55af5ea434f28bf
|
||||
LINUX_KERNEL_HASH-5.4.128 = 3b54aebb816b9e628cb9ba3055a6aca58ce0ddeec49366c0da86ced9a7be39ab
|
||||
LINUX_KERNEL_HASH-5.10.46 = 569122a39c6b325befb9ac1c07da0c53e6363b3baacd82081d131b06c1dc1415
|
||||
|
||||
remove_uri_prefix=$(subst git://,,$(subst http://,,$(subst https://,,$(1))))
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Noralf Trønnes <noralf@tronnes.org>
|
||||
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -133,7 +133,7 @@ config COH901318
|
||||
@@ -134,7 +134,7 @@ config COH901318
|
||||
|
||||
config DMA_BCM2835
|
||||
tristate "BCM2835 DMA engine support"
|
||||
|
@ -1040,7 +1040,7 @@ Signed-off-by: Jonathan Bell <jonathan@raspberrypi.org>
|
||||
}
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -5319,7 +5319,7 @@ static void port_event(struct usb_hub *h
|
||||
@@ -5321,7 +5321,7 @@ static void port_event(struct usb_hub *h
|
||||
port_dev->over_current_count++;
|
||||
port_over_current_notify(port_dev);
|
||||
|
||||
|
@ -178,7 +178,7 @@ Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
|
||||
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -133,7 +133,7 @@ config COH901318
|
||||
@@ -134,7 +134,7 @@ config COH901318
|
||||
|
||||
config DMA_BCM2835
|
||||
tristate "BCM2835 DMA engine support"
|
||||
@ -187,7 +187,7 @@ Signed-off-by: Andrei Gherzan <andrei@gherzan.com>
|
||||
select DMA_ENGINE
|
||||
select DMA_VIRTUAL_CHANNELS
|
||||
|
||||
@@ -608,6 +608,10 @@ config UNIPHIER_MDMAC
|
||||
@@ -609,6 +609,10 @@ config UNIPHIER_MDMAC
|
||||
UniPhier platform. This DMA controller is used as the external
|
||||
DMA engine of the SD/eMMC controllers of the LD4, Pro4, sLD8 SoCs.
|
||||
|
||||
|
@ -82,7 +82,7 @@ Cc: linux-rockchip@lists.infradead.org
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -1018,7 +1018,8 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1049,7 +1049,8 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -32,7 +32,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
s32 tin_deficit;
|
||||
u32 tin_backlog;
|
||||
u32 tin_dropped;
|
||||
@@ -1943,7 +1942,7 @@ begin:
|
||||
@@ -1947,7 +1946,7 @@ begin:
|
||||
while (b->tin_deficit < 0 ||
|
||||
!(b->sparse_flow_count + b->bulk_flow_count)) {
|
||||
if (b->tin_deficit <= 0)
|
||||
@ -41,7 +41,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
if (b->sparse_flow_count + b->bulk_flow_count)
|
||||
empty = false;
|
||||
|
||||
@@ -2265,8 +2264,7 @@ static int cake_config_besteffort(struct
|
||||
@@ -2269,8 +2268,7 @@ static int cake_config_besteffort(struct
|
||||
|
||||
cake_set_rate(b, rate, mtu,
|
||||
us_to_ns(q->target), us_to_ns(q->interval));
|
||||
@ -51,7 +51,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -2277,8 +2275,7 @@ static int cake_config_precedence(struct
|
||||
@@ -2281,8 +2279,7 @@ static int cake_config_precedence(struct
|
||||
struct cake_sched_data *q = qdisc_priv(sch);
|
||||
u32 mtu = psched_mtu(qdisc_dev(sch));
|
||||
u64 rate = q->rate_bps;
|
||||
@ -61,7 +61,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
u32 i;
|
||||
|
||||
q->tin_cnt = 8;
|
||||
@@ -2291,18 +2288,14 @@ static int cake_config_precedence(struct
|
||||
@@ -2295,18 +2292,14 @@ static int cake_config_precedence(struct
|
||||
cake_set_rate(b, rate, mtu, us_to_ns(q->target),
|
||||
us_to_ns(q->interval));
|
||||
|
||||
@ -83,7 +83,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -2371,8 +2364,7 @@ static int cake_config_diffserv8(struct
|
||||
@@ -2375,8 +2368,7 @@ static int cake_config_diffserv8(struct
|
||||
struct cake_sched_data *q = qdisc_priv(sch);
|
||||
u32 mtu = psched_mtu(qdisc_dev(sch));
|
||||
u64 rate = q->rate_bps;
|
||||
@ -93,7 +93,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
u32 i;
|
||||
|
||||
q->tin_cnt = 8;
|
||||
@@ -2388,18 +2380,14 @@ static int cake_config_diffserv8(struct
|
||||
@@ -2392,18 +2384,14 @@ static int cake_config_diffserv8(struct
|
||||
cake_set_rate(b, rate, mtu, us_to_ns(q->target),
|
||||
us_to_ns(q->interval));
|
||||
|
||||
@ -115,7 +115,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
}
|
||||
|
||||
return 0;
|
||||
@@ -2438,17 +2426,11 @@ static int cake_config_diffserv4(struct
|
||||
@@ -2442,17 +2430,11 @@ static int cake_config_diffserv4(struct
|
||||
cake_set_rate(&q->tins[3], rate >> 2, mtu,
|
||||
us_to_ns(q->target), us_to_ns(q->interval));
|
||||
|
||||
@ -137,7 +137,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -2479,15 +2461,10 @@ static int cake_config_diffserv3(struct
|
||||
@@ -2483,15 +2465,10 @@ static int cake_config_diffserv3(struct
|
||||
cake_set_rate(&q->tins[2], rate >> 2, mtu,
|
||||
us_to_ns(q->target), us_to_ns(q->interval));
|
||||
|
||||
|
@ -38,7 +38,7 @@ Signed-off-by: Peng Ma <peng.ma@nxp.com>
|
||||
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -669,6 +669,8 @@ source "drivers/dma/sh/Kconfig"
|
||||
@@ -670,6 +670,8 @@ source "drivers/dma/sh/Kconfig"
|
||||
|
||||
source "drivers/dma/ti/Kconfig"
|
||||
|
||||
|
@ -85,7 +85,7 @@ Signed-off-by: Robin Gong <yibin.gong@nxp.com>
|
||||
+};
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -227,6 +227,17 @@ config FSL_QDMA
|
||||
@@ -228,6 +228,17 @@ config FSL_QDMA
|
||||
or dequeuing DMA jobs from, different work queues.
|
||||
This module can be found on NXP Layerscape SoCs.
|
||||
The qdma driver only work on SoCs with a DPAA hardware block.
|
||||
|
@ -28,7 +28,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
|
||||
--- a/drivers/dma/Kconfig
|
||||
+++ b/drivers/dma/Kconfig
|
||||
@@ -131,6 +131,24 @@ config COH901318
|
||||
@@ -132,6 +132,24 @@ config COH901318
|
||||
help
|
||||
Enable support for ST-Ericsson COH 901 318 DMA.
|
||||
|
||||
@ -53,7 +53,7 @@ Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
|
||||
config DMA_BCM2835
|
||||
tristate "BCM2835 DMA engine support"
|
||||
depends on ARCH_BCM2835
|
||||
@@ -662,7 +680,6 @@ config ZX_DMA
|
||||
@@ -663,7 +681,6 @@ config ZX_DMA
|
||||
help
|
||||
Support the DMA engine for ZTE ZX family platform devices.
|
||||
|
||||
|
@ -54,7 +54,7 @@ Signed-off-by: Peter Chen <peter.chen@nxp.com>
|
||||
* All 3.1 IP version constants are greater than the 3.0 IP
|
||||
--- a/drivers/usb/dwc3/gadget.c
|
||||
+++ b/drivers/usb/dwc3/gadget.c
|
||||
@@ -3575,6 +3575,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
||||
@@ -3578,6 +3578,10 @@ int dwc3_gadget_init(struct dwc3 *dwc)
|
||||
dwc->gadget.sg_supported = true;
|
||||
dwc->gadget.name = "dwc3-gadget";
|
||||
dwc->gadget.lpm_capable = true;
|
||||
|
@ -20,7 +20,7 @@ Signed-off-by: Li Jun <jun.li@freescale.com>
|
||||
|
||||
--- a/drivers/usb/core/hub.c
|
||||
+++ b/drivers/usb/core/hub.c
|
||||
@@ -4729,7 +4729,8 @@ hub_port_init(struct usb_hub *hub, struc
|
||||
@@ -4731,7 +4731,8 @@ hub_port_init(struct usb_hub *hub, struc
|
||||
}
|
||||
if (r) {
|
||||
if (r != -ENODEV)
|
||||
|
@ -33,7 +33,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -337,6 +337,14 @@ static void advk_pcie_setup_hw(struct ad
|
||||
@@ -338,6 +338,14 @@ static void advk_pcie_setup_hw(struct ad
|
||||
reg |= PIO_CTRL_ADDR_WIN_DISABLE;
|
||||
advk_writel(pcie, reg, PIO_CTRL);
|
||||
|
||||
|
@ -1,54 +0,0 @@
|
||||
From 7fbcb5da811be7d47468417c7795405058abb3da Mon Sep 17 00:00:00 2001
|
||||
From: Remi Pommarel <repk@triplefau.lt>
|
||||
Date: Fri, 27 Sep 2019 10:55:02 +0200
|
||||
Subject: [PATCH] PCI: aardvark: Don't rely on jiffies while holding spinlock
|
||||
|
||||
advk_pcie_wait_pio() can be called while holding a spinlock (from
|
||||
pci_bus_read_config_dword()), then depends on jiffies in order to
|
||||
timeout while polling on PIO state registers. In the case the PIO
|
||||
transaction failed, the timeout will never happen and will also cause
|
||||
the cpu to stall.
|
||||
|
||||
This decrements a variable and wait instead of using jiffies.
|
||||
|
||||
Signed-off-by: Remi Pommarel <repk@triplefau.lt>
|
||||
Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
|
||||
Reviewed-by: Andrew Murray <andrew.murray@arm.com>
|
||||
Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
drivers/pci/controller/pci-aardvark.c | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -175,7 +175,8 @@
|
||||
(PCIE_CONF_BUS(bus) | PCIE_CONF_DEV(PCI_SLOT(devfn)) | \
|
||||
PCIE_CONF_FUNC(PCI_FUNC(devfn)) | PCIE_CONF_REG(where))
|
||||
|
||||
-#define PIO_TIMEOUT_MS 1
|
||||
+#define PIO_RETRY_CNT 500
|
||||
+#define PIO_RETRY_DELAY 2 /* 2 us*/
|
||||
|
||||
#define LINK_WAIT_MAX_RETRIES 10
|
||||
#define LINK_WAIT_USLEEP_MIN 90000
|
||||
@@ -400,17 +401,16 @@ static void advk_pcie_check_pio_status(s
|
||||
static int advk_pcie_wait_pio(struct advk_pcie *pcie)
|
||||
{
|
||||
struct device *dev = &pcie->pdev->dev;
|
||||
- unsigned long timeout;
|
||||
+ int i;
|
||||
|
||||
- timeout = jiffies + msecs_to_jiffies(PIO_TIMEOUT_MS);
|
||||
-
|
||||
- while (time_before(jiffies, timeout)) {
|
||||
+ for (i = 0; i < PIO_RETRY_CNT; i++) {
|
||||
u32 start, isr;
|
||||
|
||||
start = advk_readl(pcie, PIO_START);
|
||||
isr = advk_readl(pcie, PIO_ISR);
|
||||
if (!start && isr)
|
||||
return 0;
|
||||
+ udelay(PIO_RETRY_DELAY);
|
||||
}
|
||||
|
||||
dev_err(dev, "config read/write timed out\n");
|
@ -193,7 +193,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
|
||||
reg = advk_readl(pcie, PCIE_CORE_CMD_STATUS_REG);
|
||||
reg |= PCIE_CORE_CMD_MEM_ACCESS_EN |
|
||||
@@ -1035,6 +1093,12 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1066,6 +1124,12 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -98,7 +98,7 @@ Acked-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
* fundamental reset. As required by PCI Express spec a delay for at
|
||||
* least 100ms after such a reset before link training is needed.
|
||||
*/
|
||||
@@ -1093,6 +1118,22 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1124,6 +1149,22 @@ static int advk_pcie_probe(struct platfo
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -76,7 +76,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
/* Set to Direct mode */
|
||||
reg = advk_readl(pcie, CTRL_CONFIG_REG);
|
||||
reg &= ~(CTRL_MODE_MASK << CTRL_MODE_SHIFT);
|
||||
@@ -1083,6 +1092,62 @@ out_release_res:
|
||||
@@ -1114,6 +1123,62 @@ out_release_res:
|
||||
return err;
|
||||
}
|
||||
|
||||
@ -139,7 +139,7 @@ Cc: Miquèl Raynal <miquel.raynal@bootlin.com>
|
||||
static int advk_pcie_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -1140,6 +1205,10 @@ static int advk_pcie_probe(struct platfo
|
||||
@@ -1171,6 +1236,10 @@ static int advk_pcie_probe(struct platfo
|
||||
else
|
||||
pcie->link_gen = ret;
|
||||
|
||||
|
@ -31,7 +31,7 @@ Cc: <stable@vger.kernel.org> # 5.8+: ea17a0f153af: phy: marvell: comphy: Convert
|
||||
|
||||
--- a/drivers/pci/controller/pci-aardvark.c
|
||||
+++ b/drivers/pci/controller/pci-aardvark.c
|
||||
@@ -1123,7 +1123,9 @@ static int advk_pcie_enable_phy(struct a
|
||||
@@ -1154,7 +1154,9 @@ static int advk_pcie_enable_phy(struct a
|
||||
}
|
||||
|
||||
ret = phy_power_on(pcie->phy);
|
||||
|
@ -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>
|
||||
@@ -5625,3 +5626,34 @@ static void apex_pci_fixup_class(struct
|
||||
@@ -5714,3 +5715,34 @@ static void apex_pci_fixup_class(struct
|
||||
}
|
||||
DECLARE_PCI_FIXUP_CLASS_HEADER(0x1ac1, 0x089a,
|
||||
PCI_CLASS_NOT_DEFINED, 8, apex_pci_fixup_class);
|
||||
|
Loading…
Reference in New Issue
Block a user