summaryrefslogtreecommitdiffstats
path: root/0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch
diff options
context:
space:
mode:
authorThorsten Leemhuis <fedora@leemhuis.info>2020-06-08 21:24:48 +0200
committerThorsten Leemhuis <fedora@leemhuis.info>2020-06-08 21:24:48 +0200
commit38d5c149cae32d286308f7962e1d561e7939072f (patch)
tree25e564ee34a2fe3778379afae39270d1023fe859 /0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch
parentf4c3c7a8ab9226af448d66103dfddf387711af9d (diff)
parent05706a271a8883a9bf1bc091089a315129f3db00 (diff)
downloadkernel-38d5c149cae32d286308f7962e1d561e7939072f.tar.gz
kernel-38d5c149cae32d286308f7962e1d561e7939072f.tar.xz
kernel-38d5c149cae32d286308f7962e1d561e7939072f.zip
Diffstat (limited to '0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch')
-rw-r--r--0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch65
1 files changed, 65 insertions, 0 deletions
diff --git a/0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch b/0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch
new file mode 100644
index 000000000..0af11db2d
--- /dev/null
+++ b/0001-PCI-tegra-Revert-raw_violation_fixup-for-tegra124.patch
@@ -0,0 +1,65 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nicolas Chauvet <kwizart@gmail.com>
+Date: Mon, 20 Apr 2020 18:43:04 +0200
+Subject: [PATCH] PCI: tegra: Revert raw_violation_fixup for tegra124
+
+As reported in https://bugzilla.kernel.org/206217 , raw_violation_fixup
+is causing more harm than good in some common use-cases.
+
+This patch as RFC is a partial revert of the 191cd6fb5 commit:
+ "PCI: tegra: Add SW fixup for RAW violations"
+that was first introduced in 5.3 kernel.
+This fix the following regression since then.
+
+When using both the network NIC and I/O on MMC this can lead to the
+following message on jetson-tk1:
+
+ NETDEV WATCHDOG: enp1s0 (r8169): transmit queue 0 timed out
+
+and
+
+ pcieport 0000:00:02.0: AER: Uncorrected (Non-Fatal) error received: 0000:01:00.0
+ r8169 0000:01:00.0: AER: PCIe Bus Error: severity=Uncorrected (Non-Fatal), type=Transaction Layer, (Requester ID)
+ r8169 0000:01:00.0: AER: device [10ec:8168] error status/mask=00004000/00400000
+ r8169 0000:01:00.0: AER: [14] CmpltTO (First)
+ r8169 0000:01:00.0: AER: can't recover (no error_detected callback)
+ pcieport 0000:00:02.0: AER: device recovery failed
+
+After that, the ethernet NIC isn't functional anymore even after reloading
+the module.
+After a reboot, this is reproducible by copying a large file over the
+ethernet NIC to the MMC.
+For some reasons this cannot be reproduced when the same file is copied
+to a tmpfs.
+
+This patch is RFC because it requires more understanding from Nvidia.
+ - Is the fixup (available in l4t downstrem) still needed for upstream ?
+ - Is there a need to update the fixup values for upstream ?
+ - If the fixup is reverted, does the hw bug can still be seen with
+ upstream ?
+
+Others can also provides more understanding:
+ - Conditions to reproduce the bug (or not)...
+
+Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
+Reviewed-by: Manikanta Maddireddy <mmaddireddy@nvidia.com>
+---
+ drivers/pci/controller/pci-tegra.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/pci/controller/pci-tegra.c b/drivers/pci/controller/pci-tegra.c
+index 235b456698fc..d5a4a167ffa1 100644
+--- a/drivers/pci/controller/pci-tegra.c
++++ b/drivers/pci/controller/pci-tegra.c
+@@ -2470,7 +2470,7 @@ static const struct tegra_pcie_soc tegra124_pcie = {
+ .program_uphy = true,
+ .update_clamp_threshold = true,
+ .program_deskew_time = false,
+- .raw_violation_fixup = true,
++ .raw_violation_fixup = false,
+ .update_fc_timer = false,
+ .has_cache_bars = false,
+ .ectl.enable = false,
+--
+2.26.2
+