diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2021-06-26 21:08:19 +0200 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2021-06-27 00:58:50 +0200 |
commit | 85cef1cf221a4786fb8b1531748a5a0790101a3a (patch) | |
tree | e3be71d7aa9f4dac3d72a6fa7aef5b265ca82a80 /target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch | |
parent | e171d11f55e335416d2ee689604998698f517e00 (diff) | |
download | upstream-85cef1cf221a4786fb8b1531748a5a0790101a3a.tar.gz upstream-85cef1cf221a4786fb8b1531748a5a0790101a3a.tar.bz2 upstream-85cef1cf221a4786fb8b1531748a5a0790101a3a.zip |
kernel: bump 5.4 to 5.4.128
Manually rebased
bcm27xx/patches-5.4/950-0089-cgroup-Disable-cgroup-memory-by-default.patch
Replaced with patch from Raspberry Pi kernel 5.10 patches
mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch
Applied upstream
All others updated automatically.
Compile-tested on: ath79/generic, lantiq/xrx200, brcm27xx
Runtime-tested on: ath79/generic, lantiq/xrx200
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch')
-rw-r--r-- | target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch b/target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch deleted file mode 100644 index db4afd22a2..0000000000 --- a/target/linux/mvebu/patches-5.4/002-PCI-aardvark-Don-t-rely-on-jiffies-while-holding-spi.patch +++ /dev/null @@ -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"); |