From 6d2313412030c2d90241bd6960700304e86941d3 Mon Sep 17 00:00:00 2001 From: Bjørn Mork Date: Sat, 13 Oct 2012 19:56:15 +0200 Subject: usb-mbim: fix USB_CDC_GET_NTB_PARAMETERS --- hw/usb/dev-mbim.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/hw/usb/dev-mbim.c b/hw/usb/dev-mbim.c index a2bf4b84f..901e551aa 100644 --- a/hw/usb/dev-mbim.c +++ b/hw/usb/dev-mbim.c @@ -317,6 +317,7 @@ static const USBDescIface desc_iface_mbim_nocompat[] = { .bInterfaceClass = 0x02, .bInterfaceSubClass = 0x0e, /* MBIM */ .bInterfaceProtocol = 0x00, + .ndesc = 3, .descs = (USBDescOther[]) { { .data = cdc_header, @@ -451,14 +452,14 @@ static const USBDesc desc_mbim_nocompat = { }; static const uint8_t ncm_ntb_parameters[] = { - 0x1a, 0x00, /* __le16 wLength; */ + 0x1c, 0x00, /* __le16 wLength; */ 0x00, 0x00, /* __le16 bmNtbFormatsSupported; */ 0x00, 0x00, 0x02, 0x00, /* __le32 dwNtbInMaxSize; */ 0x20, 0x00, /* __le16 wNdpInDivisor; */ 0x00, 0x00, /* __le16 wNdpInPayloadRemainder; */ 0x20, 0x00, /* __le16 wNdpInAlignment; */ 0x00, 0x00, /* __le16 wPadding1; */ - 0x00, 0x80, /* __le32 dwNtbOutMaxSize; */ + 0x00, 0x80, 0x00, 0x00, /* __le32 dwNtbOutMaxSize; */ 0x04, 0x00, /* __le16 wNdpOutDivisor; */ 0x00, 0x00, /* __le16 wNdpOutPayloadRemainder; */ 0x20, 0x00, /* __le16 wNdpOutAlignment; */ @@ -499,6 +500,7 @@ static int usb_mbim_handle_control(USBDevice *dev, USBPacket *p, DPRINTF("USB_CDC_SET_MAX_DATAGRAM_SIZE is not implemented\n"); goto fail; case InterfaceInClass | USB_CDC_GET_NTB_PARAMETERS: + DPRINTF("USB_CDC_GET_NTB_PARAMETERS, length=%d, sizeof(ncm_ntb_parameters)=%zu\n", length, sizeof(ncm_ntb_parameters)); if (length == sizeof(ncm_ntb_parameters)) memcpy(data, ncm_ntb_parameters, sizeof(ncm_ntb_parameters)); else -- cgit v1.2.3