Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Nov 2015 09:31:26 +0100
From:      Hans Petter Selasky <hps@selasky.org>
To:        Alfred Perlstein <alfred@freebsd.org>, usb@freebsd.org
Subject:   Re: usb modem "Can't setup transfer"
Message-ID:  <56444E5E.1030706@selasky.org>
In-Reply-To: <56439C4B.6060407@freebsd.org>
References:  <5642B7E4.505@freebsd.org> <5642FE24.4050408@selasky.org> <56439C4B.6060407@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 11/11/15 20:51, Alfred Perlstein wrote:
>

Hi,

The device is very special in that it uses an interrupt type of endpoint 
for receiving the data.

>
>       Endpoint 1
>          bLength = 0x0007
>          bDescriptorType = 0x0005
>          bEndpointAddress = 0x0084  <IN>
>          bmAttributes = 0x0003  <INTERRUPT>
>          wMaxPacketSize = 0x003f
>          bInterval = 0x0002
>          bRefresh = 0x0000
>          bSynchAddress = 0x0000
>

In umodem.c you might want to change the USB matching filter to accept 
interrupt endpoints:

>         [UMODEM_BULK_RD] = {
>                 .type = UE_BULK, // change this to UE_BULK_INTR
>                 .endpoint = UE_ADDR_ANY,
>                 .direction = UE_DIR_RX,

This change will break other modem drivers, but at least it will give 
some clues if it works or not.

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56444E5E.1030706>