I checked the usb/core/quirks.c and other various source code under
driver/usb/storage, but only one file sticks out as targeting the
vendor, and it doesn't have code related to this device.


https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/usb/storage/uas-detect.h?h=v4.15-rc7

/*
 * ASMedia has a number of usb3 to sata bridge chips, at the time of
 * this writing the following versions exist:
 * ASM1051 - no uas support version
 * ASM1051 - with broken (*) uas support
 * ASM1053 - with working uas support, but problems with large xfers
 * ASM1153 - with working uas support
 *
 * Devices with these chips re-use a number of device-ids over the
 * entire line, so the device-id is useless to determine if we're
 * dealing with an ASM1051 (which we want to avoid).
 *
 * The ASM1153 can be identified by config.MaxPower == 0,
 * where as the ASM105x models have config.MaxPower == 36.
 *
 * Differentiating between the ASM1053 and ASM1051 is trickier, when
 * connected over USB-3 we can look at the number of streams supported,
 * ASM1051 supports 32 streams, where as early ASM1053 versions support
 * 16 streams, newer ASM1053-s also support 32 streams, but have a
 * different prod-id.
 *
 * (*) ASM1051 chips do work with UAS with some disks (with the
 *     US_FL_NO_REPORT_OPCODES quirk), but are broken with other disks
 */
if (le16_to_cpu(udev->descriptor.idVendor) == 0x174c &&
                (le16_to_cpu(udev->descriptor.idProduct) == 0x5106 ||
                 le16_to_cpu(udev->descriptor.idProduct) == 0x55aa)) {
        if (udev->actconfig->desc.bMaxPower == 0) {
                /* ASM1153, do nothing */
        } else if (udev->speed < USB_SPEED_SUPER) {
                /* No streams info, assume ASM1051 */
                flags |= US_FL_IGNORE_UAS;
        } else if (usb_ss_max_streams(&eps[1]->ss_ep_comp) == 32) {
                /* Possibly an ASM1051, disable uas */
                flags |= US_FL_IGNORE_UAS;
        } else {
                /* ASM1053, these have issues with large transfers */
                flags |= US_FL_MAX_SECTORS_240;
        }
}

It seems to be a case of simply adding this device into the routine.

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1742318

Title:
  USB-Storage Quirk for 174c:1356

Status in linux package in Ubuntu:
  Incomplete

Bug description:
  A usb-storage quirk is needed for the Mediasonic ProRaid 2 Bay 2.5'
  SATA HDD / SSD Enclosure - USB 3.1 Gen-II Type-C (HUR6-SU31) for
  reliable use in Ubuntu/Kubuntu 14-17.10. Using quirk 'u' appears to
  have fixed disconnect issues during install and use.

  Linux Version: Ubuntu 4.13.0-16.19-generic 4.13.4

  Device ID:174c:1356 ASMedia Technology Inc.

  usb 9-1: new SuperSpeed USB device number 2 using xhci_hcd
  usb 9-1: New USB device found, idVendor=174c, idProduct=1356
  usb 9-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
  usb 9-1: Product: ASM1352R-Fast
  usb 9-1: Manufacturer: ASMT
  usb 9-1: SerialNumber: 0000000000000001
  usb 9-1: UAS is blacklisted for this device, using usb-storage instead

  Note: With/without UAS the issue persisted. I disabled UAS to prevent
  devices sleeping to eliminate that as a possibility.

  Symptoms: Before using the quirk, the enclosure would completely stop
  responding during an install attempt, and the usb host would
  eventually be disabled. The device's LEDs would continue to blink as
  if being accessed.

  Fix: I specified the quirk by appending "usb-
  storage.quirks=174c:1356:u" to the linux line in Grub. Hopefully
  others can verify this (if I'm not insane) and include a patch for
  this upstream in the Kernel.

  Note: For those who install to a device such as this, you may need to
  modify your installation before booting it, by creating a file
  "/etc/modprobe.d/asm1352r-usb-quirk.conf" with contents "options usb-
  storage quirks=0x174c:0x1356:u". I have seen others (through Google)
  issuing the same "u" quirk for several ASMedia devices...Perhaps their
  chipsets need this?

  This is my first bug report. If any more information is needed, please
  inform me. I'd like to thank a TJ- in Ubuntu's IRC for helping nail
  this down.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1742318/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to