This series looks fine to me. Thanks, Avri > > Currently auto-hibernate is activated if host supports > auto-hibern8 capability. However error-handling is not implemented, > which makes the feature somewhat risky. > > If either "Hibernate Enter" or "Hibernate Exit" fail during > auto-hibernate flow, the corresponding interrupt > "UIC_HIBERNATE_ENTER" or "UIC_HIBERNATE_EXIT" shall be raised > according to UFS specification. > > This patch adds auto-hibernate error-handling: > > - Monitor "Hibernate Enter" and "Hibernate Exit" interrupts after > auto-hibernate feature is activated. > > - If fail happens, trigger error-handling just like "manual-hibernate" > fail and apply the same recovery flow: schedule UFS error handler in > ufshcd_check_errors(), and then do host reset and restore > in UFS error handler. > > v5: > - Also re-factor checking of Auto-Hibernation support in other places, e.g., in > ufshcd_auto_hibern8_enable() and in ufs-sysfs (Avri Altman) > - Change order of patch "scsi: ufs: Introduce > ufshcd_is_auto_hibern8_supported()" to #1 as a preparation patch of whole > series > > v4: > - Replace original patch "[3/3] scsi: ufs: Use re-factored Auto-Hibernate > function" by a new preparation patch "[2/3] scsi: ufs: Introduce > ufshcd_is_auto_hibern8_supported()" for re-factoring > ufshcd_is_auto_hibern8_supported (Avri Altman) > - Refine UIC mask definitions (Avri Altman) > > v3: > - Fix typo in patch "scsi: ufs: Do not overwrite Auto-Hibernate timer" (Avri > Altman) > - Rebase to Linux 5.2-rc1 > > v2: > - Fix sentences in commit message (Marc Gonzalez) > - Make "Auto-Hibernate" error detection more precise (Bean Huo) > > Stanley Chu (3): > scsi: ufs: Introduce ufshcd_is_auto_hibern8_supported() > scsi: ufs: Do not overwrite Auto-Hibernate timer > scsi: ufs: Add error-handling of Auto-Hibernate > > drivers/scsi/ufs/ufs-sysfs.c | 6 +++--- > drivers/scsi/ufs/ufshcd.c | 35 +++++++++++++++++++++++++++++++++-- > drivers/scsi/ufs/ufshcd.h | 5 +++++ > drivers/scsi/ufs/ufshci.h | 6 ++++-- > 4 files changed, 45 insertions(+), 7 deletions(-) > > -- > 2.18.0