From: Maciej Żenczykowski maze@google.com
Since November 2017 commit 7fee72d5e8f1 ("uas: Always apply US_FL_NO_ATA_1X quirk to Seagate devices"), the US_FL_NO_ATA_1X is always set for Seagate devices, but it doesn't appear to be required - at least for this one (based on internet searches, probably for a fair number more...).
ID 0bc2:2320 Seagate RSS LLC USB 3.0 bridge [Portable Expansion Drive]
Confirmed via: smartctl -a /dev/sda working fine with modprobe usb_storage quirks=0bc2:2320: on 5.19.11-1rodete1-amd64
Fixes: 7fee72d5e8f1 ("uas: Always apply US_FL_NO_ATA_1X quirk to Seagate devices") Cc: stable stable@vger.kernel.org Cc: Hans de Goede hdegoede@redhat.com Cc: Greg Kroah-Hartman gregkh@linuxfoundation.org Signed-off-by: Maciej Żenczykowski zenczykowski@gmail.com --- drivers/usb/storage/uas-detect.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/storage/uas-detect.h b/drivers/usb/storage/uas-detect.h index 3f720faa6f97..74d65810f09a 100644 --- a/drivers/usb/storage/uas-detect.h +++ b/drivers/usb/storage/uas-detect.h @@ -112,8 +112,9 @@ static int uas_use_uas_driver(struct usb_interface *intf, } }
- /* All Seagate disk enclosures have broken ATA pass-through support */ - if (le16_to_cpu(udev->descriptor.idVendor) == 0x0bc2) + /* Most Seagate disk enclosures have broken ATA pass-through support */ + if (le16_to_cpu(udev->descriptor.idVendor) == 0x0bc2 && + le16_to_cpu(udev->descriptor.idProduct) != 0x2320) flags |= US_FL_NO_ATA_1X;
usb_stor_adjust_quirks(udev, &flags);