linux/arch/powerpc
Gavin Shan 5cfb20b96f powerpc/eeh: Emulate EEH recovery for VFIO devices
When enabling EEH functionality on passed through devices (PE)
with VFIO, the devices in the PE would be removed permanently
from guest side. In that case, the PE remains frozen state.
When returning PE to host, or restarting the guest again, we
had mechanism unfreezing the PE by clearing PESTA/B frozen
bits. However, that's not enough for some adapters, which are
indicated as following "lspci" shows. Those adapters require
hot reset on the parent bus to bring their firmware back to
workable state. Otherwise, those adaptrs won't be operative
and the host (for returning case) or the guest will fail to
load the drivers for those adapters without exception.

0000:01:00.0 Ethernet controller: Emulex Corporation OneConnect \
             10Gb NIC (be3) (rev 02)
0000:01:00.0 0200: 19a2:0710 (rev 02)
0001:03:00.0 Ethernet controller: Emulex Corporation OneConnect \
             NIC (Lancer) (rev 10)
0001:03:00.0 0200: 10df:e220 (rev 10)

The patch adds mechanism to emulate EEH recovery (for hot reset
on parent PCI bus) on 3 gates to fix the issue: open/release one
adapter of the PE, enable EEH functionality on one adapter of the
PE.

Reported-by:  Murilo Fossa Vicentini <muvic@br.ibm.com>
Signed-off-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2014-09-30 17:15:18 +10:00
..
boot powerpc/boot: Don't install zImage.* from make install 2014-09-25 23:14:34 +10:00
configs powerpc: Make CONFIG_FHANDLE=y for all 64 bit powerpc defconfigs 2014-09-09 19:02:46 +10:00
crypto powerpc: Fix compile of sha1-powerpc-asm.S on 32-bit 2013-03-05 16:56:26 +11:00
include powerpc/eeh: Emulate EEH recovery for VFIO devices 2014-09-30 17:15:18 +10:00
kernel powerpc/eeh: Emulate EEH recovery for VFIO devices 2014-09-30 17:15:18 +10:00
kvm powerpc/kvm/cma: Fix panic introduces by signed shift operation 2014-09-03 10:34:07 +02:00
lib powerpc: Implement emulation of string loads and stores 2014-09-25 23:14:52 +10:00
math-emu powerpc: Correct emulated mtfsf instruction 2014-04-07 10:33:11 +10:00
mm powerpc/mm: Unindent htab_dt_scan_page_sizes() 2014-09-25 23:14:56 +10:00
net net: filter: split 'struct sk_filter' into socket and bpf parts 2014-08-02 15:03:58 -07:00
oprofile powerpc: Ensure global functions include their prototype 2014-09-25 23:14:42 +10:00
perf powerpc: Make a bunch of things static 2014-09-25 23:14:41 +10:00
platforms powerpc/powernv: Sync OpalPciResetScope with firmware 2014-09-30 17:15:17 +10:00
sysdev powerpc/powernv: Don't call generic code on offline cpus 2014-09-25 23:14:50 +10:00
xmon powerpc: Hard disable interrupts in xmon 2014-08-13 15:13:48 +10:00
Kconfig powerpc: Enable DCACHE_WORD_ACCESS on ppc64le 2014-09-30 14:59:13 +10:00
Kconfig.debug Patch queue for ppc - 2014-08-01 2014-08-05 09:58:11 +02:00
Makefile powerpc: Add POWER8 CPU selection 2014-09-25 23:14:49 +10:00
relocs_check.pl Fix warning typo "CONFIG_RELCOATABLE" 2013-05-29 15:11:30 +02:00