UFS的data protection

UFS的写保护有两种,上电写保护(power on write protection)和永久写保护( permanent write protection).这两种都是从LU层面直接配置的data protection mechanism.

在Unit descriptor中有一个可以配置的bLUWriteProtect。

这里01h, 02h都比较好理解,00h括号里的secure write是什么东西下次再写。

注意,setting bLUWriteProtect = 01h /02h之后,并不是立马就生效了。还需要set some flag.

                                                                                            

上图是关于上电写保护的。在set fPowerOnWPEn之前,LU还是可以写的。而在重新上电之后,fPowerOnWPEn会被自动clear(注意,bLUWriteProtect不需要重新配置).

下面这张图是关于永久写保护的,只有在set fPermanentWPEn之后,才会进入永久写保护状态。

                                                              

另外有一点需要注意的是,在set fPermanentWPEn/fPowerOnWPEn时,最好等到所有的

cmd queue都已被清空之后。并且在收到query response之前,不要往queue里放入新的write command.这个目的很明显,在写保护设置的同时执行写命令,那么很有可能会出现一些host意料之外的情况。

猜你喜欢

转载自blog.csdn.net/comeonbestxiaohe/article/details/88637564
今日推荐