ata: ahci: Add shutdown to freeze hardware resources of ahci
authorPrabhakar Kushwaha <pkushwaha@marvell.com>
Sat, 25 Jan 2020 03:37:29 +0000 (03:37 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 28 Feb 2020 15:39:00 +0000 (16:39 +0100)
commit28a73a946a46397b3f2946dbd718ba4c0d6decab
tree7e87ef8b818f6d1a8e639fb3fb7e2912ca739270
parent43cac315bec132e962e04c31fe888caac257ec0a
ata: ahci: Add shutdown to freeze hardware resources of ahci

commit 10a663a1b15134a5a714aa515e11425a44d4fdf7 upstream.

device_shutdown() called from reboot or power_shutdown expect
all devices to be shutdown. Same is true for even ahci pci driver.
As no ahci shutdown function is implemented, the ata subsystem
always remains alive with DMA & interrupt support. File system
related calls should not be honored after device_shutdown().

So defining ahci pci driver shutdown to freeze hardware (mask
interrupt, stop DMA engine and free DMA resources).

Signed-off-by: Prabhakar Kushwaha <pkushwaha@marvell.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/ata/ahci.c
drivers/ata/libata-core.c
include/linux/libata.h