- switch( Type & 0xF00 )
- {
- case 0x000: req.ReqType |= (0 << 5); break; // Standard
- case 0x100: req.ReqType |= (1 << 5); break; // Class
- case 0x200: req.ReqType |= (2 << 5); break; // Vendor
- }
+ req.ReqType |= ((Type >> 8) & 0x3) << 5; // Bits 5/6
+ req.ReqType |= (Type >> 12) & 3; // Destination (Device, Interface, Endpoint, Other);