Huawei NCM devices and NDISDUP
Aleksander Morgado
aleksander at aleksander.es
Mon Aug 4 01:30:27 PDT 2014
On Tue, Jul 29, 2014 at 7:48 PM, Dan Williams <dcbw at redhat.com> wrote:
> So I've come across a couple Huawei devices recently that use the NCM or
> ECM drivers, but aren't handled by the MM NDISDUP code. They are
> typically the "jungo" type. One of them is the E303, the other is the
> HP HS3110/HS3114. The drivers have:
>
> ew_jucdcecm.inf
> %NCMDeviceDesc% = ew_jucdcncm.ndi, USBCDCNCM\VID_12D1&Subclass_02&Prot_16
> %VDFNCMDesc% = ew_jucdcncm.ndi, USBCDCNCM\VID_12D1&Subclass_02&Prot_46
>
> %ECMDeviceDesc% = ew_jucdcecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_07
> %ECMDeviceDesc% = ew_jucdcecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_11
> %VDFECMDesc% = ew_jucdcecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_37
>
> (also included are some VID/PID of Icera and Balong devices locked via
> interface numbers. These same IDs are included in ew_juwwanecm.inf too)
>
> ew_juwwanecm.inf
> %NCMDeviceDesc% = ew_juwwanncm.ndi, USBCDCNCM\VID_12D1&Subclass_02&Prot_07
> %NCMDeviceDesc% = ew_juwwanncm.ndi, USBCDCNCM\VID_12D1&Subclass_02&Prot_16
> %VDFNCMDesc% = ew_juwwanncm.ndi, USBCDCNCM\VID_12D1&Subclass_02&Prot_46
>
> %ECMDeviceDesc% = ew_juwwanecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_07
> %ECMDeviceDesc% = ew_juwwanecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_11
> %VDFECMDesc% = ew_juwwanecm.ndi, USBCDCECM\VID_12D1&Subclass_02&Prot_37
>
> ECMDeviceDesc = "HUAWEI Mobile Connect - Network Adapter"
> VDFECMDesc = "Vodafone Mobile Broadband Network Adapter (Huawei)"
> TDECMDeviceDesc = "HUAWEI Mobile CMCC Connect - Network Adapter"
> NCMDeviceDesc = "HUAWEI Mobile Connect - Network Adapter"
> VDFNCMDesc = "Vodafone Mobile Broadband Network Adapter (Huawei)"
> TDNCMDeviceDesc = "HUAWEI Mobile CMCC Connect - Network Adapter"
>
> (also included are various Icera and Balong VID/PIDs locked via interface
> numbers using ew_juwwanecm.ndi, these same IDs are included in ew_jucdcecm.inf
> too)
>
> ewusbwwan.inf
> %qcwwan.DeviceDesc00% = qcwwan.ndi, USB\VID_12d1&Subclass_01&Prot_07
> %qcwwan.DeviceDesc01% = qcwwan.ndi, USB\VID_12d1&Subclass_01&Prot_11
> %qcwwan.VDF% = qcwwan.ndi, USB\VID_12d1&Subclass_01&Prot_37
>
> In the E303C case, we have a USB layout of:
>
> VID/PID 12d1:150f
> 0/0: 255/2/22 (interrupt IN)
> 0/1: 255/2/22 (interrupt IN, bulk IN/OUT) NCM?
> 1/0: 255/2/3 (bulk IN/OUT)
> 2/0: 255/2/2 (bulk IN/OUT) AT PORT
> 3/0: 255/2/1 (interrupt IN, bulk IN/OUT) MODEM
> 4: Mass Storage
> 5: Mass Storage
>
> In Windows interface 0 would get assigned to the NCM driver, but this
> gives us no indication of whether NDISDUP works on the interface or not.
> Currently, ModemManager requires a whitelist of devices that work with
> NDISDUP, or that the modem expose a network port *and* an AT-capable WDM
> port. Maybe that's not really true?
>
> There's also the question of ^NDISCONN... that seems to be supported on
> a number of modems, and uses the same format as NDISDUP. Anyone know if
> that's an older command or a newer command or just different? My E3276
> supports both NDISCONN and NDISDUP, apparently.
No idea here... Do you actually have some of these modems to play
with? Or just the Windows drivers?
--
Aleksander
https://aleksander.es
More information about the ModemManager-devel
mailing list