Re: USB2 Link USB-SCSI converter and LUNs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tuesday, October 19, 2021 at 12:18 PM "Greg KH" <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, Oct 19, 2021 at 12:15:09PM +0200, mark_k@xxxxxxxxx wrote:
> > I have a Core Micro Systems USB2 Link USB-SCSI converter (07B4:0380).
> >
> > Adding an entry to unusual_devs.h should get it to work, just needing
> > USB_PR_BULK. That should at least allow the connected device with SCSI ID 0
> > to be accessed.
>
> Why do you need any quirk at all for this?

My mistake, sorry. Its interface descriptor has
  bInterfaceClass 0xFF
  bInterfaceSubClass 0x06
  bInterfaceProtocol 0x50
so an entry with USB_SC_DEVICE, USB_PR_DEVICE would work.


> > I'm just wondering, how does the usb-storage driver handle these cases:
> >
> >  - (What it thinks are) LUNs are not contiguous. Suppose the user has two
> >    SCSI devices in the chain, one with ID 0 the other with ID 3. Would it
> >    scan LUNs (which map to separate targets) 1, 2, 4, 5 and 6? Or would it
> >    give up on getting no response from LUN 1?
> >
> >  - "LUN" 0 is not present. E.g. where the connected SCSI devices have IDs 1
> >    and 3.
> >
> >  - When different "LUNs" are completely different devices (e.g. one a
> >    CD-ROM, another a hard disk, another a tape drive).
> >
>
> That should all be up to the scsi layer in the kernel.  If this device
> is not following the standard, how is it supposed to work at all?
>
> Does it require custom drivers for other operating systems?

My guess is that (with quirk entry) it will work when there is a SCSI
device with ID 0. If all other devices in the chain have contiguous IDs
they could be accessible too.

I can tell Windows to use its built-in mass storage driver and that works
to access the device with ID 0 only. I haven't yet checked with more than
one SCSI device in the chain.

It could/should be possible to properly support multiple targets and LUNs
by using a similar method to the SCM USB-SCSI converters. (Those, after a
special intitialisation request, take the target ID from the *upper* 4 bits
of CBW byte 13.)

But I figure an initial patch to add a quirk entry will be much easier. And
in practice would be enough for most use cases.





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux