[kernel] r7886 - in dists/sid/linux-2.6/debian: . patches/bugfix patches/bugfix/arm patches/series

Martin Michlmayr tbm at alioth.debian.org
Sun Nov 26 16:22:44 UTC 2006


Author: tbm
Date: Sun Nov 26 17:22:43 2006
New Revision: 7886

Added:
   dists/sid/linux-2.6/debian/patches/bugfix/arm/r8169-ignore-parity-n2100.patch
   dists/sid/linux-2.6/debian/patches/bugfix/r8169-ignore-parity.patch
   dists/sid/linux-2.6/debian/patches/series/7
Modified:
   dists/sid/linux-2.6/debian/changelog
Log:
r8169: Ignore parity errors on the Thecus N2100.


Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	(original)
+++ dists/sid/linux-2.6/debian/changelog	Sun Nov 26 17:22:43 2006
@@ -1,8 +1,13 @@
 linux-2.6 (2.6.18-7) UNRELEASED; urgency=low
 
+  [ Bastian Blank ]
   * Emit conflict lines for initramfs generators. (closes: #400305)
   * Update vserver patch to 2.0.2.2-rc8.
 
+  [ Martin Michlmayr ]
+  * r8169: Add an option to ignore parity errors.
+  * r8169: Ignore parity errors on the Thecus N2100.
+
  -- Bastian Blank <waldi at debian.org>  Sun, 26 Nov 2006 10:39:33 +0100
 
 linux-2.6 (2.6.18-6) unstable; urgency=low

Added: dists/sid/linux-2.6/debian/patches/bugfix/arm/r8169-ignore-parity-n2100.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/arm/r8169-ignore-parity-n2100.patch	Sun Nov 26 17:22:43 2006
@@ -0,0 +1,12 @@
+--- a/drivers/net/r8169.c	2006-11-25 21:45:08.377760064 +0100
++++ b/drivers/net/r8169.c	2006-11-25 21:47:30.663129400 +0100
+@@ -2341,6 +2341,9 @@
+ 	 *
+ 	 * Feel free to adjust to your needs.
+ 	 */
++#ifdef CONFIG_MACH_N2100
++ignore_parity_err = 1;
++#endif
+ 	if (ignore_parity_err)
+ 		pci_cmd &= ~PCI_COMMAND_PARITY;
+ 	else

Added: dists/sid/linux-2.6/debian/patches/bugfix/r8169-ignore-parity.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/bugfix/r8169-ignore-parity.patch	Sun Nov 26 17:22:43 2006
@@ -0,0 +1,62 @@
+Francois Romieu <romieu at fr.zoreil.com> :
+[scrouitch]
+
+You can apply the patch below and 'modprobe r8169 ignore_parity_err=1'.
+
+It apparently does the job and it is not much too intrusive.
+
+diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
+index 27f90b2..2b8c057 100644
+--- a/drivers/net/r8169.c
++++ b/drivers/net/r8169.c
+@@ -225,6 +225,7 @@ MODULE_DEVICE_TABLE(pci, rtl8169_pci_tbl
+ 
+ static int rx_copybreak = 200;
+ static int use_dac;
++static int ignore_parity_err;
+ static struct {
+ 	u32 msg_enable;
+ } debug = { -1 };
+@@ -469,6 +470,8 @@ module_param(use_dac, int, 0);
+ MODULE_PARM_DESC(use_dac, "Enable PCI DAC. Unsafe on 32 bit PCI slot.");
+ module_param_named(debug, debug.msg_enable, int, 0);
+ MODULE_PARM_DESC(debug, "Debug verbosity level (0=none, ..., 16=all)");
++module_param_named(ignore_parity_err, ignore_parity_err, bool, 0);
++MODULE_PARM_DESC(ignore_parity_err, "Ignore PCI parity error as target. Default: false");
+ MODULE_LICENSE("GPL");
+ MODULE_VERSION(RTL8169_VERSION);
+ 
+@@ -2332,12 +2335,17 @@ static void rtl8169_pcierr_interrupt(str
+ 	/*
+ 	 * The recovery sequence below admits a very elaborated explanation:
+ 	 * - it seems to work;
+-	 * - I did not see what else could be done.
++	 * - I did not see what else could be done;
++	 * - it makes iop3xx happy.
+ 	 *
+ 	 * Feel free to adjust to your needs.
+ 	 */
+-	pci_write_config_word(pdev, PCI_COMMAND,
+-			      pci_cmd | PCI_COMMAND_SERR | PCI_COMMAND_PARITY);
++	if (ignore_parity_err)
++		pci_cmd &= ~PCI_COMMAND_PARITY;
++	else
++		pci_cmd |= PCI_COMMAND_SERR | PCI_COMMAND_PARITY;
++
++	pci_write_config_word(pdev, PCI_COMMAND, pci_cmd);
+ 
+ 	pci_write_config_word(pdev, PCI_STATUS,
+ 		pci_status & (PCI_STATUS_DETECTED_PARITY |
+@@ -2351,10 +2359,11 @@ static void rtl8169_pcierr_interrupt(str
+ 		tp->cp_cmd &= ~PCIDAC;
+ 		RTL_W16(CPlusCmd, tp->cp_cmd);
+ 		dev->features &= ~NETIF_F_HIGHDMA;
+-		rtl8169_schedule_work(dev, rtl8169_reinit_task);
+ 	}
+ 
+ 	rtl8169_hw_reset(ioaddr);
++
++	rtl8169_schedule_work(dev, rtl8169_reinit_task);
+ }
+ 
+ static void

Added: dists/sid/linux-2.6/debian/patches/series/7
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/series/7	Sun Nov 26 17:22:43 2006
@@ -0,0 +1,2 @@
++ bugfix/r8169-ignore-parity.patch
++ bugfix/arm/r8169-ignore-parity-n2100.patch



More information about the Kernel-svn-changes mailing list