Hi, This is the version 2 patch to enable background operations and HPI feature for eMMC4.41 card. Both of these two features are optional. Background operations can be started when user request queue is idle. So each time user start to handle a new request, driver should check whether the card is doing BKOPS. If so, should wait until BKOPS is done or use a HPI command to interrupt it if eMMC card support HPI. The serial patches were designed as this work flow. This version patch only use HPI to interrupt background operation, didnot implement to interrupt foreground operations. patch1: enable background operations feature for supported eMMC card. patch2: start to do background operations when user request queue is idle. Check whether card is doing BKOPS when start a new user request. patch3: enable HPI for supported eMMC card. patch4: use HPI command to interrupt BKOPS. change-log: patch2: remove the added workqueue in the version 1 patch. This workqueue is used to put card in runtime suspend state. Since current MMC driver has not a runtime power management in card block layer, just remove this workqueue. Define erro response to be macro R1_ERROR_RESPONSE patch3: fixed community comment. Thanks for Kyungmin Park. Thanks Chuanxiao -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html