Opened 11 months ago

Last modified 6 months ago

#1767 new enhancement

Add support for Transcend ESD310 (Silicon Motion SM2320, 0x2174:0x2100)

Reported by: wiki798 Owned by:
Priority: minor Milestone: undecided
Component: drivedb Version: 7.4
Keywords: usb nand Cc:

Description

Just bought a new portable SSD / USB flash drive Transcend ESD310C TS512GESD310C. smartctl -x /dev/sdb didn't output SMART data, so I tried smartctl -x -d sat /dev/sdb. This in turn gave me some sensible Attributes, some Unknown_Attribute and Unknown_SSD_Attribute and a lot of [...] failed: scsi error unsupported scsi opcode errors. Additionally, the interface is reported as SATA, but this is not a SATA device nor does it have a SATA or NVMe bridge, it has a USB-native UFD controller SM2320.
I tried running self-tests (all of these once: short, long, offline, conveyance) with smartctl -t long -d sat /dev/sdb, but none worked, instead I got [...] failed: scsi error unsupported scsi opcode each time.
I run badblocks -wsvt random -b 512 -p 1 /dev/sdb and redone smartctl -x -d sat /dev/sdb, hopefully this helps decipher some of the Unknown_Attribute.

List of errors:

Warning! SMART Attribute Data Structure error: invalid SMART checksum.
Warning! SMART Attribute Thresholds Structure error: invalid SMART checksum.

Read SMART Log Directory failed: scsi error unsupported scsi opcode

ATA_READ_LOG_EXT (addr=0x00:0x00, page=0, n=1) failed: scsi error unsupported scsi opcode
Read GP Log Directory failed

Read SMART Error Log failed: scsi error unsupported scsi opcode

Read SMART Self-test Log failed: scsi error unsupported scsi opcode

ATA_READ_LOG_EXT (addr=0x11:0x00, page=0, n=1) failed: scsi error unsupported scsi opcode
Read SATA Phy Event Counters failed

Summary:

  1. Is this a faulty device, completely or only partially and therefore should be returned?
  2. What is the low(er) level cause of all the reported problems? So that I and anybody that finds this can understand what's happening here in detail.
  3. Add support for self-tests, self-test log and error log if possible. Deal with the SMART invalid checksums.
  4. Add device to smartctl.h and make smartctl -x /dev/sdb work just like smartctl -x -d sat /dev/sdb does.

Example CrystalDiskInfo output: https://images.anandtech.com/reviews/das/2021-/pssd/Transcend-ESD310C-Portable-SSD-1TB/CDI.png
Device info:
https://www.anandtech.com/show/18920/transcend-esd310c-dualinterface-ufd-review-silicon-motion-powers-portable-ssd-in-a-thumb-drive
https://transcend-info.com/product/portable-ssd/esd310

More info about the Silicon Motion SM2320 controller:
https://www.siliconmotion.com/products/Portable/detail
https://www.siliconmotion.com/download/3fu/a/SM2320_PB_EN.pdf
https://www.anandtech.com/show/16942/usb-32-gen-2x2-portable-ssds-go-native-the-silicon-motion-sm2320-ufd-controller-preview
Other devices using this controller: Crucial X9 Pro CT4000X9SSD9, Crucial X10 Pro CT1000X10PROSSD9, Kingston DataTraveler Max DTMAX/1TB, Kingston DataTraveler Max Type-A DTMAXA/1TB, Kingston XS2000 SXS20002000G, Kingston XS1000 SXS1000/2000G, ADATA Elite UE800 AELIUE800512GCSG

Attachments (3)

smartctl -x _dev_sdb.txt (322 bytes ) - added by wiki798 11 months ago.
smartctl -x /dev/sdb
smartctl -x -d sat _dev_sdb - brand new disk.txt (4.3 KB ) - added by wiki798 11 months ago.
smartctl -x -d sat /dev/sdb - on a brand new disk
smartctl -x -d sat _dev_sdb - post 1 badblocks pass.txt (4.3 KB ) - added by wiki798 11 months ago.
smartctl -x -d sat /dev/sdb - after 1 badblocks pass was done

Download all attachments as: .zip

Change History (5)

by wiki798, 11 months ago

Attachment: smartctl -x _dev_sdb.txt added

smartctl -x /dev/sdb

by wiki798, 11 months ago

smartctl -x -d sat /dev/sdb - on a brand new disk

by wiki798, 11 months ago

smartctl -x -d sat /dev/sdb - after 1 badblocks pass was done

comment:1 by Christian Franke, 11 months ago

Component: alldrivedb
Keywords: usb nand added
Milestone: undecided
Summary: Transcend ESD310: Invalid SMART Attribute Data and Thresholds checksums. scsi error unsupported scsi opcodes. Wrong interface. Not in database.Add support for Transcend ESD310 (Silicon Motion SM2320, 0x2174:0x2100)
Type: defectenhancement

The SM2320 is an USB->NAND controller without an internal detour via ATA or NVMe protocol. There is not need for such a device to support ATA- or NVMe-like diagnostic information. USB mass storage devices are accessed via SCSI protocol, so there may be SCSI-like diagnostic available but this is usually not the case for such devices (try smartctl -d scsi ...).

The output suggests that the firmware has SAT support to access ATA SMART Attributes but no further ATA SMART features (unsupported scsi opcode). The invalid SMART checksum is a harmless firmware bug.

All we could do is to add the attribute set (if known) and USB-Id to the drive database.

comment:2 by Christian Franke, 6 months ago

USB Id added in r5600, r5602.

Leaving ticket open as undecided because the attribute set is still unknown.

Note: See TracTickets for help on using tickets.