切换当前要操作的设备
scsi device 0表示将当前要操作的设备切换到Device 0: (0:0)
默认的设备是设备0,想切换到哪个设备直接使用scsi dev/device #dev_num即可
$ scsi device 0
Device 0: (0:0) Vendor: Synopsys Prod.: UFSDeviceDEVICE Rev: V3_1
Type: Hard Disk
Capacity: 4095.9 MB = 3.9 GB (1048575 x 4096)
... is now current device
5 将0xb0000000开始的4K内存数据都设置为aa
$ mw.b 0xb0000000 aa 0x1000
1
6 将0xb0000000内存地址,大小为4K的数据写入到ufs设备0地址处
scsi write 0 0xb0000000 0 1表示将0xb0000000开始的内存数据,写入到起始地址为0,block cnt为1的ufs设备处,ufs 普通lun的block size为4096,所以block cnt设置的大小为1。
block size的大小在ufs标准文档的11.3.8.2 Read Capacity (10) Parameter Data有介绍
$ scsi write 0 0xb0000000 0 1
scsi write: device 0 block # 0, count 1 ... 1 blocks written: OK
7 从ufs设备读取数据
和上面介绍的一样,该命令是从ufs的地址0处,读取一个block的数据到0xb1000000内存地址。每一个block的大小为4096。
$ scsi read 0xb1000000 0 1
scsi read: device 0 block # 0, count 1 ... 1 blocks read: OK
8 比对写入和读出的数据是否一致
比对0xb0000000和0xb1000000两个内存地址大小为0x1000的内存数据是否一致:
一致,则ufs的读写数据是一致的,读写功能是OK的。
不一致,则说明ufs的读写功能可能存在问题,或者和scsi命令的适配存在问题。
$ cmp 0xb0000000 0xb1000000 0x1000
Total of 4096 word(s) were the same