Closed fjmbaeza closed 2 years ago
The OPAL 2.0 function (x203) section means that they are recognized as OPAL. The warning xxx unrecognized segments doesn't mean that they are not OPAL 2, it means that the discovery0 response contains segments that are not decoded by sedutil. They are usually vendor specific segments that you have to get documentation from the drive manufacturer to decode and do not affect the normal operation of sedutil. What USB adapter are you using?
The adapter I am using is FIDECO M.2 NVME EnclosureUSB 3.1 Gen 2 (10Gbps)
What could I add to read that information in a generic way for all disks?
As a normal person you won't get the info from a disk manufacturer so there is no useful information you can convey. If you wanted to do something you could print them out with a hex dump of the data like: Unknown function (0xaaa) abcdef01 23456789 .... ....
I don't know that it will tell you or anyone else valuable information.
You are right. In fact it is not relevant information as it depends on every manufacturer.
Thanks for your help.
I have tried the command query in 4 different disks and the output of query of them is the following:
The 3 that don´t recognize OPAL 2.0:
\.\PhysicalDrive1 USB Samsung SSD 970 PRO 1TB ... ... ... OPAL 2.0 function (0x0203) Base comID = 0x1004, Initial PIN = 0x00, Reverted PIN = 0x00, comIDs = 1 Locking Admins = 4, Locking Users = 9, Range Crossing = N 2 Unknown function codes IGNORED
\.\PhysicalDrive1 USB FLEXXON PCIe M.2 ... ... ... OPAL 2.0 function (0x0203) Base comID = 0x0888, Initial PIN = 0x00, Reverted PIN = 0x00, comIDs = 1 Locking Admins = 4, Locking Users = 9, Range Crossing = N 1 Unknown function codes IGNORED
\.\PhysicalDrive1 USB ATP I-Temp. NVMe M.2 2280 SED SSD ... ... ... OPAL 2.0 function (0x0203) Base comID = 0x0888, Initial PIN = 0x00, Reverted PIN = 0x00, comIDs = 1 Locking Admins = 4, Locking Users = 9, Range Crossing = N 1 Unknown function codes IGNORED
The one which is recognized as OPAL 2.0
\.\PhysicalDrive1 USB FOREMAY-OC177-1TB ... ... ... OPAL 2.0 function (0x0203) Base comID = 0x07fe, Initial PIN = 0x00, Reverted PIN = 0x00, comIDs = 1 Locking Admins = 4, Locking Users = 9, Range Crossing = N
having a look to the code and debugging a bit on DtaDev.cpp I have noticed that the disk that recognizes OPAL 2.0 has a hdr->length of 0xA0(160), but with the disks that don´t recognizes OPAL 2.0 this value is greater than 0xA0. It is 0xB0 in 2 disks and 0xB4 in the Samung one.
All disks work correctly using OPAL commands, but the only point is this warning on query. Is this a known error or is there anything that may fix this warning?
Thanks in advance