scsi: ufs: fix async UIC command timeout due to UFS card removal
If UFS card is removed before async UIC command completes, it will cause
the async UIC command timed out after UIC_CMD_TIEMOUT expires. The timeout
error is expected due to UFS card is removed. However, because
UIC_CMD_TIMEOUT is longer than the UFS card extcon gpio debounce time,
before UIC_CMD_TIMEOUT expires, if the UFS card is inserted back and set
online, when UIC_CMD_TIMEOUT expires, the driver would incorrectly treat
the UIC command timeout error as a valid one, then unwanted dump and error
handler would be triggered. In order to avoid this situation, the card
removal handler should complete the async UIC command if there is one.
Change-Id: I8edce2476e97b070947741c870579f272bbbc4f9
Signed-off-by:
Can Guo <cang@codeaurora.org>
Loading
Please register or sign in to comment