cciss: PCI power management reset for kexec
authorChip Coldwell <coldwell@redhat.com>
Mon, 16 Feb 2009 12:11:56 +0000 (13:11 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Wed, 18 Feb 2009 09:32:01 +0000 (10:32 +0100)
commit82eb03cfd862a65363fa2826de0dbd5474cfe5e2
treee92ab2b93e73d01395cbf88648a8e7ebc841a17b
parentc8cbec6bdf6329279fd14696020f6b59d1d3124d
cciss: PCI power management reset for kexec

The kexec kernel resets the CCISS hardware in three steps:

1. Use PCI power management states to reset the controller in the
   kexec kernel.

2. Clear the MSI/MSI-X bits in PCI configuration space so that MSI
   initialization in the kexec kernel doesn't fail.

3. Use the CCISS "No-op" message to determine when the controller
   firmware has recovered from the PCI PM reset.

[akpm@linux-foundation.org: cleanups]
Signed-off-by: Mike Miller <mike.miller@hp.com>
Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
drivers/block/cciss.c