Well, some results so far...
I got USB-IF USB20CV compliance tool and ran tests for the MSC device.
The main trouble is in the error recovery:
► Show Spoiler
Starting Test: USB Mass Storage Error Recovery Test (Configuration Index 0)
Configuring device, set configuration = 0x1
NOTE: It is expected the device has reset the data toggles on all Bulk endpoints after the above SetConfiguration call
Setting device interface, interface number = 0x0 and alternate setting = 0x0
NOTE: It is expected the device has reset the data toggles on all Bulk endpoints after the above SetInterface call
Issuing Get Max LUN request
Max LUN value = 0
Issue CBW with invalid signature
Issuing invalid CBW
CBW successful
Issuing CSW 2 times, CSW should stall in every case
Issuing CSW 1
Issuing CSW 2
Retrieving status on CSW endpoint
CSW endpoint status = 0x1
CSW endpoint stalled
Clearing stalled CSW endpoint
Issuing CSW 2 times, CSW should stall in every case
Issuing CSW 1
Invalid response, CSW should STALL
*************************
(5.2.1) Devices receiving a CBW with an invalid signature should stall
further traffic on the Bulk In pipe, and either stall further traffic
or accept and discard further traffic on the Bulk Out pipe, until
reset recovery. If the device does not react in this manner, it
should at least respond correctly to a Reset Recovery.
*************************
Issuing BOT MSC Reset, reset should always succeed
Retrieving status on CBW endpoint
CBW endpoint status = 0x0
Retrieving status on CSW endpoint
CSW endpoint status = 0x0
Issuing required command (Test Unit Ready) to verify device has recovered
Issuing CBW (attempt #1):
|----- CBW LUN = 0x0
|----- CBW Flags = 0x0
|----- CBW Data Transfer Length = 0x0
|----- CBW CDB Length = 0x6
|----- CBW CDB-00 = 0x0
|----- CBW CDB-01 = 0x0
|----- CBW CDB-02 = 0x0
|----- CBW CDB-03 = 0x0
|----- CBW CDB-04 = 0x0
|----- CBW CDB-05 = 0x0
Issuing CSW : try 1
CSW Bulk Request timed out!
Failed CSW phase : should have been success or stall
(5.3.4) The CSW status value must be 0x00, 0x01, or 0x02.
BOTCommonMSCRequest failed: error=80004000
Re-enumerating device
Detected hard error, issuing BOT MSC Reset
Failed to execute required command (Test Unit Ready) after BOT MSC Reset
(5.7.2) All devices must either support or properly fail the commands marked
as optional in 4.2 based on PDT. Devices that support or properly fail all the commands
marked as optional for Bootable devices will be reported as Bootable.
ValidateCBWErrorTest failed: Re-enumerating device
Unconfiguring the device
Stopping Test [ USB Mass Storage Error Recovery Test (Configuration Index 0):
Number of: Fails (2); Aborts (0); Warnings (1) ]
**
Device is NOT considered compliant with the Bootability specification.
**