Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Sep 2007 00:44:27 +0800
From:      Eugene Grosbein <eugen@kuzbass.ru>
To:        usb@freebsd.org
Subject:   Re: usb/91546: [umodem] [patch] Nokia 6630 mobile phone does not work
Message-ID:  <20070926164427.GA6746@grosbein.pp.ru>
In-Reply-To: <20070925.231043.-345497328.imp@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi!

sys/dev/usb/if_cdce.c has the following comment:

/*
 * <quote>
 *  The Data Class interface of a networking device shall have a minimum
 *  of two interface settings. The first setting (the default interface
 *  setting) includes no endpoints and therefore no networking traffic is
 *  exchanged whenever the default interface setting is selected. One or
 *  more additional interface settings are used for normal operation, and
 *  therefore each includes a pair of endpoints (one IN, and one OUT) to
 *  exchange network traffic. Select an alternate interface setting to
 *  initialize the network aspects of the device and to enable the
 *  exchange of network traffic.
 * </quote>
 *
 * Some devices, most notably cable modems, include interface settings
 * that have no IN or OUT endpoint, therefore loop through the list of all
 * available interface settings looking for one with both IN and OUT
 * endpoints.
 */

I've added the loop that follows this comment to umodem.c and found
that Nokia E50 returns exactly one additional interface,
e.g. usbd_get_no_alts() returns 1. And this interface description has
id->bNumEndpoints equal to zero, so there is no IN/OUT endpoint. At all.

Here I'm stuck.

Eugene Grosbein



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