mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-11-19 14:08:11 +00:00
trezorhal: reply with winusb guid just for interface 0
This commit is contained in:
parent
ca0918dbce
commit
9fcb59c3ca
@ -92,8 +92,8 @@ void usb_init(const usb_dev_info_t *dev_info) {
|
|||||||
// Configuration descriptor
|
// Configuration descriptor
|
||||||
usb_config_desc->bLength = sizeof(usb_config_descriptor_t);
|
usb_config_desc->bLength = sizeof(usb_config_descriptor_t);
|
||||||
usb_config_desc->bDescriptorType = USB_DESC_TYPE_CONFIGURATION;
|
usb_config_desc->bDescriptorType = USB_DESC_TYPE_CONFIGURATION;
|
||||||
usb_config_desc->wTotalLength = sizeof(usb_config_descriptor_t);
|
usb_config_desc->wTotalLength = sizeof(usb_config_descriptor_t); // will be updated later via usb_desc_add_iface()
|
||||||
usb_config_desc->bNumInterfaces = 0;
|
usb_config_desc->bNumInterfaces = 0; // will be updated later via usb_desc_add_iface()
|
||||||
usb_config_desc->bConfigurationValue = 0x01;
|
usb_config_desc->bConfigurationValue = 0x01;
|
||||||
usb_config_desc->iConfiguration = USBD_IDX_CONFIG_STR;
|
usb_config_desc->iConfiguration = USBD_IDX_CONFIG_STR;
|
||||||
usb_config_desc->bmAttributes = 0x80; // 0x80 = bus powered; 0xC0 = self powered
|
usb_config_desc->bmAttributes = 0x80; // 0x80 = bus powered; 0xC0 = self powered
|
||||||
@ -342,7 +342,8 @@ static uint8_t usb_class_setup(USBD_HandleTypeDef *dev, USBD_SetupReqTypedef *re
|
|||||||
#if USE_WINUSB
|
#if USE_WINUSB
|
||||||
if ((req->bmRequest & USB_REQ_RECIPIENT_MASK) == USB_REQ_RECIPIENT_INTERFACE) {
|
if ((req->bmRequest & USB_REQ_RECIPIENT_MASK) == USB_REQ_RECIPIENT_INTERFACE) {
|
||||||
if (req->bRequest == USB_WINUSB_VENDOR_CODE) {
|
if (req->bRequest == USB_WINUSB_VENDOR_CODE) {
|
||||||
if (req->wIndex == USB_WINUSB_REQ_GET_EXTENDED_PROPERTIES_OS_FEATURE_DESCRIPTOR) {
|
if (req->wIndex == USB_WINUSB_REQ_GET_EXTENDED_PROPERTIES_OS_FEATURE_DESCRIPTOR &&
|
||||||
|
(req->wValue & 0xFF) == 0) { // reply only if interface is 0
|
||||||
static const uint8_t winusb_guid[] = {
|
static const uint8_t winusb_guid[] = {
|
||||||
// header
|
// header
|
||||||
0x92, 0x00, 0x00, 0x00, // dwLength
|
0x92, 0x00, 0x00, 0x00, // dwLength
|
||||||
|
Loading…
Reference in New Issue
Block a user