nvme: Do a clean NVMe shutdown
authorHector Martin <marcan@marcan.st>
Sun, 31 Jul 2022 06:31:31 +0000 (15:31 +0900)
committerTom Rini <trini@konsulko.com>
Fri, 26 Aug 2022 19:00:05 +0000 (15:00 -0400)
commite9ac3a939d4f11e9cdcdcb2bad090f4cb1929a85
tree3e3f9ca106fbbb370da86642ecc1df0a7f6fe968
parentd9f554b62440de542c482fecf9374e8da3ea3602
nvme: Do a clean NVMe shutdown

The brute-force controller disable method can end up racing controller
initialization and causing a crash when we shut down Apple ANS2 NVMe
controllers. Do a proper controlled shutdown, which does block until
things are quiesced properly. This is nicer in general for all
controllers.

Signed-off-by: Hector Martin <marcan@marcan.st>
Tested-by: Mark Kettenis <kettenis@openbsd.org> (firefly-rk3399)
drivers/nvme/nvme.c