Relation between MMC_CAP_WAIT_WHILE_BUSY and card_busy()
From: Saravana Kannan
Date: Tue Jan 25 2022 - 22:46:24 EST
I'm trying to understand the MMC suspend path a bit.
I looked at the commit message of 6fa79651cc808f68db6f6f297be5a950ccd5dffb.
IIUC, if MMC_CAP_WAIT_WHILE_BUSY is set then the mmc framework is
going to depend on the card_busy() op to ensure correctness instead of
using the S_A_TIMEOUT value from the card.
But I see a lot of mmc host drivers that implement card_busy() but
don't set the MMC_CAP_WAIT_WHILE_BUSY flag. That doesn't seem right to
me if my understanding is correct.
If it's supposed to be "we'll use card_busy() if
MMC_CAP_WAIT_WHILE_BUSY isn't set", then why do we have some mmc host
drivers that have both?
What am I misunderstanding?
-Saravana