linux/arch
Niklas Schnelle da995d538d s390/pci: implement reset_slot for hotplug slot
This is done by adding a zpci_hot_reset_device() call which does a low
level reset of the PCI function without changing its higher level
function state. This way it can be used while the zPCI function is bound
to a driver and with DMA tables being controlled either through the
IOMMU or DMA APIs which is prohibited when using zpci_disable_device()
as that drop existing DMA translations.

As this reset, unlike a normal FLR, also calls zpci_clear_irq() we need
to implement arch_restore_msi_irqs() and make sure we re-enable IRQs for
the PCI function if they were previously disabled.

Reviewed-by: Pierre Morel <pmorel@linux.ibm.com>
Reviewed-by: Matthew Rosato <mjrosato@linux.ibm.com>
Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
2021-11-08 14:17:49 +01:00
..
alpha Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
arc Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
arm Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
arm64 Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
csky Devicetree updates for v5.16: 2021-11-02 22:22:13 -07:00
h8300 Scheduler updates: 2021-11-01 13:48:52 -07:00
hexagon sched: Add wrapper for get_wchan() to keep task blocked 2021-10-15 11:25:14 +02:00
ia64 Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
m68k Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
microblaze pci-v5.16-changes 2021-11-06 14:36:12 -07:00
mips pci-v5.16-changes 2021-11-06 14:36:12 -07:00
nds32 Tracing updates for 5.16: 2021-11-01 20:05:19 -07:00
nios2 Scheduler updates: 2021-11-01 13:48:52 -07:00
openrisc Devicetree updates for v5.16: 2021-11-02 22:22:13 -07:00
parisc parisc: move CPU field back into thread_info 2021-11-04 11:21:47 +01:00
powerpc pci-v5.16-changes 2021-11-06 14:36:12 -07:00
riscv Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
s390 s390/pci: implement reset_slot for hotplug slot 2021-11-08 14:17:49 +01:00
sh Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
sparc pci-v5.16-changes 2021-11-06 14:36:12 -07:00
um Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
x86 s390 updates for the 5.16 merge window 2021-11-06 14:48:06 -07:00
xtensa Core: 2021-11-02 06:20:58 -07:00
.gitignore
Kconfig Tracing updates for 5.16: 2021-11-01 20:05:19 -07:00