Revision f5f2b13129a6541debf8851bae843cbbf48298b7 authored by Eric W. Biederman on 05 March 2007, 08:30:07 UTC, committed by Linus Torvalds on 05 March 2007, 15:57:50 UTC
In some cases when we are not using msi we need a way to ensure that the
hardware does not have an msi capability enabled.  Currently the code has been
calling disable_msi_mode to try and achieve that.  However disable_msi_mode
has several other side effects and is only available when msi support is
compiled in so it isn't really appropriate.

Instead this patch implements pci_msi_off which disables all msi and msix
capabilities unconditionally with no additional side effects.

pci_disable_device was redundantly clearing the bus master enable flag and
clearing the msi enable bit.  A device that is not allowed to perform bus
mastering operations cannot generate intx or msi interrupt messages as those
are essentially a special case of dma, and require bus mastering.  So the call
in pci_disable_device to disable msi capabilities was redundant.

quirk_pcie_pxh also called disable_msi_mode and is updated to use pci_msi_off.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Cc: Michael Ellerman <michael@ellerman.id.au>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 58a53b2
History
File Mode Size
Makefile -rw-r--r-- 282 bytes
compat.c -rw-r--r-- 16.9 KB
compat_mq.c -rw-r--r-- 4.0 KB
ipc_sysctl.c -rw-r--r-- 4.1 KB
mqueue.c -rw-r--r-- 29.8 KB
msg.c -rw-r--r-- 20.5 KB
msgutil.c -rw-r--r-- 2.3 KB
sem.c -rw-r--r-- 34.6 KB
shm.c -rw-r--r-- 25.7 KB
util.c -rw-r--r-- 19.7 KB
util.h -rw-r--r-- 3.3 KB

back to top