diff options
Diffstat (limited to 'recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0052-jsm-Fixed-EEH-recovery-error.patch')
-rw-r--r-- | recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0052-jsm-Fixed-EEH-recovery-error.patch | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0052-jsm-Fixed-EEH-recovery-error.patch b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0052-jsm-Fixed-EEH-recovery-error.patch new file mode 100644 index 00000000..4836cc1b --- /dev/null +++ b/recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.3/0052-jsm-Fixed-EEH-recovery-error.patch | |||
@@ -0,0 +1,53 @@ | |||
1 | From a4bb82f827dd715b666d2cdf9cae6643da638974 Mon Sep 17 00:00:00 2001 | ||
2 | From: Lucas Kannebley Tavares <lucaskt@linux.vnet.ibm.com> | ||
3 | Date: Mon, 9 Jan 2012 10:58:06 -0200 | ||
4 | Subject: [PATCH 52/90] jsm: Fixed EEH recovery error | ||
5 | |||
6 | commit 26aa38cafae0dbef3b2fe75ea487c83313c36d45 upstream. | ||
7 | |||
8 | There was an error on the jsm driver that would cause it to be unable to | ||
9 | recover after a second error is detected. | ||
10 | |||
11 | At the first error, the device recovers properly: | ||
12 | |||
13 | [72521.485691] EEH: Detected PCI bus error on device 0003:02:00.0 | ||
14 | [72521.485695] EEH: This PCI device has failed 1 times in the last hour: | ||
15 | ... | ||
16 | [72532.035693] ttyn3 at MMIO 0x0 (irq = 49) is a jsm | ||
17 | [72532.105689] jsm: Port 3 added | ||
18 | |||
19 | However, at the second error, it cascades until EEH disables the device: | ||
20 | |||
21 | [72631.229549] Call Trace: | ||
22 | ... | ||
23 | [72641.725687] jsm: Port 3 added | ||
24 | [72641.725695] EEH: Detected PCI bus error on device 0003:02:00.0 | ||
25 | [72641.725698] EEH: This PCI device has failed 3 times in the last hour: | ||
26 | |||
27 | It was caused because the PCI state was not being saved after the first | ||
28 | restore. Therefore, at the second recovery the PCI state would not be | ||
29 | restored. | ||
30 | |||
31 | Signed-off-by: Lucas Kannebley Tavares <lucaskt@linux.vnet.ibm.com> | ||
32 | Signed-off-by: Breno Leitao <brenohl@br.ibm.com> | ||
33 | Acked-by: Thadeu Lima de Souza Cascardo <cascardo@linux.vnet.ibm.com> | ||
34 | Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> | ||
35 | --- | ||
36 | drivers/tty/serial/jsm/jsm_driver.c | 1 + | ||
37 | 1 files changed, 1 insertions(+), 0 deletions(-) | ||
38 | |||
39 | diff --git a/drivers/tty/serial/jsm/jsm_driver.c b/drivers/tty/serial/jsm/jsm_driver.c | ||
40 | index 7c867a0..7545fe1 100644 | ||
41 | --- a/drivers/tty/serial/jsm/jsm_driver.c | ||
42 | +++ b/drivers/tty/serial/jsm/jsm_driver.c | ||
43 | @@ -251,6 +251,7 @@ static void jsm_io_resume(struct pci_dev *pdev) | ||
44 | struct jsm_board *brd = pci_get_drvdata(pdev); | ||
45 | |||
46 | pci_restore_state(pdev); | ||
47 | + pci_save_state(pdev); | ||
48 | |||
49 | jsm_uart_port_init(brd); | ||
50 | } | ||
51 | -- | ||
52 | 1.7.7.4 | ||
53 | |||