On Thu, Oct 26, 2023 at 06:32:02PM +0300, LihaSika wrote: > Hi, > > in kernel 6.1 (maybe 5.x - 6.x) there's an ATACB setting for "Super Top USB > 2.0 SATA Bridge" -devices, where the minimum bcdDevice version to match has > been set to 1.60. It's in the file drivers/usb/storage/unusual_cypress.h: > > """ > UNUSUAL_DEV( 0x14cd, 0x6116, 0x0160, 0x0160, > "Super Top", > "USB 2.0 SATA BRIDGE", > USB_SC_CYP_ATACB, USB_PR_DEVICE, NULL, 0), > """ > > My old USB HDD with a "Super Top" bridge has bcdDevice version 1.50, thus > the setting won't match and it will not mount. > > I'm not sure when this changed (after kernel 4.x?), but it used to work > before. Reading some earlier bug reports, it seems that the max version used > to be 0x9999, which then caused corruption in "Super Top" devices with > version >=2.20. So that's a reason for lowering the maximum value, but I > wonder why the minimum value has also been set to 0x0160. > > > I created a patch, changing 0x0160 to 0x0150 (though I should've left the > max version as it was...): > > """ > UNUSUAL_DEV( 0x14cd, 0x6116, 0x0150, 0x0150, > """ > > Built, installed and rebooted; now the USB HDD can be mounted and works > perfectly again. I did some write & read tests, checked with diff, cmp and > md5sum - no corruption, everything OK 👍 Please submit a proper patch to the linux-usb@xxxxxxxxxxxxxxx mailing list and we will be glad to take it from there. thanks, greg k-h