Hi,

In include/ddk/scsi.h:

typedef union _CDB {
...
  struct _GET_CONFIGURATION {
    UCHAR OperationCode;
    UCHAR RequestType:1;
    UCHAR Reserved1:7;
    UCHAR StartingFeature[2];
    UCHAR Reserved2[3];
    UCHAR AllocationLength[2];
    UCHAR Control;
  } GET_CONFIGURATION;
...
} CDB, *PCDB;

RequestType:1 only reserves one bit, which is wrong. The field should
reserve two bits, see any MMC spec (e.g.
http://www.13thmonkey.org/documentation/SCSI/mmc2r11a.pdf, page 141).

In Windows SDK it correctly reserves 2 bits, e.g.:
https://github.com/tpn/winsdk-10/blob/9b69fd26ac0c7d0b83d378dba01080e93349c2ed/Include/10.0.16299.0/shared/scsi.h#L1247

As a result it is currently impossible to set it to 10b to request only one
feature header.

-- 
Best regards,
  Alex

_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to