mtd: cfi_cmdset_0001: silence spurious suspend warning on shutdown

cfi_intelext_reboot() puts each chip into FL_SHUTDOWN (array mode) via
the reboot notifier so the bootloader can read the flash on the next
boot. If pm_suspend then runs on the same chip during the shutdown
sequence, cfi_intelext_suspend() falls into the default branch and
prints:

  Flash device refused suspend due to active operation (state 20)

The chip is not active; it is already shut down. Treat FL_SHUTDOWN the
same as FL_PM_SUSPENDED in the suspend switch so nothing is done and
no warning is emitted.

Reproduced on every boot of the QEMU 'virt' arm64 machine, which
exposes two Intel-Sharp pflash chips.

Signed-off-by: Breno Leitao <leitao@debian.org>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
This commit is contained in:
Breno Leitao
2026-06-29 16:37:03 +02:00
committed by Miquel Raynal
parent dc59e4fea9
commit 369a091884
+6
View File
@@ -2565,6 +2565,12 @@ static int cfi_intelext_suspend(struct mtd_info *mtd)
ret = -EAGAIN;
break;
case FL_PM_SUSPENDED:
case FL_SHUTDOWN:
/*
* Already suspended, or put into array mode by the
* reboot notifier ahead of an imminent power-off.
* Either way there is nothing to do.
*/
break;
}
mutex_unlock(&chip->mutex);