硬盘信息获取问题求助

第一个问题:
Model有差异的原因是sata盘的Model信息来源有两个
第一个是Identify命令,有20个字节
第二个是inquirydata里的,只有16个字节
盘的状态为SPUN UP时会走第一个命令,否则从第二个命令中获取,导致了差异

第二个问题:
hdd盘转速为0,按照协议是如下规定,可能是无响应导致的,带内也可以查下转速
/*
Medium Rotation Rate field(byte4 和 byte5)
Code Definition(未定义)
0000h Medium rotation rate is not reported(无响应)
0001h Non-rotating medium (e.g., solid state)(无转速的介质)
0002h to 0400h Reserved(预留)
0401h to FFFEh Nominal medium rotation rate in revolutions per minute(e.g., 7 200 rpm = 1C20h)(正常转速范围)
FFFFh Reserved(预留)
*/

第三个问题目前已解决,为闭源组件的修改