ANDROID: scsi: ufs: add UFSHCD_ANDROID_QUIRK_NO_IS_READ_ON_H8
Add UFSHCD_ANDROID_QUIRK_NO_IS_READ_ON_H8 for host controllers which break when the Interrupt Status register is re-read after entering hibern8. In such cases after hibern8 entry is reported, no further register access will occur in the interrupt handler. Bug: 350576949 Change-Id: I8e810c96203a97f030216aae39253a2e102c7ebf Signed-off-by: VAMSHI GAJJELA <vamshigajjela@google.com>
This commit is contained in:
committed by
Konstantin Vyshetsky
parent
279274c126
commit
cb35713803
@@ -7006,6 +7006,11 @@ static irqreturn_t ufshcd_intr(int irq, void *__hba)
|
||||
if (enabled_intr_status)
|
||||
retval |= ufshcd_sl_intr(hba, enabled_intr_status);
|
||||
|
||||
if (hba->android_quirks &
|
||||
UFSHCD_ANDROID_QUIRK_NO_IS_READ_ON_H8 &&
|
||||
intr_status & UIC_HIBERNATE_ENTER)
|
||||
break;
|
||||
|
||||
intr_status = ufshcd_readl(hba, REG_INTERRUPT_STATUS);
|
||||
}
|
||||
|
||||
|
@@ -704,6 +704,9 @@ enum ufshcd_android_quirks {
|
||||
|
||||
/* Set IID to one. */
|
||||
UFSHCD_ANDROID_QUIRK_SET_IID_TO_ONE = 1 << 30,
|
||||
|
||||
/* Do not read IS after H8 enter */
|
||||
UFSHCD_ANDROID_QUIRK_NO_IS_READ_ON_H8 = 1 << 31,
|
||||
};
|
||||
|
||||
enum ufshcd_caps {
|
||||
|
Reference in New Issue
Block a user