On 12/07/12 08:02, Jaehoon Chung wrote: > Hi, Adrian, > > On 06/14/2012 10:46 PM, Adrian Hunter wrote: > >> On 08/06/12 07:39, Jaehoon Chung wrote: >>> Enable eMMC background operations (BKOPS) feature. >>> >>> If URGENT_BKOPS is set after a response, note that BKOPS >>> are required. After all I/O requests are finished, run >>> BKOPS if required. Should read/write operations be requested >>> during BKOPS, first issue HPI to interrupt the ongoing BKOPS >>> and then service the request. >>> If BKOPS-STATUS is upper than LEVEL2, need to check until clear >>> the BKOPS-STATUS vaule. >>> >>> If you want to enable this feature, set MMC_CAP2_BKOPS. >>> And if you want to set the BKOPS_EN bit in ext_csd register, >>> use the MMC_CAP2_INIT_BKOPS. >>> >>> Future considerations >>> * Check BKOPS_LEVEL=1 and start BKOPS in a preventive manner. >>> * Interrupt ongoing BKOPS before powering off the card. >>> * How get BKOPS_STATUS value.(periodically send ext_csd command?) >>> >>> Signed-off-by: Jaehoon Chung <jh80.chung@xxxxxxxxxxx> >>> Signed-off-by: Kyungmin Park <kyungmin.park@xxxxxxxxxxx> >>> Signed-off-by: Konstantin Dorfman <kdorfman@xxxxxxxxxxxxxx> >>> Signed-off-by: Maya Erez <merez@xxxxxxxxxxxxxx> >>> --- >> >> I would not expect this to work nicely with runtime PM. I expect that BKOPS >> would need to be stopped beforehand. But that would limit the time >> available for BKOPS since runtime PM would always kick in and stop it. How >> is runtime PM to be handled? > > I think that add some function like the mmc_runtime_pm_suspend(). > int mmc_runtime_pm_suspend() > { > if running bkops { > waiting for limit time..=> (when upper than Level2) > otherwise don't wait > stop-bkops > } else > nothing.. > } > Almost runtime PM is controlled at host side. > So it's not very good that add the bkops control code at host side. > How about this? i want to get your opinion. Possibly, but ideally it should be controlled through the runtime PM API. For example, sdhci uses pm_runtime_get / put which must be paired. -- 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