Talk:USB/UAS

From linux-sunxi.org
Jump to navigation Jump to search

Kc, have you moved the JMicron JMS567 into the "Blacklisted / UAS disabled" section (see history) because of this recent commit: https://github.com/torvalds/linux/commit/9aa37788e7ebb3f489fb4b71ce07adadd444264a?

Though the commit mentions "JMS567" in the subject, it adds the US_FL_IGNORE_UAS flag to the device with USB ID 0x357d:0x7788. File`unusual_devs.h` describes this device as JMicron "USB to ATA/ATAPI Bridge", unusual_uas.h as "JMS566". I am confused whether it is really the JMS567 being UAS-blacklisted by this commit...

Bensoibj (talk) 13:38, 19 November 2020 (CET)

darn, you are right. i'll revert the change. --Kc (talk) 23:16, 19 November 2020 (CET)

I just checked the latest code (unusual_uas.h) and JMS567 is mentioned there. It was added with this commit: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/drivers/usb/storage/unusual_uas.h?id=62354454625741f0569c2cbe45b2d192f8fd258e
I think it is correct to put JMicron JMS567 into the "Blacklisted / UAS disabled" section. Thanks for the Wiki and your work!
Jkirk (talk) 10:56, 25 November 2020 (CET)
Hmm, this commit has added a device which is only described as JMS567, but its ID is 0x0578, so a JMS578. Again confusing, there seems to be merely a loose (sloppy) connection between devices and IDs in the community.? Additionally, the commit does not add the US_FL_IGNORE_UAS flag, but the US_FL_BROKEN_FUA one. Does this flag also disable UAS? --Bensoibj (talk) 13:14, 29 November 2020 (CET)
Good point! I did a bit of research and found this for the USB ID 152d:0578: https://usb-ids.gowdy.us/read/UD/152d/0578. So yes, it seems to to be a JMS578 and the commit message and code comment here seems wrong. We should maybe file a bug against the kernel code to reduce future confusion (or at least clarify the situation)?
But that said, USB ID 0x357d:0x7788 seems to be a JMS567, see: https://usb-ids.gowdy.us/read/UD/357d/7788. So again, putting JMS567 into the "Blacklisted / UAS disabled" section is correct then, not? Very confusing.
--Jkirk (talk) 15:37, 29 November 2020 (CET)
What about 0x152d:0x0567? A comment in your linked database entry mentions (among others) this ID. It makes sense, since 0x152d seems to be the vendor ID of JMicron and the device ID matches the product number of JMS567. It also appears in unusual_uas.h and unusual_devs.h (without the US_FL_IGNORE_UAS flag set there). I have no clue how this USB ID system is built or maintained; it appears quite chaotic to me. Filing a bug concerning this matter is probably a never-ending story...
Maybe the solution is the following: 0x357d:0x7788 is the ID of the "QuickPort XT USB3.0" from Sharkoon, which builds upon the JMS567. Instead of the JMicron ID, this product returns an own ID. And it does not use the original, but a modified, probably buggy firmware. So blacklisting this product might be correct, but saying "all JMS567 chips are blacklisted" is maybe not.
Bensoibj (talk) 18:53, 29 November 2020 (CET)